elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 02:04  


Tema destacado: Entra al canal IRC oficial de #elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General (Moderador: Littlehorse)
| | |-+  Pascal repeat ayuda
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Pascal repeat ayuda  (Leído 1,662 veces)
netca

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Pascal repeat ayuda
« en: 3 Abril 2011, 22:06 »

Crea un programa que pida números positivos al usuario, y vaya calculando la suma de todos ellos (terminará cuando se teclea un número negativo o cero), usando "repeat".


Código:
program ej;

var
   numero:integer;
   resultado:integer;

begin
     repeat
           Writeln('Inserte numeros');
           Readln(numero);

     until numero<=0;

end.             


Como hago para realizar la suma?

Saludos!


En línea
Leo Gutiérrez.
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 2.968


/^$/


Ver Perfil WWW
Re: Pascal repeat ayuda
« Respuesta #1 en: 4 Abril 2011, 04:50 »

A lo que quieres hacer se les llama acumuladores.

Solo tienes que declarar y asignar una variable suma y asignarle el valor de 0.

Cuando leas el numero lo acumulas así:

Código:
suma = suma + numero


En línea

Código
(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}
 

leorocko13@hotmail.com
https://github.com/leogtzr/
skapunky
Electronik Engineer &
CoAdmin
***
Desconectado Desconectado

Mensajes: 3.441



Ver Perfil WWW
Re: Pascal repeat ayuda
« Respuesta #2 en: 5 Abril 2011, 14:14 »

Código
 
   repeat
          Writeln('Inserte numeros');
          Readln(numero);
          resultado = resultado + numero;
    until numero<=0;
 
end.  

Imagino que has hecho lo que he hecho yo en el codigo anterior, el problema viene cuando "numero" es valor negativo, ya que la variable que acumula operará con ese numero negativo, es decir el resultado final se verá afectado acausa de que operara el numero negativo antes del UNTIL.

Notese que al ser 0 da igual, porque no altera el resultado final.

Ese problema lo puedes solventar añadiendo un IF o while, incluso puedes anidar otro REPEAT. Aquí el ejemplo:
Código
program ej;
 
var
  numero:integer;
  resultado:integer;
 
begin
resultado = 0;
numero = 0;
   repeat
          Writeln('Inserte numeros');
          Readln(numero);
                  if numero >0 then
                           begin
                               resultado = resultado + numero;
                           end
    until numero<=0;
end.

Problema resuelto.
« Última modificación: 5 Abril 2011, 14:16 por skapunky » En línea

netca

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Re: Pascal repeat ayuda
« Respuesta #3 en: 8 Abril 2011, 23:27 »

Uhmmm , cuando pongo para que imprima la suma , me imprime el mismo numero 2 veces sin hacer una suma , como seria?
En línea
Edu


Desconectado Desconectado

Mensajes: 1.082


Ex XXX-ZERO-XXX


Ver Perfil
Re: Pascal repeat ayuda
« Respuesta #4 en: 9 Abril 2011, 01:27 »

? pone q muestre la variable "resultado"
En línea
skapunky
Electronik Engineer &
CoAdmin
***
Desconectado Desconectado

Mensajes: 3.441



Ver Perfil WWW
Re: Pascal repeat ayuda
« Respuesta #5 en: 9 Abril 2011, 13:14 »

En que lugar has puesto la salida de datos? Eso lo debes poner al final, podrías poner tu codigo para que vieramos porque te aparece dos veces. Tu programa debería quedar con la salida de datos de la siguiente manera:
Código
program ej;
 
var
  numero:integer;
  resultado:integer;
 
begin
resultado = 0;
numero = 0;
   repeat
          Writeln('Inserte numeros');
          Readln(numero);
                  if numero >0 then
                           begin
                               resultado = resultado + numero;
                           end
    until numero<=0;
writeln ('El resultado es: ' resultado);
end.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
imagenes repeat tabla
Desarrollo Web
luiggy2 4 1,320 Último mensaje 3 Septiembre 2008, 14:49
por luiggy2
Duda Str Repeat y Bucle For
PHP
Dacan 4 762 Último mensaje 22 Febrero 2009, 21:31
por Dacan
ayuda con pascal por fa
Programación General
Naly09 0 550 Último mensaje 21 Agosto 2010, 22:11
por Naly09
Imegenes en Mails, como simulo el repeat de CSS ?
PHP
Diabliyo 2 787 Último mensaje 28 Febrero 2011, 21:44
por Diabliyo
Ayuda ejercicio de Pascal, cuando uno no lo ve claro pide ayuda
Programación General
manu3742 1 403 Último mensaje 31 Marzo 2011, 15:43
por el-viejo
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines