Programar en Python - Nivel 11 - Reto 4 - El número mayor

preview_player
Показать описание
En este reto mejoramos el código del programa que comprueba el mayor de siete números.

Para ello utilizamos un bucle for y una variable a la que le damos de inicio
el valor None.

---------------------------------------------------------------------

RETO PARA RESOLVER:

Haz un programa que pide que tres jugadores introduzcan un número y hasta que
los tres jugadores no han introducido un número continúa mostrando un menú
en el que solicita que se introduzca el número para los tres jugadores.

---------------------------------------------------------------------
Рекомендации по теме
Комментарии
Автор

Qué increíble lo simplificado que quedó, a mí no me dio para tanto la cabeza y lo hice con una lista:

lista = []
mayor = None

for i in range(7):
n = int(input("Dime un número: "))
lista.append(n)

if mayor is None:
mayor = lista[0]
if lista[1] > mayor:
mayor = lista[1]
if lista[2] > mayor:
mayor = lista[2]
if lista[3] > mayor:
mayor = lista[3]
if lista[4] > mayor:
mayor = lista[4]
if lista[5] > mayor:
mayor = lista[5]
if lista[6] > mayor:
mayor = lista[6]

print("El número más grande es", mayor)

llAlexmnll
Автор

no pude hacerlo con el None, ami me quedo así. Gracias Manuel por este increible curso

mayor = 0


for i in range(1, 8):
n = int(input("dime un numero : "))
if n > mayor:
mayor = n

print("el numero mayor es : ", mayor)

pabloferreyra
Автор

Buen día, no me dio para resolverlo así, pero hice con lo que ya nos compartiste, saludos:
n = []
v = None
mayor = None

while len(n) < 7:
v = int(input("Ingrese un número: "))
n.append(v)

for i in range(0, 7):

if mayor is None:
mayor = n[i]
if n[i] > mayor:
mayor = n[i]

print("El número mayor es el:", mayor)

joaquincazenave
Автор

Lo logre de está manera en 2 líneas de código:

n1, n2, n3, n4, n5, n6, n7 = map(int, input("Ingrese 7 numeros con espacios \n >>> ").split())
print("El número mayor es:", max(n1, n2, n3, n4, n5, n6, n7))

andrescamilocaballeroayala
Автор

mayor=None
for i in range(7):
num=int(input("digite un numero:"))
if mayor is None or num>mayor:
mayor=num
print(f"el mayor es {mayor}")
#en mis palabras mira mayor en la primera vuelta de bucle es un valor vacio cuando por ejemplo en la primera vuelta le ponemos 1 ahora mayor vale uno en la segunda vuelta si num es mayor que el numero pasado que pusiste ahora mayor pone el numero mayor, dure 4 minutos para entender pero despues le llegue saludos desde republica Dominicana

CrPersonal
Автор

anteriormente intenté hacerlo pero sin ver el video anterior jamás lo hubiese logrado de esta forma
mayo = None
num = None

for i in range(1, 7+1):
num = int(input('Dime un numero'))
if mayo is None:
mayo = num
if num > mayo:
mayo = num
print(f'El numero mayor es {mayo}')

bruck
Автор

Mi intento.He hecho uso de las excepciones en caso de que el usuario no introduzca valores numéricos enteros. Es un poco repetitivo y seguro que se puede acortar mediante funciones, pero al menos lo he


print("ELIGIENDO UN NÚMERO LOS JUGADORES")

jug_A, jug_B, jug_C = None, None, None

while True:
if jug_A =="ok" and jug_B =="ok" and jug_C == "ok":
break
print()
print("Pulsa:")
print("1. Para jugador A")
print("2. Para jugador B")
print("3. Para jugador C")
print()
selec = input("Elige jugador: ")

if selec == "1":
if jug_A is None:
try:
numero_A= int(input("Dime número: "))
jug_A = "ok"
except ValueError:
print("Error, valor no numérico")
else:
print("El jugador A ya ha sido seleccionado")

