A programar se aprende programando, así que si ya tienes las nociones básicas de Python, es hora de que empieces a realizar algunos ejercicios para practicar. Estos ejercicios te ayudarán a familiarizarte con conceptos básicos de programación en Python como variables, operadores, bucles y condicionales. Puedes probar estos ejercicios en un IDE como Visual Studio Code.
Todos los programas se pueden realizar de diferentes formas, puede ser que exista alguna forma más óptima de hacer el programa, intenta realizar el ejercicio a tu manera y luego piensa si se puede mejorar el código. Esto quieres decir que el programa sea más rápido o incluso el código sea más simple o más fácil de leer.
A continuación te dejo 10 ejercicios resueltos para aprender a programar en python. Intenta hacerlos sin mirar el resultado!
Ejercicios Python resueltos para principiantes
Ejercicio 1: Suma 2 números
Calcula la suma de dos números ingresados por el usuario.
num1 = float(input("Ingresa el primer número: "))
num2 = float(input("Ingresa el segundo número: "))
suma = num1 + num2
print("La suma es:", suma)
Ejercicio 2: Número mayor
Saca el número mayor de dos números ingresados por el usaurio.
num1 = float(input("Ingresa el primer número: "))
num2 = float(input("Ingresa el segundo número: "))
if num1 > num2:
print("El numero mayor es: ", num1)
elif num2 > num1:
print ("El numero mayor es: ", num2)
else:
print ("Son iguales")
Hay otra forma de hacer este ejercicio que sería una forma más óptima, que es usando la función max() que te devuelve el número mayor de una lista.
num1 = float(input("Ingresa el primer número: "))
num2 = float(input("Ingresa el segundo número: "))
numbers = [num1, num2]
print("El número mayor es: ",max(numbers))
Ejercicio 3: De Celsius a Fahrenheit
Convierte grados Celsius a grados Fahrenheit. El usuario debe ingresar la temperatura en Celsius.
celsius = float(input("Ingresa la temperatura en grados Celsius: "))
fahrenheit = (celsius * 9/5) + 32
print("La temperatura en grados Fahrenheit es:", fahrenheit)
Ahora haz lo contrario un programa para pasar de Fahrenheit a Celsius.
fahrenheit = int(input('Ingrese una temperatura en grados Fahrenheit: '))
celsius = (fahrenheit - 32) * 5/9
print("La temperatura en grados Celsius es:", celsius )
Ejercicio 4: Área de un triangulo
Calcula el área de un triángulo con base y altura ingresadas por el usuario.
base = float(input("Ingresa la base del triángulo: "))
altura = float(input("Ingresa la altura del triángulo: "))
area = 0.5 * base * altura
print("El área del triángulo es:", area)
Ejercicio 5: Par o impar
Crea un programa que determine si un número ingresado por el usuario es par o impar.
numero = int(input("Ingresa un número entero: "))
if numero % 2 == 0:
print(numero, "es un número par.")
else:
print(numero, "es un número impar.")
Ejercicio 6: Factorial
Escribe un programa que calcule el factorial de un número entero positivo ingresado por el usuario.
Pista: ¿Qué es el factorial de un número? Es el producto de todos los números positivos desde el 1 hasta el número en cuestión. Por ejemplo el factorial de 5 es: 1x2x3x4x5=120
n = int(input("Ingresa un número entero positivo: "))
factorial = 1
for i in range(1, n + 1):
factorial *= i
print("El factorial de", n, "es:", factorial)
Ejercicio 7: Adivina el número
Genera un número aleatorio entre 1 y 100. Luego, pide al usuario que adivine el número y da pistas si el número ingresado es mayor o menor que el número secreto. Este programa generará un número aleatorio entre 1 y 100 y le pedirá al usuario que adivine el número. Si el número ingresado por el usuario es mayor o menor que el número secreto, el programa proporcionará pistas para ayudar al usuario a adivinar. El programa seguirá ejecutándose hasta que el usuario adivine correctamente el número secreto. Luego, mostrará el número de intentos que le llevó al usuario adivinarlo.
import random
# Genera un número aleatorio entre 1 y 100
numero_secreto = random.randint(1, 100)
intentos = 0
adivinado = False
print("¡Adivina el número secreto entre 1 y 100!")
while not adivinado:
try:
# Pide al usuario que ingrese un número
guess = int(input("Ingresa un número: "))
intentos += 1
# Compara el número ingresado con el número secreto
if guess == numero_secreto:
adivinado = True
elif guess < numero_secreto:
print("El número es mayor. Intenta de nuevo.")
else:
print("El número es menor. Intenta de nuevo.")
except ValueError:
print("Por favor, ingresa un número válido.")
# Cuando el usuario adivina el número
print(f"¡Felicitaciones! Adivinaste el número secreto {numero_secreto} en {intentos} intentos.")
Ejercicio 8: Cómo obtener un número primo
Crea un programa que identifique si el número introducido por teclado es primo o no.
Pista: ¿Como saber si un número es primo? Los números primos son aquellos que solo son divisibles entre ellos mismos y el 1
def es_primo(numero):
if numero <= 1:
return False
if numero <= 3:
return True
if numero % 2 == 0 or numero % 3 == 0:
return False
i = 5
while i * i <= numero:
if numero % i == 0 or numero % (i + 2) == 0:
return False
i += 6
return True
try:
num = int(input("Ingresa un número entero positivo: "))
if es_primo(num):
print(f"{num} es un número primo.")
else:
print(f"{num} no es un número primo.")
except ValueError:
print("Por favor, ingresa un número entero válido.")
Ejericio 9: Piedra, papel o tijera
Crea un juego para jugar contra la computadora al juego de «Piedra, papel o tijera». Este programa permite al jugador elegir entre «piedra», «papel» o «tijera», genera una elección aleatoria para la máquina y determina el ganador. Luego, pregunta al jugador si quiere jugar de nuevo.
import random
def obtener_opcion_maquina():
opciones = ["piedra", "papel", "tijera"]
opcion = random.choice(opciones)
return opcion
def determinar_ganador(jugador, maquina):
if jugador == maquina:
return "Empate"
elif (
(jugador == "piedra" and maquina == "tijera") or
(jugador == "papel" and maquina == "piedra") or
(jugador == "tijera" and maquina == "papel")
):
return "Ganaste"
else:
return "La máquina ganó"
while True:
print("Juguemos Piedra, Papel o Tijera!")
jugador = input("Elige una opción (piedra, papel, tijera): ").lower()
if jugador not in ["piedra", "papel", "tijera"]:
print("¡Opción inválida! Elige nuevamente.")
continue
maquina = obtener_opcion_maquina()
print(f"La máquina eligió: {maquina}")
resultado = determinar_ganador(jugador, maquina)
print(f"Resultado: {resultado}")
jugar_nuevamente = input("¿Quieres jugar de nuevo? (s/n): ")
if jugar_nuevamente.lower() != "s":
break
Ejercicio 10: Juego del ahorcado
Este juego selecciona una palabra al azar de la lista de palabras y permite al jugador adivinar letras. El jugador tiene un máximo de 6 intentos para adivinar la palabra. Si adivina todas las letras correctamente, gana el juego. Si se queda sin intentos, pierde. Después de cada juego, el programa pregunta si el jugador quiere jugar de nuevo.
import random
# Lista de palabras para adivinar
palabras = ["python", "programacion", "desarrollo", "inteligencia", "artificial", "algoritmo"]
def seleccionar_palabra_al_azar():
return random.choice(palabras)
def jugar():
palabra = seleccionar_palabra_al_azar()
palabra_oculta = "_" * len(palabra)
intentos_maximos = 6
intentos = 0
letras_adivinadas = []
print("¡Bienvenido al juego de Ahorcado!")
print("Tienes que adivinar una palabra relacionada con la programación.")
print("Tienes 6 intentos para adivinar la palabra.")
while intentos < intentos_maximos:
print("\nPalabra oculta: " + " ".join(palabra_oculta))
letra = input("Ingresa una letra: ").lower()
if letra in letras_adivinadas:
print("Ya has intentado con esa letra antes.")
continue
letras_adivinadas.append(letra)
if letra in palabra:
print("¡Correcto! La letra está en la palabra.")
for i in range(len(palabra)):
if palabra[i] == letra:
palabra_oculta = palabra_oculta[:i] + letra + palabra_oculta[i+1:]
else:
print("¡Incorrecto! La letra no está en la palabra.")
intentos += 1
if palabra_oculta == palabra:
print("\n¡Felicidades! Has adivinado la palabra: " + palabra)
break
if palabra_oculta != palabra:
print("\n¡Oh no! Te has quedado sin intentos. La palabra era: " + palabra)
jugar_de_nuevo = input("¿Quieres jugar de nuevo? (s/n): ").lower()
if jugar_de_nuevo == "s":
jugar()
jugar()
Ejercicio 10 + 1 : Lista de números primos
Crea una lista de los números primos menores que un número ingresado por el usuario. Este programa define una función es_primo para verificar si un número es primo y otra función lista_de_primos que genera una lista de números primos menores que el límite ingresado por el usuario. Luego, pide al usuario que ingrese un número límite y muestra la lista de números primos menores que ese límite.
Pista: ¿Como saber si un número es primo? Los números primos son aquellos que solo son divisibles entre ellos mismos y el 1
def es_primo(numero):
if numero <= 1:
return False
if numero <= 3:
return True
if numero % 2 == 0 or numero % 3 == 0:
return False
i = 5
while i * i <= numero:
if numero % i == 0 or numero % (i + 2) == 0:
return False
i += 6
return True
def lista_de_primos(limite):
primos = []
for num in range(2, limite):
if es_primo(num):
primos.append(num)
return primos
try:
limite = int(input("Ingrese un número límite para encontrar números primos: "))
if limite <= 2:
print("No hay números primos menores que", limite)
else:
primos = lista_de_primos(limite)
print("Números primos menores que", limite, "son:", primos)
except ValueError:
print("Por favor, ingrese un número válido.")
Si has llegado hasta aquí no me queda otra que darte la enhorabuena, ahora bien, espero que hayas intentado hacer los ejercicios por tu cuenta antes de ver las soluciones, de lo contrario solamente te habrás hecho trampas a ti mismo.
Es la hora de comenzar tu aventura como programador. Prepárate para una montaña rusa de errores, interminables búsquedas en Google y momentos de triunfo que te harán sentir como un genio. Recuerda, los programadores somos como los magos: convertimos café en código. ¡Ánimo y que tus errores sean siempre ‘errores divertidos’!» 🚀😄
Deja tu comentario