HOLA A TODOS ESTOY INENTANDO HACER UN PROGRAMA QUE ME CALCULE EL NUMERO MAYOR DE 5 NUMEROS INGRESADOS.
LO TG ASI PERO NO ME DA.
# Datos ingresados por consola
numero1=int(input("Ingresa el primer numero:"))
numero2=int(input("Ingresa el segundo numero:"))
numero3=int(input("Ingresa el tercer numero:"))
numero4=int(input("Ingresa el cuarto numero:"))
numero5=int(input("Ingresa el quinto numero:"))
# Comparar numeros y vera cual es el mayor
mayor=numero5
if numero5 < numero1:
mayor=numero1
if numero5 < numero2:
mayor=numero2
if numero5 < numero3:
mayor=numero3
if numero5 < numero4:
mayor=numero4
else:
mayor=numero5
if numero4 < numero3:
mayor=numero3
if numero4 < numero2:
mayor=numero2
if numero4 < numero1:
mayor=numero1
else:
mayor=numero4
if numero3 < numero2:
mayor=numero2
if numero3 < numero1:
mayor=numero1
else:
mayor=numero3
if numero2 < numero1:
mayor=numero1
else:
mayor=numero2
print ("El numero mayor es",mayor)
Lo puedes meter en un array y utilizar la función max, por ejemplo:
max([1,4,2,5,3])
devuelve 5
Ya me funciona
## Datos ingresados por consola
numero1=int(input("Ingresa el primer numero:"))
numero2=int(input("Ingresa el segundo numero:"))
numero3=int(input("Ingresa el tercer numero:"))
numero4=int(input("Ingresa el cuarto numero:"))
numero5=int(input("Ingresa el quinto numero:"))
## Se van realizando las comparaciones y se crea una variable donde van metidos los datos
candidato=numero1
## Se compara el numero1 con los demas numeros
if numero5 < candidato:
if numero4 < candidato:
if numero3 < candidato:
if numero2 < candidato:
maximo=candidato ## Si los demas numeros son menores el mayor es el numero1
else: ## Si no es mayor el numero1, se va comparado el numero2 con los demas.
candidato=numero2
if numero3 < candidato:
if numero4 < candidato:
if numero5 < candidato:
maximo=candidato ## Si los demas numeros son menores el mayor es el numero2
else: ## Si no es mayor el numero2, se va comparado el numero3 con los demas.
candidato=numero3
if numero4 < candidato:
if numero5 < candidato:
maximo=candidato ## Si los demas numeros son menores el mayor es el numero3
else: ## Si no es mayor el numero3, se va comparado el numero4 con los demas.
candidato=numero4
if numero5 < candidato:
maximo=candidato ## Si los demas numeros son menores el mayor es el numero4
else: ## Si no es mayor el numero4, se va comparado el numero5 con los demas.
maximo=numero5 ## Si los demas numeros son menores el mayor es el numero5
## Imprimimos en pantalla todos los numeros ingresados
print (numero1,numero2,numero3,numero4,numero5)
print ()
## Se imprime en pantalla el numero maximo
print ("El numero maximo es", maximo)
-------------------------------------------------------------------------------------------------
Si ya esa seria la manera mas rapida y menos engorrosa pero es que el profesor lo quiere sin funciones globales
De todos modos muchas gracias por tu ayuda
era mas elegante lo que dijo H1jack, asi queda feo feo
¿Y no es más sencillo poner algo de este estilo?
print max(map(int, raw_input("Ingresa 5 numeros en la misma linea:\n").split()))
Un saludo!
Otra manera de hacerlo utilizando condicionales:
_1 = int(raw_input("Primer numero: "))
maximo = _1
_2 = int(raw_input("Segundo numero: "))
if _2 > maximo: maximo = _2
_3 = int(raw_input("Tercer numero: "))
if _3 > maximo: maximo = _3
_4 = int(raw_input("Cuarto numero: "))
if _4 > maximo: maximo = _4
_5 = int(raw_input("Quinto numero: "))
if _5 > maximo: maximo = _5
print maximo
Un saludo.
Aquí va otro, a ver si está bien:
print u'Programa para la resolución del máximo de cinco números.'
print u'Escribe cero(0), para salir.'
while True:
try:
a = int(raw_input('Escribe el primer numero: '))
b = int(raw_input('Escribe el segundo numero: '))
c = int(raw_input('Escribe el tercer numero: '))
d = int(raw_input('Escribe el cuarto numero: '))
e = int(raw_input('Escribe el quinto numero: '))
if a == 0:
break
if a > b and a > c and a > d and a > e:
maximo = a
else:
if b > a and b > c and b > d and b > e:
maximo = b
else:
if c > a and c > b and c > d and c > e:
maximo = c
else:
if d > a and d > b and d > c and d > e:
maximo = d
else:
maximo = e
print u'El máximo es: {0}'.format(maximo)
except ValueError:
print u'No puedes dejar la entrada en blanco, ni escribir letras.'