Algún programador de Python en la sala?

Iniciado por Lau_97, 15 Septiembre 2018, 19:26 PM

0 Miembros y 1 Visitante están viendo este tema.

Lau_97

Necesito ayuda con un ejercicio de maximos y minimos  :-[ 
Ej: Realizar un programa que lea números enteros desde teclado. La lectura finaliza cuando llegue el num 100 el cual debe procesarse. Informar en pantalla:
a) El num maximo leido
b) El num minimo leido
c) La suma total de los numeros leidos

pd: en su defecto en pseudocodigo. Gracias!!

OmarHack

Por qué no empiezas a hacerlo tú y preguntas dudas y comentas problemas que tengas en vez de pedirle a extraños que te hagan el trabajo del cole? xD

Lo puedes hacer con un bucle que vaya almacenando los datos de entrada hasta cumplirse la condición.
Otro bucle para guardar y comparar valores y asignarle los máximos y mínimos a sus respectivas variables.
Y sacas otra variable con la suma de todos los valores.
Lo haces todo con operadores.
Ponle algún mensaje de error para cuando no te entreguen caracteres enteros.
I like to test things.

Lau_97

#2
Cita de: OmarHack en 15 Septiembre 2018, 20:00 PM
Por qué no empiezas a hacerlo tú y preguntas dudas y comentas problemas que tengas en vez de pedirle a extraños que te hagan el trabajo del cole? xD

Lo puedes hacer con un bucle que vaya almacenando los datos de entrada hasta cumplirse la condición.
Otro bucle para guardar y comparar valores y asignarle los máximos y mínimos a sus respectivas variables.
Y sacas otra variable con la suma de todos los valores.
Lo haces todo con operadores.
Ponle algún mensaje de error para cuando no te entreguen caracteres enteros.





EL while en este caso no sirve, porque debe procesarse tambien el 100. Se utiliza repeat. el problema es que no existe en Python, por eso lo resuelvo en Pseudocodigo y aqui va lo que tengo hasta ahora:

max= 0
min= 99999
suma= 0
num= leer ()
repetir
   si (num>max):
       num= max
   si (num<min):
       num= min
  suma= suma+num
hasta (num==100)
imprimir (max, min, suma)


PD1: Pero creo que me esta faltando algo y no lo veo.
PD2: No hagais caso a la sintaxis!!!

OmarHack

Usa listas
listadenumeros=[]
Usa un bucle for para el imput, no un while
for i in listadenumeros
puedes usar len para sacar la longitud
short para ordenarlos
min y max para obtener el mínimo y el máximo
para la suma de todos los numeros de la lista, suma el primer elemento de la lista + el resto de elementos de la lista
listadenumeros=[0] + listadenumeros=[1: ]
recuerda que el input debe ser un entero

I like to test things.