Está en la página 1de 4

Estructuras de Control Condicionales

Estructuras de Control Condicionales (IF-ELSE)

Son estructuras que nos permiten ejecutar instrucciones dependiendo de si una condición se cumple o no.

Por ejemplo si el total de los Kms recorridos de un vehículo es menor a 25000 es un vehículo nuevo, caso contrario necesita
cambio de aceite.

In [1]: kms = input("Ingrese kms recorridos:")


condicion = int(kms) > 25000
if condicion:
print("Necesita un cambio de aceite")
else:
print("Es un vehículo nuevo, no necesita mantenimiento.")

Ingrese kms recorridos:26000


Necesita un cambio de aceite

Condiciones

Las condiciones son valores booleanos o expresiones que retornen un valor booleano.

Ejms:

In [10]: import random as rnd

num = rnd.randint(1,6)

cond1 = num % 2 == 0 #Condición es True si num es par

cadena = "devuelvan la tortuga al logo de espol"

cond2 = len(cadena)>20 # Condición es True si cadena tiene más de 20 caracteres


cond3 = cadena.isalpha() #Condición es True si cadena sólo tiene caracteres alf
anuméricos
cond4 = cadena.islower() and "espol" in cadena #El resultado de la operación es
booleano
print("Condición 1", cond1)
print("Condición 2", cond2)
print("Condición 3", cond3)
print("Condición 4", cond4)

Condición 1 True
Condición 2 True
Condición 3 False
Condición 4 True

Sintaxis if-else

1 of 4
Estructuras de Control Condicionales

In [6]: condicion = True


if condicion: #No olvidarse de los dos puntos al final de la condición!!!!
print("Todas las instrucciones dentro del if se ejecutan si la condición es
True")
print("Dentro del if")
else:
print("Se ejecuta si la condición es False")
print("También se ejecuta si es False")

print("Fuera de la estructura if-else, siempre se ejecutará")

Todas las instrucciones dentro del if se ejecutan si la condición es True


Dentro del if
Fuera de la estructura if-else, siempre se ejecutará

Las palabras if y else son palabras reservadas de python

Identación

Python es un lenguaje indentado, es decir que necesita espacios(cuatro) o tabs para establecer el nivel de jerarquía de los
comandos. En el if y el else, si se cumple su condición, todo lo que necesita ser ejecutado va un nivel mayor de jerarquía o
tab. Veamos el siguiente ejemplo:

In [7]: import math


print("¿Desea calcular el área de un círculo o un cuadrado?")
opcion = input("Opción: círculo ('O') o cuadrado('C')?")
if opcion == "O":
#Dentro de la estructura if, todo debe ir identado hacia la derecha
radio = float(input("Ingrese el radio del círculo"))
area = math.pi * radio**2
print("El área del círculo es %.2f"%(area))
else:
lado = float(input("Ingrese el lado del cuadrado"))
area = radio **2

¿Desea calcular el área de un círculo o un cuadrado?


Opción: círculo ('O') o cuadrado('C')?O
Ingrese el radio del círculo3
El área del círculo es 28.27

Los editores de texto como Pycharm por lo general automáticamente después del if crea una identación para escribir las
instrucciones dentro de la estructura. Pero en caso que no lo haga, puede usar la tecla TAB para crear la identación

¿Es siempre es necesario el else después del if?

No, depende del caso, de la condición. Python no exige que cada vez que usamos if se deba usar else. Simplemente
depende del problema y de la implementación. Por ejemplo suponga que le piden que escriba un programa que genera un
número aleatorio entre el 1 al 100 pero que su programa siempre debe imprimir un número impar. ¿Cómo lo haríamos?

2 of 4
Estructuras de Control Condicionales

In [9]: from random import randint

aleatorio= randint(1,100)
if aleatorio % 2 == 0: #Si aleatorio es par ingreso al if
aleatorio = aleatorio + 1 #Le sumo uno para hacer el número impar
print("El número impar aleatorio es: %d" % aleatorio)

El número impar aleatorio es: 97

Decisiones consecutivas if-elif-else

elif es una abreviación de else-if (Sino si)

In [15]: import random

num1 = random.randint(1,10)
num2 = random.randint(1,10)
print("num1:", num1)
print("num2:", num2)
if num1 > num2: #Si se cumple ejecuta el print a continuación
print("{} es mayor que {}".format(num1, num2))
elif num1 < num2: #Si la primera condición no se cumple, ejecuta esta condición
print("{} es menor que {}".format(num1, num2))
else:#Si ninguna de las condiciones anteriores se cumple, entra al else
print("Los dos números son iguales: {},{}".format(num1, num2))

num1: 8
num2: 3
8 es mayor que 3

Ejercicios

Escriba un programa que pida al usuario el año actual y un año cualquiera. Su programa
deberá identificar si debe imprimir un mensaje sobre cuántos años han pasado desde ese
año o cuántos años faltan para llegar a ese año.
Ejemplo:

Ingrese un año: 2030

Resultado: Faltan 11 años para llegar al 2030

Ingrese un año: 2000

Resultado: Han pasado 19 años desde el año 2000

Ingrese un año: 2019

Resultado: Estamos en el año 2019!

3 of 4
Estructuras de Control Condicionales

Escriba un programa que determine si un triángulo es equilátero, isoscéles o escaleno.


Solicite la longitud de los 3 lados del triángulo por teclado.

Escriba un programa que calcule la edad de un perro en años-perro.


Nota: Por los primeros dos años, un año de perro es igual a 10.5 años de una persona. Después de eso, cada año adicional
equivale a 4 años de una persona.

Ejemplo:

Ingrese la edad de su perro en años-humano: 15

La edad de su perro en años-perro es: 73

Pida por teclado un año y almacénelo en una variable entera. Luego muestre por pantalla
si el año es bisiesto o no.
Un año es bisiesto si cumple los siguientes criterios:

Es divisible entre 4.
Si termina en 00, es divisible entre 400 (2000 y 2400 sí son bisiestos. 2100, 2200 y 2300 no lo son).

4 of 4

También podría gustarte