Python - Impresion incorrecta al seleccionar una opcion

 
Vista:

Impresion incorrecta al seleccionar una opcion

Publicado por Jesus (1 intervención) el 17/09/2019 03:02:40
Hola a todos, tengo un problema con el conversor de unidades.

Al correr el programa y seleccionar " opcion==1" me imprime opcion_menu1. Eso esta bien pero:

Cuando lo corro y escojo " opcion==2" me imprime "opcion_menu1" otra vez. Cuando deberia imprimir "opcion_menu2".

Tengo puesto que al seleccionar " opcion==2" me imprima opcion_menu2 pero no lo hace.

Soy nuevo en esto.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import msvcrt
print(" Calculadora de unidades")
print("---------------")
 
opcion=int(input("Seleccione Unidad a convertir:\n1. Unidades de Temperatura\n2. Unidades de Longitud\n3. Unidades de Masa\n\nEscoja la opcion que desea:"))
 
if opcion == 1:
    print("----------------------")
    print("\n Unidades de Tempratura\n")
    print("----------------------")
opcion_menu1=int(input(". Celcius  a Fahrenheit\n. Fahrenheit a Celcius"))
 
if opcion_menu1 == :
 
   C= int(input("Ingrese la cantidad de Grados Celcius a convertir:"))
   F =(C - 32) *(5/9)
   print(C ,"Grados Celcius equivalen a ","{:.2f}".format(F),"Grados Fahrenheit")
 
 
elif (opcion_menu1 == 2):
 
   Celcius= int(input("Ingrese la cantidad de Grados Fahrenheit a convertir:"))
   Farenheit =(Celcius - 32) * 5/9
   print(Celcius ,"Fahrenheit Equivalen a ","{:.2f}".format(Farenheit),"grados Celcius")
 
else:
    print(" La opcion escogida no es valida")
 
if opcion == 2:
     print("----------------------")
     print(" Unidades de Longitud")
     print("----------------------")
opcion_menu2=int(input(". Pies a Metros\n. Metros a Pies\n. Escoja la opcion que desea:"))
 
if opcion_menu2 == 1:
   Pies = int(input("Ingrese la cantidad de pies a convertir"))
   Metros = Pies/3.281
   print(Pies ," Pies equivalen a ","{:.2f}".format(Metros), "Metros")
 
msvcrt.getch()
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de pablo hernandez
Val: 41
Ha disminuido su posición en 2 puestos en Python (en relación al último mes)
Gráfica de Python

Impresion incorrecta al seleccionar una opcion

Publicado por pablo hernandez (10 intervenciones) el 23/09/2019 17:39:14
bueno lo unico que veo es esto
1
if opcion_menu1 == :

eso está en la linea 13 del código que montaste

también quitale los parentesis en está opcion

1
elif (opcion_menu1 == 2):

línea 20
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Héctor Madriz
Val: 361
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Impresion incorrecta al seleccionar una opcion

Publicado por Héctor Madriz (69 intervenciones) el 23/09/2019 22:32:51
Buen día, te sugiero reestructurar tu código.

Ejemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Opcion=input("*** M E N U *** \n[1] Uno \n[2] Dos \n[3]: Tres \n[0] Salir \n Opcion:")
if Opcion=="1":
   print("\n>> Decidió uno del MENU\n")
elif Opcion=="2":
   print("\n>> Decidió Dos del MENU\n")
   Opcion2=int(input("*** SUB-MENU *** \n[1] Suma \n[2] Resta \n Opcion:"))
   if Opcion2==1:
      print("\n       >>>> Decidió Sumar del SUB-MENU\n")
   elif Opcion2==2:
      print("\n       >>>> Decidió Restar del SUB-MENU\n")
   else:
      print("\n       >>>> Decidió ni sumar ni restar en el SUB-MENU\n")
elif Opcion=="3":
   print("\n>> Decidió Tres del MENU\n")

Opcion tipo cadena
Opcion2 tipo numerico


Los bloques de código están determinados por su Indentación


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar