defadd(a, b):
# 'def (parametros...):' nos declara la función y dentro de paréntesis van los valores que le pasemos a la funcion
ans = a + b
# indentamos y hacemos la operación, aquí como es sumar, sumamos el número 'a' con 'b' guardamos el resultado en una variable 'ans'
print(a, " + ", b, " = ",ans) # e imprimimos en pantalla el resultado
Ahora hacemos lo mismo para las demás operaciones:
defsubs(a, b): # ← resta
ans = a - b
print(a, " - ", b, " = ",ans)
defmult(a, b): # ← multiplicación
ans = a * b
print(a, " * ", b, " = ",ans)
defdiv(a, b): # ← division
ans = a / b
print(a, " / ", b, " = ",ans)
.
Y así va quedando
.
defadd(a, b):
ans = a + b
print(a, " + ", b, " = ",ans)
defsubs(a, b):
ans = a - b
print(a, " - ", b, " = ",ans)
defmult(a, b):
ans = a * b
print(a, " * ", b, " = ",ans)
defdiv(a, b):
ans = a / b
print(a, " / ", b, " = ",ans)
.
.
2) Ahora presentamos el programa y le damos las primeras instrucciones
print('Welcome to calculator') #← saludo
a = float(input("Insert first number: ")) # ← ingresamos el primer valor, será flotanteprint('a. +') # sumaprint('b. -') # restaprint('c. *') # multiplicacionprint('d. /') # division
op = input('Choose operation: ') # ingresamos la operacion con las letras que las identifican
b = float(input("Insert second number: ")) # ← ingresamos el segundo valor, será flotante como el primero
.
Además que todo lo metemos en un ciclo while de condición True para poder hacer un número ilimitado de iteraciones si no rompemos la ejecución del ciclo:
.
whileTrue:
print('Welcome to calculator')
a = float(input("Insert first number: "))
print('a. +')
print('b. -')
print('c. *')
print('d. /')
op = input('Choose operation: ')
b = float(input("Insert second number: "))
.
.
3) Ahora definimos con condicionales cuáles son las funciones que llamaremos según el operando escogido:
if op == 'a':
add(a, b)
# según el operando se llama a la función, en este caso suma, enviándole los valores que escogimos previamente
elif op == 'b':
subs(a, b)
elif op == 'c':
mult(a, b)
elif op == 'd':
div(a, b)
else:
print('Invalid operation') # aquí informamos al usuario que su opción es incorrecta
continue # reiteramos el ciclo porque la opción no fue válida
.
.
4) Queremos también darle la opción al usuario de poder hacer otra ejecución más o cerrar el programa, así que…
.
print("1\. yes")
print("2\. no")
selection = int(input("Would you like to make another operation? "))
#queremos que el usuario escoja entre la opción 1 (hacer otra operación) u opción 2 (cerrar el programa)
if selection == 1:
continue# 'continue' nos hará regresar al inicio del loop para una nueva iteración, ignorando lalógica siguiente
elif selection == 2:
break # 'break' rompe la ejecución del loop y cierra el programa
else:
print("Not a valid option")
continue# informamos al usuario que escogió una opción inválida y con 'continue' lo enviamos a nueva iteración del loop
.
.
Y así se ve todo junto:
.
defadd(a, b):
ans = a + b
print(a, " + ", b, " = ",ans)
defsubs(a, b):
ans = a - b
print(a, " - ", b, " = ",ans)
defmult(a, b):
ans = a * b
print(a, " * ", b, " = ",ans)
defdiv(a, b):
ans = a / b
print(a, " / ", b, " = ",ans)
whileTrue:
print('Welcome to calculator')
a = float(input("Insert first number: "))
print('a. +')
print('b. -')
print('c. *')
print('d. /')
op = input('Choose operation: ')
b = float(input("Insert second number: "))
if op == 'a':
add(a, b)
elif op == 'b':
subs(a, b)
elif op == 'c':
mult(a, b)
elif op == 'd':
div(a, b)
else:
print('Invalid operation')
continueprint("1\. yes")
print("2\. no")
selection = int(input("Would you like to make another operation? "))
if selection == 1:
continueelif selection == 2:
breakelse:
print("Not a valid option")
continue