Hola Programador Novato. Gracias por el tutorial. Estoy al fin aprendiendo a programar. Lo haces divertido y así no me aburro como en otras ocasiones. Te dejo aquí mi tarea. A partir de este ejercicio he creado una calculadora simple, recordando el ejercicio 10. Lo único es que se me repiten los inputs en cada opción: no sé si habría otra forma mejor de hacerlo. Aquí el código. No sé si se mostrará bien o si hay alguna forma mejor de pegarlo en los comentarios. Saludos desde España!! ''' Ejercicio 20: menú de opciones con do while en Python Le mostraremos al humano un menú de opciones a seleccionar y dependiendo de la opción que seleccione, es la operación que se realizará. + presiona m para multiplicar + presiona d para dividir + presiona s para sumar + presiona r para restar + presiona q para salir ''' import os while True: os.system("cls") #limpia la pantalla del terminal. print("Indica la opción deseada:") print("\ + presiona 'm' para multiplicar dos números \ + presiona 'd' para dividir dos números \ + presiona 's' para sumar dos números \ + presiona 'r' para restar dos números \ + presiona 'q' para salir") opcion = input().lower() if opcion !='m' and opcion !='d' and opcion !='s' and opcion !='r' and opcion != 'q': print("La opción elegida no es correcta. Inténtalo de nuevo.") elif opcion == 'm': num1 = float (input("Introduce número 1: ")) num2 = float (input("Introduce número 2: ")) print(f"MULTIPLICACION: {num1} * {num2} = ", num1 * num2) elif opcion == 'd': num1 = float (input("Introduce número 1: ")) num2 = float (input("Introduce número 2: ")) if num2 != 0: print(f"DIVISIÓN: {num1} / {num2} = ", num1 / num2) else: print("ERROR: No se puede dividir entre cero. ") elif opcion == 's': num1 = float (input("Introduce número 1: ")) num2 = float (input("Introduce número 2: ")) print(f"SUMA: {num1} + {num2} = ", num1 + num2) elif opcion == 'r': num1 = float (input("Introduce número 1: ")) num2 = float (input("Introduce número 2: ")) print(f"RESTA: {num1} - {num2} = ", num1 - num2) elif opcion == 'q': break input("Pulsa 'INTRO' para continuar") print("Hasta la próxima.")
Amigo me podrías decir en este caso como podría poner para que si la persona pone la opción que no es el programa le diga que esa opción no es valida pero que deje volver a escribir otra vez? es para un trabajo
Hola, me encanto tu video. Muchas gracias por existir. Una pregunta: ¿que se le puede agregar para que se repita hasta que coloques la opción correcta?
muchas gracias por tu video!!! yo estoy haciendo un programa de calculadora básica y se parece mucho al tuyo sin embargo mis opciones de menu principal son ''op1. ec de primer grado, op2. ec de segundo grado y op3. calculadora básica ( que despliega otro sub menu: suma, resta, multiplicación, división y porcentaje)) sin embargo no sé como regresar al menu principal despues de haber elegido la op 3 ¿podrías ayudarme?
Aqui les va mi aportacion. Lo hice con un sleep para tener chance de ver el resultado antes de limpiar la pantalla y volver a mostrar de nuevo el menu: import time import os num1=10 num2=5 while True: print(f"Humano, que operacion eliges para {num1} y {num2}?") print("Presiona m para Multiplicar") print("Presiona d para Dividir") print("Presiona s para Sumar") print("Presiona r para Restar") print("Presiona e para Salir (Exit)") op = str(input("OPCION: ")).lower() if op == "m": print(f"La multiplicacion de {num1} x {num2} es igual a {num1*num2}") elif op == "d": print(f"La division de {num1} / {num2} es igual a {num1/num2}") elif op == "s": print(f"La suma de {num1} + {num2} es igual a {num1+num2}") elif op == "r": print(f"La resta de {num1} - {num2} es igual a {num1-num2}") elif op == "e": print(f"ADIOS HUMANO!") break else: print("Humano idiota, introdujiste una letra invalida!") time.sleep(3) #Hace una pausa de 3 segundos os.system("clear") #Limpia la consola
Eso lo aprendí gracias a una amiga, pero como mí amiga anda ocupada, anduve paseando por RUclips, hasta que encontré tu canal, y la verdad me gusta como explicas.
@@programadornovato oye! Ya que me estás respondiendo, tengo una consulta que ya la he resuelto. Pero quizás tu tienes una manera más simple de realizarla. La cosa va asi: Hice 10 agujeros, suelto una pelota, y quiero que la probabilidad de caer la pelota dentro de cada agujero sea diferente: Agujero01= 5% Agujero02= 5% Agujero03= 6% Agujero04= 6% Agujero05= 7% Agujero06= 10% Agujero06= 11% Agujero07= 12% Agujero08= 12% Agujero09= 20% Agujero10= 6% Fíjese que el agujero 20% tiene una probabilidad más alta de que la pelota caiga allí. Le cuento, yo lo resolví usando un random.randrange entre 1 y 101, y aplicando IF, ELIF ,ELIF, ELIF etc etc etc... De esa forma pude lograr hacer que mí programa haga lo que yo quería. Pero de esta manera el código me queda muy largo, y para nada lindo. (Pero funcional) Bueno, siento que se puede resolver mí programa, de una manera más sencilla, y sin tantas líneas de código. Me gustaría mucho si pudieras hacer un vídeo explicando una forma más simplificada de mí programa, ya que odio que mi código quedé tan largo para hacer una simple cosa jajaja
En la nueva versión de python existe la función match-case para la creación de menús en python, es bien interesante. infometango.blogspot.com/2022/07/funcion-switch-case-en-python-para.html
🎦[CURSO] PYTHON PARA PRINCIPIANTES🐍: ruclips.net/p/PLCTD_CpMeEKRppvi86Dy8CPYZ8-XzN2qu
Gracias por apoyar este canal: www.patreon.com/programadornovato
🔗 Facebook: facebook.com/ProgramadorNovatoOficial
🔗 Twitter: twitter.com/programadornova
🔗 Linkedin: www.linkedin.com/in/programadornovato/
🔗 Instagram: instagram.com/programadornovato/
🔗 Pagina oficial: www.programadornovato.com
bros, sos el pro enseñando, sos un capo, sábelo,he visto muchos tutoriales y este es el unico que además de explicar bien, no aburre.
muchas gracias amigo, espero me puedas apoyar compartiendo estos tutoriales :)
lo que no enseño bien el profe lo aprendí en tu video amigo eres lo mejor nuevo sub y like!
Me alegro amigo, espero me puedas apoyar compartiendo estos tutoriales :)
Gracias me sirvió para una tarea de la uni jaja voy en ingeniería mecánica y no se nada de programación
Buenasa la clase de do while. Gracias brother
Pásame el código porfa urge!!!!
Muy bueno
Hola Programador Novato.
Gracias por el tutorial. Estoy al fin aprendiendo a programar. Lo haces divertido y así no me aburro como en otras ocasiones.
Te dejo aquí mi tarea. A partir de este ejercicio he creado una calculadora simple, recordando el ejercicio 10.
Lo único es que se me repiten los inputs en cada opción: no sé si habría otra forma mejor de hacerlo.
Aquí el código. No sé si se mostrará bien o si hay alguna forma mejor de pegarlo en los comentarios.
Saludos desde España!!
'''
Ejercicio 20: menú de opciones con do while en Python
Le mostraremos al humano un menú de opciones a seleccionar y dependiendo de la opción que seleccione,
es la operación que se realizará.
+ presiona m para multiplicar
+ presiona d para dividir
+ presiona s para sumar
+ presiona r para restar
+ presiona q para salir
'''
import os
while True:
os.system("cls") #limpia la pantalla del terminal.
print("Indica la opción deseada:")
print("\
+ presiona 'm' para multiplicar dos números
\
+ presiona 'd' para dividir dos números
\
+ presiona 's' para sumar dos números
\
+ presiona 'r' para restar dos números
\
+ presiona 'q' para salir")
opcion = input().lower()
if opcion !='m' and opcion !='d' and opcion !='s' and opcion !='r' and opcion != 'q':
print("La opción elegida no es correcta. Inténtalo de nuevo.")
elif opcion == 'm':
num1 = float (input("Introduce número 1: "))
num2 = float (input("Introduce número 2: "))
print(f"MULTIPLICACION: {num1} * {num2} = ", num1 * num2)
elif opcion == 'd':
num1 = float (input("Introduce número 1: "))
num2 = float (input("Introduce número 2: "))
if num2 != 0:
print(f"DIVISIÓN: {num1} / {num2} = ", num1 / num2)
else:
print("ERROR: No se puede dividir entre cero.
")
elif opcion == 's':
num1 = float (input("Introduce número 1: "))
num2 = float (input("Introduce número 2: "))
print(f"SUMA: {num1} + {num2} = ", num1 + num2)
elif opcion == 'r':
num1 = float (input("Introduce número 1: "))
num2 = float (input("Introduce número 2: "))
print(f"RESTA: {num1} - {num2} = ", num1 - num2)
elif opcion == 'q':
break
input("Pulsa 'INTRO' para continuar")
print("Hasta la próxima.")
Amigo me podrías decir en este caso como podría poner para que si la persona pone la opción que no es el programa le diga que esa opción no es valida pero que deje volver a escribir otra vez? es para un trabajo
cuando pongo dentro del print(f"Que opciones quieres usar {num1} ")
me aparece {num1} en el print
bro, como le haces para rayar con esa flecha? como se llama ese programa?
se puede hacer ese menu desplegable pero colocandolo en una interfaz grafica?
Hola, me encanto tu video. Muchas gracias por existir.
Una pregunta: ¿que se le puede agregar para que se repita hasta que coloques la opción correcta?
Con un ciclo do while
muchas gracias por tu video!!!
yo estoy haciendo un programa de calculadora básica y se parece mucho al tuyo sin embargo mis opciones de menu principal son ''op1. ec de primer grado, op2. ec de segundo grado y op3. calculadora básica ( que despliega otro sub menu: suma, resta, multiplicación, división y porcentaje)) sin embargo no sé como regresar al menu principal despues de haber elegido la op 3 ¿podrías ayudarme?
Loco te debo una birra 🍺
estoy con la ultima version de python a la fecha ,. Y NO ME FUNCIONA EL CLS :( Alguien sabe si la biblioteca cambió ? ,.trabajo con win 10
trabajo igual que vos y literalmente tenes que opner os.system("cls") y funciona, acordate de importar la libreria. "import os"
Aqui les va mi aportacion. Lo hice con un sleep para tener chance de ver el resultado antes de limpiar la pantalla y volver a mostrar de nuevo el menu:
import time
import os
num1=10
num2=5
while True:
print(f"Humano, que operacion eliges para {num1} y {num2}?")
print("Presiona m para Multiplicar")
print("Presiona d para Dividir")
print("Presiona s para Sumar")
print("Presiona r para Restar")
print("Presiona e para Salir (Exit)")
op = str(input("OPCION: ")).lower()
if op == "m":
print(f"La multiplicacion de {num1} x {num2} es igual a {num1*num2}")
elif op == "d":
print(f"La division de {num1} / {num2} es igual a {num1/num2}")
elif op == "s":
print(f"La suma de {num1} + {num2} es igual a {num1+num2}")
elif op == "r":
print(f"La resta de {num1} - {num2} es igual a {num1-num2}")
elif op == "e":
print(f"ADIOS HUMANO!")
break
else:
print("Humano idiota, introdujiste una letra invalida!")
time.sleep(3) #Hace una pausa de 3 segundos
os.system("clear") #Limpia la consola
print("
FIN DEL PROGAMA!")
sigo sin entender esto de los bucles.
Intenta practicarlos
opcion = opcion.lower()
CLS es para Windows, CLEAR es para Linux
exacto eres un crack
Eso lo aprendí gracias a una amiga, pero como mí amiga anda ocupada, anduve paseando por RUclips, hasta que encontré tu canal, y la verdad me gusta como explicas.
@@nicolz9699 Deberias ver los demas tutoriales y ya voy a empezar a explicar inteligencia artificial con python
@@programadornovato oye! Ya que me estás respondiendo, tengo una consulta que ya la he resuelto. Pero quizás tu tienes una manera más simple de realizarla.
La cosa va asi:
Hice 10 agujeros, suelto una pelota, y quiero que la probabilidad de caer la pelota dentro de cada agujero sea diferente:
Agujero01= 5%
Agujero02= 5%
Agujero03= 6%
Agujero04= 6%
Agujero05= 7%
Agujero06= 10%
Agujero06= 11%
Agujero07= 12%
Agujero08= 12%
Agujero09= 20%
Agujero10= 6%
Fíjese que el agujero 20% tiene una probabilidad más alta de que la pelota caiga allí.
Le cuento, yo lo resolví usando un random.randrange entre 1 y 101, y aplicando IF, ELIF ,ELIF, ELIF etc etc etc...
De esa forma pude lograr hacer que mí programa haga lo que yo quería.
Pero de esta manera el código me queda muy largo, y para nada lindo. (Pero funcional)
Bueno, siento que se puede resolver mí programa, de una manera más sencilla, y sin tantas líneas de código.
Me gustaría mucho si pudieras hacer un vídeo explicando una forma más simplificada de mí programa, ya que odio que mi código quedé tan largo para hacer una simple cosa jajaja
@@nicolz9699 Por ahora no estoy haciendo vides de python, sorry
like si venis de la UTN
En la nueva versión de python existe la función match-case para la creación de menús en python, es bien interesante. infometango.blogspot.com/2022/07/funcion-switch-case-en-python-para.html