Python - Decisiones operaciones matematicas

 
Vista:
sin imagen de perfil

Decisiones operaciones matematicas

Publicado por Jorge gomez (3 intervenciones) el 23/04/2017 17:57:14
Buenos dias a todos @.
Estoy aprendiendo python e hice un pequeño programa de suma, resta, multiplicación, división.
Solo que al final de la operación estoy haciendo una pregunta de que si se quiere hacer otra operación para que regrese y vuelva a preguntar que operación se quiere. aqui lo que llevo.
Gracias

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
print "Programa para multiplicar, Suma, Resta, Division"
 
print ("Selecciona un numero\n 1. Suma\n 2. Resta\n 3. Multiplicacion\n 4. Division\n")
 
opcion = input()
#while (opcion <=4):
    if opcion == 1:
        print "Suma"
        x = input("Primer numero: ")
        y = input ("Segundo numero: ")
        suma = int(x + y)
        print x, "+", y, "=", suma
 
    elif opcion == 2:
        print "Resta"
        x = input("Primer numero: ")
        y = input("Segundo numero: ")
        res = int(x - y)
        print x, "-", y, "=", res
 
    elif opcion == 3:
        print "Multiplicacion"
        x = input("Primer numero: ")
        y = input("Segundo numero: ")
        mul = int(x * y)
        print x, "*", y, "=", mul
        break
 
    elif opcion == 4:
        print "Division"
        x = input("Primer numero: ")
        y = input("Segundo numero: ")
        div = int(x / y)
        print x, "/", y, "=", div
 
else:
        print "No es opcion Valida"
 
#print "AQuieres otra operacion"
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
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Decisiones operaciones matematicas

Publicado por tincopasan (1082 intervenciones) el 23/04/2017 20:54:31
hola: no lo tomes a mal pero tu lógica de programación deja mucho que desear, hay que tratar de hacer las cosas más simples(no es obligatorio), pero como estás comenzando seguiré tu línea:
habías puesto un while, lo cual está bien, esto genera un bucle, necesario para la repetición basicamente. Deberías usar así esa parte:
1
2
3
4
5
6
7
print ("Programa para multiplicar, Suma, Resta, Division")
print ("Selecciona un numero\n 1. Suma\n 2. Resta\n 3. Multiplicacion\n 4. Division\n")
opcion=0
 
while (opcion !=5):
    opcion = input()
    if opcion == 1: #etc  
con eso opción siempre vale 0 al inicio del bucle, tu error estaba en poner el input fuera del bloque while

para que muestre si seguir o no podrías por ejemplo:
1
2
3
4
5
6
7
8
9
10
11
if opcion == 1:
        print "Suma"
        x = input("Primer numero: ")
        y = input ("Segundo numero: ")
       suma = int(x + y)
       print x, "+", y, "=", suma
      continuar=input("¿quieres otra operación?")
        if continuar == "si":
            print ("Selecciona un numero\n 1. Suma\n 2. Resta\n 3. Multiplicacion\n 4. Division\n")
        else:
            opcion= 5

perdón por el código que agregué porque es de python 3.x y estás usando 2.x (adaptalo al tuyo), además de eso lo que haces es preguntar si continuar, si continuar es igual a "si" todo sigue igual sino opción vale 5 y termina el bucle.
Sigue practicando, estudiando y aprendiendo, entre ello empieza a mirar el uso de funciones, te evitara repetir tanto código!
También verás que hay muchas formas de hacer una cosa.
Y te felicito por plantear tu duda y mostrar el código sin esperar todo hecho!!
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil

Decisiones operaciones matematicas

Publicado por Jorge (3 intervenciones) el 23/04/2017 21:21:59
No te preocupes, la verdad como te comento soy nuevo asi que por el momento toda critica constructiva es mas que bien venida te agradezco tu honestidad.

Estare viendo mas codigos de otras personas para la cuestion de la limpieza y desarrollo, ya que me falta demasiado. Te comento que esto lo hago por que quiero empezar a desarrollar en el raspberry pi (Checalo si no sabes que es).
Lo adapare al tu ayuda y lo subire para quien mas tenga dudas aparte lo modificare en el futuro según lo que vaya aprendiendo
Saludos y Gracias por la ayuda.
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

Decisiones operaciones matematicas

Publicado por Jorge gomez (3 intervenciones) el 27/04/2017 17:22:56
Hice algunbas modificaciones.
favor criticar (constructiva), recuerden estoy empezando
Me base en un ejemplo en la parte de la decisión
saludos

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
41
def suma():
    num1 = int(input("primer numero? "))
    num2 = int(input("Segundo Numero?  "))
    r = sum(yx)
    print num1, "+", num2, "=", r
 
def Resta():
    num1 = int(input("primer numero? "))
    num2 = int(input("Segundo Numero?  "))
    r = num1 - num2
    print num1, "-", num2, "=", r
 
def multiplicacion():
    num1 = int(input("primer numero? "))
    num2 = int(input("Segundo Numero?  "))
    r = num1 * num2
    print num1, "*", num2, "=", r
 
def Division():
    num1 = int(input("primer numero? "))
    num2 = int(input("Segundo Numero?  "))
    r = num1 / num2
    print num1, "/", num2, "=", r
 
x = 0
go = "si"
 
print "Operaciones basicas"
 
menu = [suma, Resta, multiplicacion, Division]
 
while x < len(menu):
    print menu[x].__name__, ", presiona ", "[" + str(x) + "]"
    x += 1
 
while go != "n":
    c = input("Selecciona opcion: ")
    menu[c]()
    num1 = 0
    num2 = 0
    go = raw_input("Otra Operacion? [si/n]: ")
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