Link: [Link]
com/ejercicios-de-condicionales-en-python/
Objetivos
Entender el uso de and or not
Ver como interactuan los operadores > < =
Comprender las estructuras if elif else
Operadores lógicos
Operador Descripción Ejemplo Resultado
Devuelve True si ambos operandos son True and
and True
verdaderos. True
True and
False
False
False and
False
True
False and
False
False
Devuelve True si al menos uno de los operandos
or True or True True
es verdadero.
True or
True
False
False or
True
True
Operador Descripción Ejemplo Resultado
False or
False
False
not Devuelve True si el operando es falso y viceversa. not True False
not False True
In [ ]: # Ejemplos con variables para el operador and
x = True
y = False
resultado_and = x and y
print("Resultado de x and y:", resultado_and) # Como los dos no son verdadero e
# Ejemplos con variables para el operador or
a = True
b = False
resultado_or = a or b
print("Resultado de a or b:", resultado_or) # Como alguno es verdadero el resul
# Ejemplos con variables para el operador not
c = True
resultado_not = not c
print("Resultado de not c:", resultado_not) # La negación es lo opuesto de c.
Una vez dominemos estas ideas, estaremos muy cerca de combinarlas con las
variables. Pues, al final, las condicionales se construyen utilizando los símbolos and
or not < (menor) <= (menor o igual) == (igual) > (mayor) y >= (mayor o
igual) principalmente.
In [ ]: # Ejemplo combinando operadores lógicos y booleanos con variables simples
# Variables simples
edad = 20
altura = 175
# Combinación de operadores lógicos y booleanos
resultado_combinado = edad >= 18 and altura > 170
print("El resultado combinado es:", resultado_combinado) # True
# Otra combinación
resultado_combinado = edad < 18 or altura <= 170
print("El resultado combinado es:", resultado_combinado) # False
# Combinación con operador not
resultado_combinado = not (edad >= 18 and altura > 170)
print("El resultado combinado es:", resultado_combinado) # False
If, elif y else
En programación existen lo que se conoce como estructuras de control. Se
pueden identificar por el símbolo : . Las tres palabras reservadas, if elif
else son variantes de las estructuras condicionales. Veamos un ejemplo de
algunas cosas...
Sólo hemos presentado como escribirlos y como funcionan los códigos. No busques
una lógica de las variables. No hacen nada
In [ ]: a = 1 #Veamos como funciona un if...
if(a == 1): #Los paréntesis no son obligatorios, pero ayudarán a entender que de
# Código segundo nivel
print('A vale 1')
print('Cualquier otra instrucción')
# A partir de los dos puntos (:), el código que se ejecuta bajo la condición
# Así, se agrupa como parte del código dentro de la estructura.
# Si el código no se presenta con los dos puntos antes y después nivelado (e
# Esto es así porque es la única manera que tiene Python de identificar una
b = 3
print('B queda fuera de la condición')
# Una vez se respeta el if con alguna instrucción, después el código puede ser e
# Códigos nivel principal: (Python ve los dos puntos y pide que el código se vay
# ----> # Código segundo nivel (tabulado)
Nota: Se utilizan dos iguales (==) en las condicionales porque un igual (=)
es utilizado para asignar valores a variables.
In [ ]: # Accede a la web con la tabla resumen y explora los códigos de if elif else par
a = 0
b = 1
if( a > -2 and b == 1):
print('camino 1')
else: # en el resto de los casos... (Fíjate que se repite la estructura). Else s
print('camino 2')
# Juega un poco con las variables a y b. Entiende qué implican los símbolos y ju
In [ ]: # Ahora vamos con elif. Elif se coloca como caminos intermedios.
a = 0
b = 2
if(a > 0):
print('Camino 1')
elif(a == 0 or b > 0):
print('Camino 2')
elif(a < 0 and b == 2):
print('Camino 3')
else:
print('Camino 4')
'''
RECUERDA: Sólo hemos presentado como escribirlos. No busques una lógica de las v
Nuevamente, fíjate que construimos 3 caminos respetando la siguiente norma:
- todos comienzan con :
- Los códigos irán nivelados.
- if va primero. Else es el último. El resto de los caminos comienzan con elif.
'''
Ejercicios Resueltos
In [ ]: #Ej1.
a = 50
b = 10
# Si a es mayor a b…
if(a > b):
print("Hello World")
In [ ]: #Ej2.
edad = input('¿Qué edad tienes?')
edad = int(edad) # Convertimos a número entero...
if(edad >= 18):
print('Puedes pasar :D')
else:
print('Lo siento. No puedes pasar...')
In [ ]: #Ej3.
import math # Aquí tienes un ejemplo de importar una librería...
# Solicitar al usuario los valores de los catetos
cateto1 = float(input("Ingrese la longitud del primer cateto: "))
cateto2 = float(input("Ingrese la longitud del segundo cateto: "))
# Verificar que los catetos sean mayores que cero
if cateto1 <= 0 or cateto2 <= 0:
print("Error: Los catetos deben ser mayores que cero.")
else:
# Calcular la hipotenusa
hipotenusa = [Link]( cateto1**2 + cateto2**2 ) # Aquí, la utilizamos.
# Si te preguntas cómo he llegado a aprender de esa función, está todo en la
# [Link]
# A menudo, suelo buscar la función y poner en Google "[Link] ejemplo Pyt
print("La longitud de la hipotenusa es:", hipotenusa)
In [ ]: #Ej4.
a = float(input('Dame el valor de a...'))
b = float(input('Dame el valor de B...'))
op = int(input('¿Qué operación deseas? - [1: Suma / 2: Multiplica / 3: Resta / 4
resultado = 0 #out
if(op == 1):
resultado = a + b
elif(op == 2):
resultado = a * b
elif(op == 3):
resultado = a - b
else: # Si la operación es la división...
if b != 0:
resultado = a / b
else:
resultado = 'Error'
print(resultado)
In [ ]: #Ej5.
# El ejercicio trae un pequeño defecto en el enunciado a posta. No contempla tod
# Al final del ejercicio coloco algunas reflexiones...
precio_compra = 0 #coloca un precio...
puntos = 0 #coloca unos puntos...
precio_final_de_compra = 0 #variable salida. Resultado.
if(puntos < 100):
precio_final_de_compra = precio_compra * 0.9 #Aplicamos el 10% de descuento.
elif(100 < puntos < 150): # Otra manera de colocar condiciones en Python...
precio_final_de_compra = precio_compra * 0.88
elif(puntos == 150):
precio_final_de_compra = precio_compra * 0.85
elif(puntos > 150):
precio_final_de_compra = precio_compra * 0.8
# En este caso, el caso de exactamente 100 puntos no ha sido contemplado.
# Si no hacemos nada, el sistema no aplicará descuentos y el cliente se nos quej
# Si hubieramos colocado else al final en vez de elif, el caso de puntos == 100
# De alguna manera, se dice que los Hackers saben programar porque buscan este t
# Coloca los input() en los datos de entrada y conviertelos. Después, actualiza
In [ ]: #Ej6.
base_factura = float(input('¿Cuánto es la factura a realizar?'))
factura = 0 #Out
tipo = input('¿Cuál es el tipo de factura? - [H: Hostelería / N: Normal]')
#Podemos usar el texto para preguntar..
if(tipo == 'H'):
factura = base_factura * 1.1
else:
factura = base_factura * 1.21
print('Total a pagar (€):', factura)
In [ ]: #Ej7.
password = '1234'
intento = input('introduce contraseña...')
if (password == intento):
print('Bienvenid@...')
else:
print('Ordenador bloqueado. Contraseña incorrecta.')
In [ ]: #Ej8.
# Paso 1: Si el año es divisible por 4, pasar al paso 2.
if ano % 4 == 0:
# Paso 2: Si el año es divisible por 100, pasar al paso 3.
if ano % 100 == 0:
# Paso 3: Si el año es divisible por 400, pasar al paso 4.
if ano % 400 == 0:
# Paso 4: El año es bisiesto.
print('Es bisiesto!')
else:
# Paso 5: El año no es bisiesto.
print('No es bisiesto.')
else:
# Paso 4: El año es bisiesto.
print('Es bisiesto!')
else:
# Paso 5: El año no es bisiesto.
print('No es bisiesto.')
In [ ]: #Ej9.
#Data in
tarifaAnual = float( input('Dime la tarifa anual...') )
edad = int( input('¿Cuántos años tienes?'))
trabaja = input('¿Trabajas? Escribir ::: si/no')
#Algoritmo
if(edad < 18 and trabaja == 'no'):
tarifaAnual *= .5
elif(edad >= 18 and trabaja == 'no'):
tarifaAnual *= .75
elif(edad < 18 and trabaja == 'si'):
tarifaAnual *= .95
#Resultado
print(tarifaAnual)
In [ ]: #Ej10.
# Solicitar al usuario si quiere una pizza vegetariana
tipo_pizza = input("¿Quieres una pizza vegetariana? (si/no): ")
# Inicializar variables para el tipo de pizza y el ingrediente seleccionado
pizza_vegetariana = False
ingrediente_seleccionado = ""
# Mostrar los ingredientes según el tipo de pizza
if tipo_pizza == "si":
pizza_vegetariana = True
print("Ingredientes vegetarianos disponibles:")
print("1. Pimiento")
print("2. Tofu")
else:
print("Ingredientes no vegetarianos disponibles:")
print("1. Peperoni")
print("2. Jamón")
print("3. Salmón")
# Solicitar al usuario que elija un ingrediente
opcion = int(input("Elige un ingrediente (1, 2 o 3): "))
# Asignar el ingrediente seleccionado basado en la opción y el tipo de pizza
if pizza_vegetariana:
if opcion == 1:
ingrediente_seleccionado = "Pimiento"
elif opcion == 2:
ingrediente_seleccionado = "Tofu"
else:
if opcion == 1:
ingrediente_seleccionado = "Peperoni"
elif opcion == 2:
ingrediente_seleccionado = "Jamón"
elif opcion == 3:
ingrediente_seleccionado = "Salmón"
# Mostrar el tipo de pizza y los ingredientes
if(pizza_vegetariana): # Si es true...
tipo = "vegetariana"
else:
"no vegetariana"
print("Has elegido una pizza",tipo, "con los siguientes ingredientes:")
print("- Mozzarella")
print("- Tomate")
print("- ",ingrediente_seleccionado)