elif selec == "2":
if jug_B is None:
try:
numero_B= int(input("Dime número: "))
jug_B = "ok"
except ValueError:
print("Error, valor no numérico")
else:
print("El jugador B ya ha sido seleccionado")

elif selec == "3":
if jug_C is None:
try:
numero_C= int(input("Dime número: "))
jug_C = "ok"
except ValueError:
print("Error, valor no numérico")
else:
print("El jugador C ya ha sido seleccionado")

else:
print("Selección incorrecta. Vuelva a intentarlo.")

print()
print("Los tres jugadores ya han elegido numero:")
print(" Jugador A:", numero_A)
print(" Jugador B:", numero_B)
print(" Jugador C:", numero_C)

horkoser
Автор

El reto 3, lo logré de esta manera:
num=[]
for i in range(7):
num.append(int(input("Número: ")))
print(num)
mayor=None
if mayor is None:
mayor=num[0]
for i in range(1, 7):
if num[i]>=mayor:
mayor=num[i]
print("El número mayor es:", mayor)

hanspuente
Автор

lisnume = []
for i in range(7):
n = int(input("Ingresa un número: "))
lisnume.append(n)
print(f"El Número Mayor es: {max(lisnume)}")

alekusnaf
Автор

x = None
for i in range(7):
n = int(input("escriba un numero: "))
if x is None or n > x:
x = n

print("el numero mas grande es: {}".format(x))

martinibanez
Автор

yo habia hecho una lista pero sin none
lista = []
for i in range(7):
lista += [int(input('Ingresa un número: '))]
lista.sort()
print(lista[-1])

victorarboleda
Автор

Aquí dejo mis ejemplo del capítulo anterior:

i = 1
numero = None
mayor = None
numeros = []

while numero is None or i <= 7:
numero = int(input('Ingresar Número '+str(i)+' : '))
numeros.append(numero)
i += 1

print('de los números '.capitalize(), numeros)

if mayor is None:
mayor = numeros[0]
if numeros[1] > mayor:
mayor = numeros[1]
if numeros[2] > mayor:
mayor = numeros[2]
if numeros[3] > mayor:
mayor = numeros[3]
if numeros[4] > mayor:
mayor = numeros[4]
if numeros[5] > mayor:
mayor = numeros[5]
if numeros[6] > mayor:
mayor = numeros[6]

print(' "{0}" Es el mayor '.format(mayor))

juandiegocastroarteaga
Автор

Hola de nuevo. He vuelto a hacer el reto de los jugadores. En comparación con el que hice hace un mes ha mejorado un montón. Se ha reducido bastante y queda más legible. A ver que os parece.
Saludos.
print("ELIGIENDO UN NÚMERO LOS JUGADORES")
print()


j1, j2, j3 = None, None, None
while j1 is None or j2 is None or j3 is None:
print("Pulsa:")
print("1. Para jugador A")
print("2. Para jugador B")
print("3. Para jugador C")
print()
jugador = input("Elige un jugador: ")
if jugador == "1" and j1 is None:
j1 = int(input("Dime un número: "))
elif jugador == "2" and j2 is None:
j2 = int(input("Dime un número: "))
elif jugador == "3" and j3 is None:
j3 = int(input("Dime un número: "))
else:
print("El jugador", jugador, "ya ha elegido.")


print()
print("Los 3 jugadores ya han elegido número:")
print("Jugador A:", j1)
print("Jugador B:", j2)
print("Jugador C:", j3)

horkoser
Автор

Me pregunto... Si es posible optimizar el rendimiento del programa evitando la primera iteración...

josel.martinez
Автор

Dejo aca mi razonamiento


