Este post se trata sobre otro ejercicio de Python que voy a resolver. En este caso hay que hacer un programa que pida dos números y realice determinada operación dependiendo de los mismos. Veamos la descripción:
Realizar un programa en Python que pida dos números. Si los números son distintos, que los sume. En caso de que sean negativos, se deben multiplicar. Finalmente, si un número es negativo y otro positivo, que los reste.
Para hacerlo usaremos los operadores básicos en Python y unas simples comparaciones.
Algoritmo
Hay que escanear los dos números con input. Después, compararlos. Para saber si un número es negativo vemos si es menor que 0. Si queremos conocer si son distintos usamos el operador diferente de !=
.
Hay un pequeño problema y es que el que dice “si los números son distintos” también se cumple cuando uno es negativo y otro positivo; por ello es que primero vamos a comparar las anteriores y finalmente el de que los números sean distintos.
Código fuente
Aquí dejo el código que resuelve el ejercicio:
"""
Realizar un programa en Python que pida dos números.
Si los números son distintos, que los sume.
En caso de que sean negativos, se deben multiplicar.
Finalmente, si un número es negativo y otro positivo, que los reste.
@author parzibyte
"""
# Escanear
numero1_como_cadena = input("Escribe un número: ")
numero2_como_cadena = input("Escribe el otro número: ")
# convertir a flotantes
numero1 = float(numero1_como_cadena)
numero2 = float(numero2_como_cadena)
# Si uno es negativo y otro positivo. Ya sea el primero o el segundo
if (numero1 < 0 and numero2 > 0) or (numero2 < 0 and numero1 > 0):
resta = numero1 - numero2
print("La resta es: {}".format(resta))
# Si ambos son negativos
elif numero1 < 0 and numero2 < 0:
multiplicacion = numero1 * numero2
print("El producto es: {}".format(multiplicacion))
# Si son distintos
elif numero1 != numero2:
suma = numero1 + numero2
print("La suma es: {}".format(suma))
else:
# Sr. Stark ahora qué hago.png
pass
En el else
del final no se sabe qué hacer así que se pone un simple pass
para dejarlo vacío. Puedes manejarlo como tú quieras.
Para escanear los números usamos input
, de ahí los convertimos a flotantes con float
. Como lo dije, para saber si son negativos comparamos si son menores a 0.
Usamos también algunas operaciones lógicas como and
y or
.
Si quieres ver más ejercicios con Python haz click aquí.