jugA=None
jugB=None
jugC=None
print('''Pulsa:
1. Para Jugador A
2. Para Jugador B
3. Para Jugador C''')
while True:
elegi=int(input('Elige jugador: '))
if elegi == 1:
if jugA is None:
numero=int(input('Dime un numero: '))
jugA=numero
else:
print('Jugador A ya ha elegido un numero.')
elif elegi == 2:
if jugB is None:
numero=int(input('Dime un numero: '))
jugB=numero
else:
print('Jugador B ya ha elegido un numero.')
elif elegi == 3:
if jugC is None:
numero=int(input('Dime un numero: '))
jugC=numero
else:
print('Jugador C ya ha elegido un numero.')
if jugA != None and jugB != None and jugC != None:
break
print('Jugador A: ', jugA, ' Jugador B: ', jugB, ' Jugador C: ', jugC)

Santiagointhejungle
Автор

'''
Programa que pide 7 números y comprueba que número es el mayor.
'''
numeros=[]
posicion=0
mayor=None

for i in range(7):
numero=0
numero = int(input(f"{i}.-Ingresa un numero: "))
numeros.append(numero)

for i in range(len(numeros)):
if mayor is None:
mayor=numeros[i]
posicion=i
if numeros[i]>mayor:
mayor=numeros[i]
posicion=i
else:
print(f"El numero mayor es: {mayor} en la posicion: {posicion}")

christianalexandergaldamez
Автор

tengo una duda manuel cual es la diferencia de usar None en este ejercicio o mas bien cual es su utilidad porque yo viendo el video el ejercio se puede tambien usar de esta forma, se que en este ejercicio es el tema del None pero cual es su utilidad gracias por contestar, buen curso

mayor = 0

for numeros in range(7):
n = int(input('dime un numero ->'))
if n > mayor:
mayor = n

print('el numero mayor es:', mayor)

franciscojavierneryrios
Автор

jugador_a = None
jugador_b = None
jugador_c = None

while(jugador_a == None or jugador_b == None or jugador_c == None):
print('Pulsa:')
print('1. Para jugador A')
print('2. Para jugador B')
print('3. Para jugador C')
respuesta = int(input())

if(respuesta == 1):
if(jugador_a != None):
print('El jugador A ya ha elegido')
else:
jugador_a = int(input('Dime un numero: '))
elif(respuesta == 2):
if(jugador_b != None):
print('El jugador B ya ha elegido')
else:
jugador_b = int(input('Dime un numero: '))
elif(respuesta == 3):
if(jugador_c != None):
print('El jugador C ya ha elegido')
else:
jugador_c = int(input('Dime un numero: '))
else:
print('Ingresa una opcion valida')

print('Los tres jugadores ya han elegido numero')
print('Jugador A: ', jugador_a)
print('Jugador B: ', jugador_b)
print('Jugador C: ', jugador_c)

soyBuenaOnda
Автор

Puede explicar cómo hacer este programa para “n” números? Suponiendo que se nos pueda presentar una cantidad muy grande muy números, e introducir cada uno de ellos sería un procedimiento muy tardado y extenso...

valeriagomez-kubu
Автор

""" BUSCAR EL MAYOR DE N NUMEROS """

numeros_ingresados = []
RECOLECTANDO = True

def nuevo_numero():
""" Metodo que solicita numero al usuario """
return input("Digite un numero (n terminar): >> ")

def determinar_si_numero(dato):
""" Metodo que verifica si el dato es un numero """
if not dato.isdigit() and dato.lower() != "n":
raise ValueError("Error!! Debe ser un numero o para salir presiona la tecla 'n'· ")
return dato.isdigit()

def
""" Metodo que controla el ciclo de recolectando """
return dato.lower() != "n"

while True:
while RECOLECTANDO:
try:
numero = nuevo_numero()
RECOLECTANDO =
if determinar_si_numero(numero):

except ValueError as value_error:
print(value_error)
print("Numeros ingresados: ", numeros_ingresados)
print("El numero mayor es: ", max(numeros_ingresados))
break

miguelangellp