Menu iconMenu icon
Python Become a Master

Chapter 2: Beginner Level Exercises

Ejercicios de Nivel Principiante

  1. Ejercicio 1: Calcular el Área de un Círculo
  2. Ejercicio 2: Contador de Frecuencia de Palabras
  3. Ejercicio 3: Convertidor de Temperatura Simple
  4. Ejercicio 4: Comprobador de Números Pares o Impares
  5. Ejercicio 5: Operaciones de Archivos Simples
  6. Ejercicio 6: Lista de Múltiplos
  7. Ejercicio 7: Comprobador de Palíndromos
  8. Ejercicio 8: Calculadora de Interés Simple
  9. Ejercicio 9: Generador de Secuencia de Fibonacci
  10. Ejercicio 10: Comprobador de Año Bisiesto
  11. Ejercicio 11: Comprobador de Números Primos
  12. Ejercicio 12: Contar Vocales en una Cadena
  13. Ejercicio 13: Calcular el Factorial de un Número
  14. Ejercicio 14: Suma de Dígitos en un Número
  15. Ejercicio 15: Codificador Cifrado César
  16. Ejercicio 16: Reversa una Cadena
  17. Ejercicio 17: Contar Ocurrencias de un Carácter
  18. Ejercicio 18: Imprimir el Valor ASCII de un Carácter
  19. Ejercicio 19: Calculadora Simple
  20. Ejercicio 20: Palabra Más Larga en una Oración
  21. Ejercicio 21: Calcular el Promedio de Números en una Lista
  22. Ejercicio 22: Elementos Comunes en Dos Listas
  23. Ejercicio 23: Encontrar los Números Más Pequeño y Más Grande en una Lista
  24. Ejercicio 24: Eliminar Duplicados de una Lista
  25. Ejercicio 25: Ordenar una Lista en Orden Ascendente y Descendente
  26. Ejercicio 26: Cuadrado y Cubo de Números en una Lista
  27. Ejercicio 27: Contar el Número de Palabras en una Oración
  28. Ejercicio 28: Intercambiar Dos Variables
  29. Ejercicio 29: Distancia Entre Dos Puntos
  30. Ejercicio 30: Convertir Temperatura de Celsius a Fahrenheit y Viceversa


Ejercicio 1: Calcular el Área de un Círculo

Conceptos:

  • Aritmética básica
  • Entrada/salida
  • Variables

Descripción: Escribe un programa en Python que tome el radio de un círculo como entrada del usuario y calcule su área.

Solución:

import math

radius = float(input("Enter the radius of the circle: "))
area = math.pi * (radius ** 2)

print(f"The area of the circle with radius {radius} is {area:.2f}")

Ejercicio 2: Contador de Frecuencia de Palabras

Conceptos:

  • Cadenas de texto
  • Diccionarios
  • Bucles

Descripción: Escribe un programa en Python que tome una cadena de texto como entrada y cuente la frecuencia de cada palabra en la cadena.

Solución:

input_string = input("Enter a sentence: ")
words = input_string.lower().split()
word_count = {}

for word in words:
    if word in word_count:
        word_count[word] += 1
    else:
        word_count[word] = 1

print("Word frequencies:", word_count)

Ejercicio 3: Conversor Simple de Temperatura

Conceptos:

  • Funciones
  • Declaraciones condicionales
  • Entrada de usuario

Descripción: Escribe un programa en Python que convierta temperaturas entre grados Celsius y Fahrenheit. El programa debe solicitar al usuario la unidad de temperatura y el valor a convertir.

Solución:

def celsius_to_fahrenheit(celsius):
    return (celsius * 9/5) + 32

def fahrenheit_to_celsius(fahrenheit):
    return (fahrenheit - 32) * 5/9

unit = input("Enter the temperature unit (C for Celsius, F for Fahrenheit): ")
value = float(input("Enter the temperature value to be converted: "))

if unit.upper() == "C":
    print(f"{value} Celsius is {celsius_to_fahrenheit(value):.2f} Fahrenheit.")
elif unit.upper() == "F":
    print(f"{value} Fahrenheit is {fahrenheit_to_celsius(value):.2f} Celsius.")
else:
    print("Invalid temperature unit.")

Ejercicio 4: Comprobador de Números Pares o Impares

Conceptos:

  • Aritmética modular
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que compruebe si un número dado es par o impar.

Solución:

number = int(input("Enter an integer: "))

if number % 2 == 0:
    print(f"{number} is even.")
else:
    print(f"{number} is odd.")

Ejercicio 5: Operaciones de Archivos Simples

Conceptos:

  • Entrada/salida de archivos
  • Manejo de excepciones
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que lea un archivo de texto, convierta su contenido a mayúsculas y escriba el resultado en un nuevo archivo. Si el archivo de entrada no existe, muestra un mensaje de error.

Solución:

input_file = input("Enter the name of the input file: ")
output_file = input("Enter the name of the output file: ")

try:
    with open(input_file, "r") as infile:
        content = infile.read()
    uppercase_content = content.upper()

    with open(output_file, "w") as outfile:
        outfile.write(uppercase_content)

    print("The content has been converted to uppercase and saved in the output file.")
except FileNotFoundError:
    print(f"The file '{input_file}' does not exist.")

Ejercicio 6: Lista de Múltiplos

Conceptos:

  • Bucles
  • Listas
  • Aritmética

Descripción: Escribe un programa en Python que tome un número como entrada y devuelva una lista con sus primeros 10 múltiplos.

Solución:

number = int(input("Enter a number: "))
multiples = [number * i for i in range(1, 11)]

print(f"The first 10 multiples of {number} are: {multiples}")

Ejercicio 7: Comprobador de Palíndromos

Conceptos:

  • Cadenas de texto
  • Declaraciones condicionales
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que compruebe si una palabra o frase dada es un palíndromo. Ignora espacios, puntuación y mayúsculas.

Solución:

import re

input_string = input("Enter a word or phrase: ")
processed_string = re.sub(r'\W+', '', input_string.lower())
reversed_string = processed_string[::-1]

if processed_string == reversed_string:
    print(f"'{input_string}' is a palindrome.")
else:
    print(f"'{input_string}' is not a palindrome.")

Ejercicio 8: Calculadora de Interés Simple

Conceptos:

  • Aritmética
  • Entrada/salida
  • Variables

Descripción: Escribe un programa en Python que calcule el interés simple para una cantidad principal, una tasa de interés y un número de años dados.

Solución:

principal = float(input("Enter the principal amount: "))
rate = float(input("Enter the rate of interest (percentage): "))
years = int(input("Enter the number of years: "))

interest = principal * rate * years / 100
total_amount = principal + interest

print(f"The simple interest is: {interest:.2f}")
print(f"The total amount after {years} years is: {total_amount:.2f}")

Ejercicio 9: Generador de Secuencia de Fibonacci

Conceptos:

  • Bucles
  • Listas
  • Funciones

Descripción: Escribe un programa en Python que genere los primeros n números de la secuencia de Fibonacci, donde n es proporcionado por el usuario.

Solución:

def generate_fibonacci(n):
    sequence = [0, 1]

    for i in range(2, n):
        sequence.append(sequence[-1] + sequence[-2])

    return sequence[:n]

n = int(input("Enter the number of Fibonacci numbers to generate: "))
fibonacci_sequence = generate_fibonacci(n)

print(f"The first {n} Fibonacci numbers are: {fibonacci_sequence}")

Ejercicio 10: Comprobador de Año Bisiesto

Conceptos:

  • Declaraciones condicionales
  • Aritmética modular

Descripción: Escribe un programa en Python que compruebe si un año dado es un año bisiesto.

Solución:

year = int(input("Enter a year: "))

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print(f"{year} is a leap year.")
else:
    print(f"{year} is not a leap year.")

Ejercicio 11: Comprobador de Números Primos

Conceptos:

  • Bucles
  • Declaraciones condicionales
  • Funciones

Descripción: Escribe un programa en Python que compruebe si un número dado es un número primo.

Solución:


def is_prime(number):
    if number <= 1:
        return False

    for i in range(2, number):
        if number % i == 0:
            return False
    return True

number = int(input("Enter a number: "))

if is_prime(number):
    print(f"{number} is a prime number.")
else:
    print(f"{number} is not a prime number.")

Ejercicio 12: Contar Vocales en una Cadena de Texto

Conceptos:

  • Cadenas de texto
  • Bucles
  • Diccionarios

Descripción: Escribe un programa en Python que cuente el número de vocales en una cadena de texto dada.

Solución:


input_string = input("Enter a string: ").lower()
vowels = "aeiou"
vowel_count = {}

for char in input_string:
    if char in vowels:
        if char in vowel_count:
            vowel_count[char] += 1
        else:
            vowel_count[char] = 1

print("Vowel count:", vowel_count)

Ejercicio 13: Calcular el Factorial de un Número

Conceptos:

  • Bucles
  • Declaraciones condicionales
  • Funciones

Descripción: Escribe un programa en Python que calcule el factorial de un número dado utilizando bucles.

Solución:


def factorial(number):
    if number == 0 or number == 1:
        return 1

    result = 1
    for i in range(2, number + 1):
        result *= i

    return result

number = int(input("Enter a number: "))
print(f"The factorial of {number} is {factorial(number)}")

Ejercicio 14: Suma de Dígitos en un Número

Conceptos:

  • Bucles
  • Aritmética
  • Cadenas de texto

Descripción: Escribe un programa en Python que calcule la suma de los dígitos de un número entero dado.

Solución:


number = int(input("Enter an integer: "))
sum_of_digits = sum(int(digit) for digit in str(number))

print(f"The sum of the digits of {number} is {sum_of_digits}")

Ejercicio 15: Codificador Cifrado César

Conceptos:

  • Cadenas de texto
  • Bucles
  • Aritmética modular

Descripción: Escribe un programa en Python que implemente un cifrado César simple. El programa debe tomar una cadena de texto y un valor de desplazamiento entero como entrada, y devolver la cadena codificada.

Solución:


def caesar_cipher(text, shift):
    encrypted = []

    for char in text:
        if char.isalpha():
            shift_amount = shift % 26
            new_ord = ord(char) + shift_amount

            if char.islower():
                if new_ord > ord("z"):
                    new_ord -= 26
            else:
                if new_ord > ord("Z"):
                    new_ord -= 26

            encrypted.append(chr(new_ord))
        else:
            encrypted.append(char)

    return "".join(encrypted)

text = input("Enter a string: ")
shift = int(input("Enter the shift value: "))

encoded_text = caesar_cipher(text, shift)
print(f"The encoded text is: {encoded_text}")

Ejercicio 16: Invertir una Cadena de Texto

Conceptos:

  • Cadenas de texto
  • Bucles
  • Slicing

Descripción: Escribe un programa en Python que invierta una cadena de texto dada.

Solución:


input_string = input("Enter a string: ")
reversed_string = input_string[::-1]

print(f"The reversed string is: {reversed_string}")

Ejercicio 17: Contar Ocurrencias de un Carácter

Conceptos:

  • Cadenas de texto
  • Bucles
  • Diccionarios

Descripción: Escribe un programa en Python que cuente las ocurrencias de un carácter específico en una cadena de texto dada.

Solución:


input_string = input("Enter a string: ")
target_char = input("Enter a character to count: ")

count = input_string.lower().count(target_char.lower())
print(f"The character '{target_char}' occurs {count} times in the string.")

Ejercicio 18: Imprimir el Valor ASCII de un Carácter

Conceptos:

  • Entrada/salida
  • Función ord()

Descripción: Escribe un programa en Python que tome un solo carácter como entrada y muestre su valor ASCII.

Solución:


char = input("Enter a single character: ")

if len(char) == 1:
    print(f"The ASCII value of '{char}' is {ord(char)}")
else:
    print("Invalid input. Please enter a single character.")

Ejercicio 19: Calculadora Simple

Conceptos:

  • Funciones
  • Entrada/salida
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que cree una calculadora simple que pueda realizar sumas, restas, multiplicaciones y divisiones. El programa debe pedir al usuario la operación, los dos números y luego mostrar el resultado.

Solución:


def add(x, y):
    return x + y

def subtract(x, y):
    return x - y

def multiply(x, y):
    return x * y

def divide(x, y):
    return x / y

operation = input("Enter the operation (add, subtract, multiply, divide): ")
num1 = float(input("Enter the first number: "))
num2 = float(input("Enter the second number: "))

if operation.lower() == "add":
    print(f"The result is: {add(num1, num2)}")
elif operation.lower() == "subtract":
    print(f"The result is: {subtract(num1, num2)}")
elif operation.lower() == "multiply":
    print(f"The result is: {multiply(num1, num2)}")
elif operation.lower() == "divide":
    if num2 == 0:
        print("Error: Division by zero is not allowed.")
    else:
        print(f"The result is: {divide(num1, num2)}")
else:
    print("Invalid operation.")

Ejercicio 20: Palabra más Larga en una Oración

Conceptos:

  • Cadenas de texto
  • Bucles
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que tome una oración como entrada y devuelva la palabra más larga de la oración.

Solución:


input_sentence = input("Enter a sentence: ")
words = input_sentence.split()

longest_word = ""
max_length = 0

for word in words:
    if len(word) > max_length:
        max_length = len(word)
        longest_word = word

print(f"The longest word in the sentence is: {longest_word}")

Ejercicio 21: Calcular el Promedio de Números en una Lista

Conceptos:

  • Listas
  • Bucles
  • Aritmética

Descripción: Escribe un programa en Python que calcule el promedio de una lista de números.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]
average = sum(numbers) / len(numbers)

print(f"The average of the numbers is: {average:.2f}")

Ejercicio 22: Elementos Comunes en Dos Listas

Conceptos:

  • Listas
  • Bucles
  • Conjuntos

Descripción: Escribe un programa en Python que tome dos listas y devuelva una lista de elementos comunes.

Solución:


list1 = input("Enter the first list of numbers separated by spaces: ").split()
list2 = input("Enter the second list of numbers separated by spaces: ").split()

common_elements = list(set(list1) & set(list2))
print(f"The common elements in the two lists are: {common_elements}")

Ejercicio 23: Encontrar los Números más Pequeño y más Grande en una Lista

Conceptos:

  • Listas
  • Bucles
  • Funciones min() y max()

Descripción: Escribe un programa en Python que tome una lista de números como entrada y devuelva los números más pequeño y más grande de la lista.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]

smallest_number = min(numbers)
largest_number = max(numbers)

print(f"The smallest number is: {smallest_number}")
print(f"The largest number is: {largest_number}")

Ejercicio 24: Eliminar Duplicados de una Lista

Conceptos:

  • Listas
  • Conjuntos
  • Comprensiones de listas

Descripción: Escribe un programa en Python que tome una lista y devuelva una nueva lista sin duplicados.

Solución:


input_list = input("Enter a list of elements separated by spaces: ").split()
unique_list = list(dict.fromkeys(input_list))

print(f"The list without duplicates is: {unique_list}")

Ejercicio 25: Ordenar una Lista en Orden Ascendente y Descendente

Conceptos:

  • Listas
  • Ordenamiento

Descripción: Escribe un programa en Python que tome una lista de números como entrada y devuelva la misma lista ordenada en orden ascendente y descendente.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]

ascending_sorted_list = sorted(numbers)
descending_sorted_list = sorted(numbers, reverse=True)

print(f"The list sorted in ascending order is: {ascending_sorted_list}")
print(f"The list sorted in descending order is: {descending_sorted_list}")

Ejercicio 26: Cuadrado y Cubo de Números en una Lista

Conceptos:

  • Listas
  • Bucles
  • Comprensiones de listas

Descripción: Escribe un programa en Python que tome una lista de números y devuelva una nueva lista que contenga el cuadrado y el cubo de cada número.

Solución:


numbers = [int(x) for x in input("Enter a list of numbers separated by spaces: ").split()]
squares_and_cubes = [(x**2, x**3) for x in numbers]

print(f"The squares and cubes of the numbers are: {squares_and_cubes}")

Ejercicio 27: Contar el Número de Palabras en una Oración

Conceptos:

  • Cadenas de texto
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que tome una oración como entrada y cuente el número de palabras en la oración.

Solución:


input_sentence = input("Enter a sentence: ")
words = input_sentence.split()
word_count = len(words)

print(f"The number of words in the sentence is: {word_count}")

Ejercicio 28: Intercambiar Dos Variables

Conceptos:

  • Variables
  • Tuplas

Descripción: Escribe un programa en Python que tome dos variables como entrada y intercambie sus valores.

Solución:


x = input("Enter the value of x: ")
y = input("Enter the value of y: ")

print(f"Before swapping: x = {x}, y = {y}")

x, y = y, x

print(f"After swapping: x = {x}, y = {y}")

Ejercicio 29: Distancia Entre Dos Puntos

Conceptos:

  • Funciones
  • Entrada/salida
  • Módulo math

Descripción: Escribe un programa en Python que calcule la distancia entre dos puntos en un espacio 2D. Las coordenadas de los puntos deben ser proporcionadas por el usuario.

Solución:


import math

def distance(x1, y1, x2, y2):
    return math.sqrt((x2 - x1)**2 + (y2 - y1)**2)

x1, y1 = map(float, input("Enter the coordinates of the first point (x1, y1): ").split())
x2, y2 = map(float, input("Enter the coordinates of the second point (x2, y2): ").split())

result = distance(x1, y1, x2, y2)
print(f"The distance between the two points is: {result:.2f}")

Ejercicio 30: Convertir Temperatura de Celsius a Fahrenheit y Viceversa

Conceptos:

  • Funciones
  • Entrada/salida
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que convierta temperaturas entre grados Celsius y grados Fahrenheit. El usuario debe proporcionar el valor de la temperatura y la unidad.

Solución:


def celsius_to_fahrenheit(celsius):
    return (celsius * 9/5) + 32

def fahrenheit_to_celsius(fahrenheit):
    return (fahrenheit - 32) * 5/9

temperature = float(input("Enter the temperature value: "))
unit = input("Enter the unit (C for Celsius, F for Fahrenheit): ")

if unit.upper() == "C":
    result = celsius_to_fahrenheit(temperature)
    print(f"{temperature} Celsius is equal to {result:.2f} Fahrenheit")
elif unit.upper() == "F":
    result = fahrenheit_to_celsius(temperature)
    print(f"{temperature} Fahrenheit is equal to {result:.2f} Celsius")
else:
    print("Invalid unit. Please enter 'C' for Celsius or 'F' for Fahrenheit.")

Ejercicios de Nivel Principiante

  1. Ejercicio 1: Calcular el Área de un Círculo
  2. Ejercicio 2: Contador de Frecuencia de Palabras
  3. Ejercicio 3: Convertidor de Temperatura Simple
  4. Ejercicio 4: Comprobador de Números Pares o Impares
  5. Ejercicio 5: Operaciones de Archivos Simples
  6. Ejercicio 6: Lista de Múltiplos
  7. Ejercicio 7: Comprobador de Palíndromos
  8. Ejercicio 8: Calculadora de Interés Simple
  9. Ejercicio 9: Generador de Secuencia de Fibonacci
  10. Ejercicio 10: Comprobador de Año Bisiesto
  11. Ejercicio 11: Comprobador de Números Primos
  12. Ejercicio 12: Contar Vocales en una Cadena
  13. Ejercicio 13: Calcular el Factorial de un Número
  14. Ejercicio 14: Suma de Dígitos en un Número
  15. Ejercicio 15: Codificador Cifrado César
  16. Ejercicio 16: Reversa una Cadena
  17. Ejercicio 17: Contar Ocurrencias de un Carácter
  18. Ejercicio 18: Imprimir el Valor ASCII de un Carácter
  19. Ejercicio 19: Calculadora Simple
  20. Ejercicio 20: Palabra Más Larga en una Oración
  21. Ejercicio 21: Calcular el Promedio de Números en una Lista
  22. Ejercicio 22: Elementos Comunes en Dos Listas
  23. Ejercicio 23: Encontrar los Números Más Pequeño y Más Grande en una Lista
  24. Ejercicio 24: Eliminar Duplicados de una Lista
  25. Ejercicio 25: Ordenar una Lista en Orden Ascendente y Descendente
  26. Ejercicio 26: Cuadrado y Cubo de Números en una Lista
  27. Ejercicio 27: Contar el Número de Palabras en una Oración
  28. Ejercicio 28: Intercambiar Dos Variables
  29. Ejercicio 29: Distancia Entre Dos Puntos
  30. Ejercicio 30: Convertir Temperatura de Celsius a Fahrenheit y Viceversa


Ejercicio 1: Calcular el Área de un Círculo

Conceptos:

  • Aritmética básica
  • Entrada/salida
  • Variables

Descripción: Escribe un programa en Python que tome el radio de un círculo como entrada del usuario y calcule su área.

Solución:

import math

radius = float(input("Enter the radius of the circle: "))
area = math.pi * (radius ** 2)

print(f"The area of the circle with radius {radius} is {area:.2f}")

Ejercicio 2: Contador de Frecuencia de Palabras

Conceptos:

  • Cadenas de texto
  • Diccionarios
  • Bucles

Descripción: Escribe un programa en Python que tome una cadena de texto como entrada y cuente la frecuencia de cada palabra en la cadena.

Solución:

input_string = input("Enter a sentence: ")
words = input_string.lower().split()
word_count = {}

for word in words:
    if word in word_count:
        word_count[word] += 1
    else:
        word_count[word] = 1

print("Word frequencies:", word_count)

Ejercicio 3: Conversor Simple de Temperatura

Conceptos:

  • Funciones
  • Declaraciones condicionales
  • Entrada de usuario

Descripción: Escribe un programa en Python que convierta temperaturas entre grados Celsius y Fahrenheit. El programa debe solicitar al usuario la unidad de temperatura y el valor a convertir.

Solución:

def celsius_to_fahrenheit(celsius):
    return (celsius * 9/5) + 32

def fahrenheit_to_celsius(fahrenheit):
    return (fahrenheit - 32) * 5/9

unit = input("Enter the temperature unit (C for Celsius, F for Fahrenheit): ")
value = float(input("Enter the temperature value to be converted: "))

if unit.upper() == "C":
    print(f"{value} Celsius is {celsius_to_fahrenheit(value):.2f} Fahrenheit.")
elif unit.upper() == "F":
    print(f"{value} Fahrenheit is {fahrenheit_to_celsius(value):.2f} Celsius.")
else:
    print("Invalid temperature unit.")

Ejercicio 4: Comprobador de Números Pares o Impares

Conceptos:

  • Aritmética modular
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que compruebe si un número dado es par o impar.

Solución:

number = int(input("Enter an integer: "))

if number % 2 == 0:
    print(f"{number} is even.")
else:
    print(f"{number} is odd.")

Ejercicio 5: Operaciones de Archivos Simples

Conceptos:

  • Entrada/salida de archivos
  • Manejo de excepciones
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que lea un archivo de texto, convierta su contenido a mayúsculas y escriba el resultado en un nuevo archivo. Si el archivo de entrada no existe, muestra un mensaje de error.

Solución:

input_file = input("Enter the name of the input file: ")
output_file = input("Enter the name of the output file: ")

try:
    with open(input_file, "r") as infile:
        content = infile.read()
    uppercase_content = content.upper()

    with open(output_file, "w") as outfile:
        outfile.write(uppercase_content)

    print("The content has been converted to uppercase and saved in the output file.")
except FileNotFoundError:
    print(f"The file '{input_file}' does not exist.")

Ejercicio 6: Lista de Múltiplos

Conceptos:

  • Bucles
  • Listas
  • Aritmética

Descripción: Escribe un programa en Python que tome un número como entrada y devuelva una lista con sus primeros 10 múltiplos.

Solución:

number = int(input("Enter a number: "))
multiples = [number * i for i in range(1, 11)]

print(f"The first 10 multiples of {number} are: {multiples}")

Ejercicio 7: Comprobador de Palíndromos

Conceptos:

  • Cadenas de texto
  • Declaraciones condicionales
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que compruebe si una palabra o frase dada es un palíndromo. Ignora espacios, puntuación y mayúsculas.

Solución:

import re

input_string = input("Enter a word or phrase: ")
processed_string = re.sub(r'\W+', '', input_string.lower())
reversed_string = processed_string[::-1]

if processed_string == reversed_string:
    print(f"'{input_string}' is a palindrome.")
else:
    print(f"'{input_string}' is not a palindrome.")

Ejercicio 8: Calculadora de Interés Simple

Conceptos:

  • Aritmética
  • Entrada/salida
  • Variables

Descripción: Escribe un programa en Python que calcule el interés simple para una cantidad principal, una tasa de interés y un número de años dados.

Solución:

principal = float(input("Enter the principal amount: "))
rate = float(input("Enter the rate of interest (percentage): "))
years = int(input("Enter the number of years: "))

interest = principal * rate * years / 100
total_amount = principal + interest

print(f"The simple interest is: {interest:.2f}")
print(f"The total amount after {years} years is: {total_amount:.2f}")

Ejercicio 9: Generador de Secuencia de Fibonacci

Conceptos:

  • Bucles
  • Listas
  • Funciones

Descripción: Escribe un programa en Python que genere los primeros n números de la secuencia de Fibonacci, donde n es proporcionado por el usuario.

Solución:

def generate_fibonacci(n):
    sequence = [0, 1]

    for i in range(2, n):
        sequence.append(sequence[-1] + sequence[-2])

    return sequence[:n]

n = int(input("Enter the number of Fibonacci numbers to generate: "))
fibonacci_sequence = generate_fibonacci(n)

print(f"The first {n} Fibonacci numbers are: {fibonacci_sequence}")

Ejercicio 10: Comprobador de Año Bisiesto

Conceptos:

  • Declaraciones condicionales
  • Aritmética modular

Descripción: Escribe un programa en Python que compruebe si un año dado es un año bisiesto.

Solución:

year = int(input("Enter a year: "))

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print(f"{year} is a leap year.")
else:
    print(f"{year} is not a leap year.")

Ejercicio 11: Comprobador de Números Primos

Conceptos:

  • Bucles
  • Declaraciones condicionales
  • Funciones

Descripción: Escribe un programa en Python que compruebe si un número dado es un número primo.

Solución:


def is_prime(number):
    if number <= 1:
        return False

    for i in range(2, number):
        if number % i == 0:
            return False
    return True

number = int(input("Enter a number: "))

if is_prime(number):
    print(f"{number} is a prime number.")
else:
    print(f"{number} is not a prime number.")

Ejercicio 12: Contar Vocales en una Cadena de Texto

Conceptos:

  • Cadenas de texto
  • Bucles
  • Diccionarios

Descripción: Escribe un programa en Python que cuente el número de vocales en una cadena de texto dada.

Solución:


input_string = input("Enter a string: ").lower()
vowels = "aeiou"
vowel_count = {}

for char in input_string:
    if char in vowels:
        if char in vowel_count:
            vowel_count[char] += 1
        else:
            vowel_count[char] = 1

print("Vowel count:", vowel_count)

Ejercicio 13: Calcular el Factorial de un Número

Conceptos:

  • Bucles
  • Declaraciones condicionales
  • Funciones

Descripción: Escribe un programa en Python que calcule el factorial de un número dado utilizando bucles.

Solución:


def factorial(number):
    if number == 0 or number == 1:
        return 1

    result = 1
    for i in range(2, number + 1):
        result *= i

    return result

number = int(input("Enter a number: "))
print(f"The factorial of {number} is {factorial(number)}")

Ejercicio 14: Suma de Dígitos en un Número

Conceptos:

  • Bucles
  • Aritmética
  • Cadenas de texto

Descripción: Escribe un programa en Python que calcule la suma de los dígitos de un número entero dado.

Solución:


number = int(input("Enter an integer: "))
sum_of_digits = sum(int(digit) for digit in str(number))

print(f"The sum of the digits of {number} is {sum_of_digits}")

Ejercicio 15: Codificador Cifrado César

Conceptos:

  • Cadenas de texto
  • Bucles
  • Aritmética modular

Descripción: Escribe un programa en Python que implemente un cifrado César simple. El programa debe tomar una cadena de texto y un valor de desplazamiento entero como entrada, y devolver la cadena codificada.

Solución:


def caesar_cipher(text, shift):
    encrypted = []

    for char in text:
        if char.isalpha():
            shift_amount = shift % 26
            new_ord = ord(char) + shift_amount

            if char.islower():
                if new_ord > ord("z"):
                    new_ord -= 26
            else:
                if new_ord > ord("Z"):
                    new_ord -= 26

            encrypted.append(chr(new_ord))
        else:
            encrypted.append(char)

    return "".join(encrypted)

text = input("Enter a string: ")
shift = int(input("Enter the shift value: "))

encoded_text = caesar_cipher(text, shift)
print(f"The encoded text is: {encoded_text}")

Ejercicio 16: Invertir una Cadena de Texto

Conceptos:

  • Cadenas de texto
  • Bucles
  • Slicing

Descripción: Escribe un programa en Python que invierta una cadena de texto dada.

Solución:


input_string = input("Enter a string: ")
reversed_string = input_string[::-1]

print(f"The reversed string is: {reversed_string}")

Ejercicio 17: Contar Ocurrencias de un Carácter

Conceptos:

  • Cadenas de texto
  • Bucles
  • Diccionarios

Descripción: Escribe un programa en Python que cuente las ocurrencias de un carácter específico en una cadena de texto dada.

Solución:


input_string = input("Enter a string: ")
target_char = input("Enter a character to count: ")

count = input_string.lower().count(target_char.lower())
print(f"The character '{target_char}' occurs {count} times in the string.")

Ejercicio 18: Imprimir el Valor ASCII de un Carácter

Conceptos:

  • Entrada/salida
  • Función ord()

Descripción: Escribe un programa en Python que tome un solo carácter como entrada y muestre su valor ASCII.

Solución:


char = input("Enter a single character: ")

if len(char) == 1:
    print(f"The ASCII value of '{char}' is {ord(char)}")
else:
    print("Invalid input. Please enter a single character.")

Ejercicio 19: Calculadora Simple

Conceptos:

  • Funciones
  • Entrada/salida
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que cree una calculadora simple que pueda realizar sumas, restas, multiplicaciones y divisiones. El programa debe pedir al usuario la operación, los dos números y luego mostrar el resultado.

Solución:


def add(x, y):
    return x + y

def subtract(x, y):
    return x - y

def multiply(x, y):
    return x * y

def divide(x, y):
    return x / y

operation = input("Enter the operation (add, subtract, multiply, divide): ")
num1 = float(input("Enter the first number: "))
num2 = float(input("Enter the second number: "))

if operation.lower() == "add":
    print(f"The result is: {add(num1, num2)}")
elif operation.lower() == "subtract":
    print(f"The result is: {subtract(num1, num2)}")
elif operation.lower() == "multiply":
    print(f"The result is: {multiply(num1, num2)}")
elif operation.lower() == "divide":
    if num2 == 0:
        print("Error: Division by zero is not allowed.")
    else:
        print(f"The result is: {divide(num1, num2)}")
else:
    print("Invalid operation.")

Ejercicio 20: Palabra más Larga en una Oración

Conceptos:

  • Cadenas de texto
  • Bucles
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que tome una oración como entrada y devuelva la palabra más larga de la oración.

Solución:


input_sentence = input("Enter a sentence: ")
words = input_sentence.split()

longest_word = ""
max_length = 0

for word in words:
    if len(word) > max_length:
        max_length = len(word)
        longest_word = word

print(f"The longest word in the sentence is: {longest_word}")

Ejercicio 21: Calcular el Promedio de Números en una Lista

Conceptos:

  • Listas
  • Bucles
  • Aritmética

Descripción: Escribe un programa en Python que calcule el promedio de una lista de números.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]
average = sum(numbers) / len(numbers)

print(f"The average of the numbers is: {average:.2f}")

Ejercicio 22: Elementos Comunes en Dos Listas

Conceptos:

  • Listas
  • Bucles
  • Conjuntos

Descripción: Escribe un programa en Python que tome dos listas y devuelva una lista de elementos comunes.

Solución:


list1 = input("Enter the first list of numbers separated by spaces: ").split()
list2 = input("Enter the second list of numbers separated by spaces: ").split()

common_elements = list(set(list1) & set(list2))
print(f"The common elements in the two lists are: {common_elements}")

Ejercicio 23: Encontrar los Números más Pequeño y más Grande en una Lista

Conceptos:

  • Listas
  • Bucles
  • Funciones min() y max()

Descripción: Escribe un programa en Python que tome una lista de números como entrada y devuelva los números más pequeño y más grande de la lista.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]

smallest_number = min(numbers)
largest_number = max(numbers)

print(f"The smallest number is: {smallest_number}")
print(f"The largest number is: {largest_number}")

Ejercicio 24: Eliminar Duplicados de una Lista

Conceptos:

  • Listas
  • Conjuntos
  • Comprensiones de listas

Descripción: Escribe un programa en Python que tome una lista y devuelva una nueva lista sin duplicados.

Solución:


input_list = input("Enter a list of elements separated by spaces: ").split()
unique_list = list(dict.fromkeys(input_list))

print(f"The list without duplicates is: {unique_list}")

Ejercicio 25: Ordenar una Lista en Orden Ascendente y Descendente

Conceptos:

  • Listas
  • Ordenamiento

Descripción: Escribe un programa en Python que tome una lista de números como entrada y devuelva la misma lista ordenada en orden ascendente y descendente.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]

ascending_sorted_list = sorted(numbers)
descending_sorted_list = sorted(numbers, reverse=True)

print(f"The list sorted in ascending order is: {ascending_sorted_list}")
print(f"The list sorted in descending order is: {descending_sorted_list}")

Ejercicio 26: Cuadrado y Cubo de Números en una Lista

Conceptos:

  • Listas
  • Bucles
  • Comprensiones de listas

Descripción: Escribe un programa en Python que tome una lista de números y devuelva una nueva lista que contenga el cuadrado y el cubo de cada número.

Solución:


numbers = [int(x) for x in input("Enter a list of numbers separated by spaces: ").split()]
squares_and_cubes = [(x**2, x**3) for x in numbers]

print(f"The squares and cubes of the numbers are: {squares_and_cubes}")

Ejercicio 27: Contar el Número de Palabras en una Oración

Conceptos:

  • Cadenas de texto
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que tome una oración como entrada y cuente el número de palabras en la oración.

Solución:


input_sentence = input("Enter a sentence: ")
words = input_sentence.split()
word_count = len(words)

print(f"The number of words in the sentence is: {word_count}")

Ejercicio 28: Intercambiar Dos Variables

Conceptos:

  • Variables
  • Tuplas

Descripción: Escribe un programa en Python que tome dos variables como entrada y intercambie sus valores.

Solución:


x = input("Enter the value of x: ")
y = input("Enter the value of y: ")

print(f"Before swapping: x = {x}, y = {y}")

x, y = y, x

print(f"After swapping: x = {x}, y = {y}")

Ejercicio 29: Distancia Entre Dos Puntos

Conceptos:

  • Funciones
  • Entrada/salida
  • Módulo math

Descripción: Escribe un programa en Python que calcule la distancia entre dos puntos en un espacio 2D. Las coordenadas de los puntos deben ser proporcionadas por el usuario.

Solución:


import math

def distance(x1, y1, x2, y2):
    return math.sqrt((x2 - x1)**2 + (y2 - y1)**2)

x1, y1 = map(float, input("Enter the coordinates of the first point (x1, y1): ").split())
x2, y2 = map(float, input("Enter the coordinates of the second point (x2, y2): ").split())

result = distance(x1, y1, x2, y2)
print(f"The distance between the two points is: {result:.2f}")

Ejercicio 30: Convertir Temperatura de Celsius a Fahrenheit y Viceversa

Conceptos:

  • Funciones
  • Entrada/salida
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que convierta temperaturas entre grados Celsius y grados Fahrenheit. El usuario debe proporcionar el valor de la temperatura y la unidad.

Solución:


def celsius_to_fahrenheit(celsius):
    return (celsius * 9/5) + 32

def fahrenheit_to_celsius(fahrenheit):
    return (fahrenheit - 32) * 5/9

temperature = float(input("Enter the temperature value: "))
unit = input("Enter the unit (C for Celsius, F for Fahrenheit): ")

if unit.upper() == "C":
    result = celsius_to_fahrenheit(temperature)
    print(f"{temperature} Celsius is equal to {result:.2f} Fahrenheit")
elif unit.upper() == "F":
    result = fahrenheit_to_celsius(temperature)
    print(f"{temperature} Fahrenheit is equal to {result:.2f} Celsius")
else:
    print("Invalid unit. Please enter 'C' for Celsius or 'F' for Fahrenheit.")

Ejercicios de Nivel Principiante

  1. Ejercicio 1: Calcular el Área de un Círculo
  2. Ejercicio 2: Contador de Frecuencia de Palabras
  3. Ejercicio 3: Convertidor de Temperatura Simple
  4. Ejercicio 4: Comprobador de Números Pares o Impares
  5. Ejercicio 5: Operaciones de Archivos Simples
  6. Ejercicio 6: Lista de Múltiplos
  7. Ejercicio 7: Comprobador de Palíndromos
  8. Ejercicio 8: Calculadora de Interés Simple
  9. Ejercicio 9: Generador de Secuencia de Fibonacci
  10. Ejercicio 10: Comprobador de Año Bisiesto
  11. Ejercicio 11: Comprobador de Números Primos
  12. Ejercicio 12: Contar Vocales en una Cadena
  13. Ejercicio 13: Calcular el Factorial de un Número
  14. Ejercicio 14: Suma de Dígitos en un Número
  15. Ejercicio 15: Codificador Cifrado César
  16. Ejercicio 16: Reversa una Cadena
  17. Ejercicio 17: Contar Ocurrencias de un Carácter
  18. Ejercicio 18: Imprimir el Valor ASCII de un Carácter
  19. Ejercicio 19: Calculadora Simple
  20. Ejercicio 20: Palabra Más Larga en una Oración
  21. Ejercicio 21: Calcular el Promedio de Números en una Lista
  22. Ejercicio 22: Elementos Comunes en Dos Listas
  23. Ejercicio 23: Encontrar los Números Más Pequeño y Más Grande en una Lista
  24. Ejercicio 24: Eliminar Duplicados de una Lista
  25. Ejercicio 25: Ordenar una Lista en Orden Ascendente y Descendente
  26. Ejercicio 26: Cuadrado y Cubo de Números en una Lista
  27. Ejercicio 27: Contar el Número de Palabras en una Oración
  28. Ejercicio 28: Intercambiar Dos Variables
  29. Ejercicio 29: Distancia Entre Dos Puntos
  30. Ejercicio 30: Convertir Temperatura de Celsius a Fahrenheit y Viceversa


Ejercicio 1: Calcular el Área de un Círculo

Conceptos:

  • Aritmética básica
  • Entrada/salida
  • Variables

Descripción: Escribe un programa en Python que tome el radio de un círculo como entrada del usuario y calcule su área.

Solución:

import math

radius = float(input("Enter the radius of the circle: "))
area = math.pi * (radius ** 2)

print(f"The area of the circle with radius {radius} is {area:.2f}")

Ejercicio 2: Contador de Frecuencia de Palabras

Conceptos:

  • Cadenas de texto
  • Diccionarios
  • Bucles

Descripción: Escribe un programa en Python que tome una cadena de texto como entrada y cuente la frecuencia de cada palabra en la cadena.

Solución:

input_string = input("Enter a sentence: ")
words = input_string.lower().split()
word_count = {}

for word in words:
    if word in word_count:
        word_count[word] += 1
    else:
        word_count[word] = 1

print("Word frequencies:", word_count)

Ejercicio 3: Conversor Simple de Temperatura

Conceptos:

  • Funciones
  • Declaraciones condicionales
  • Entrada de usuario

Descripción: Escribe un programa en Python que convierta temperaturas entre grados Celsius y Fahrenheit. El programa debe solicitar al usuario la unidad de temperatura y el valor a convertir.

Solución:

def celsius_to_fahrenheit(celsius):
    return (celsius * 9/5) + 32

def fahrenheit_to_celsius(fahrenheit):
    return (fahrenheit - 32) * 5/9

unit = input("Enter the temperature unit (C for Celsius, F for Fahrenheit): ")
value = float(input("Enter the temperature value to be converted: "))

if unit.upper() == "C":
    print(f"{value} Celsius is {celsius_to_fahrenheit(value):.2f} Fahrenheit.")
elif unit.upper() == "F":
    print(f"{value} Fahrenheit is {fahrenheit_to_celsius(value):.2f} Celsius.")
else:
    print("Invalid temperature unit.")

Ejercicio 4: Comprobador de Números Pares o Impares

Conceptos:

  • Aritmética modular
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que compruebe si un número dado es par o impar.

Solución:

number = int(input("Enter an integer: "))

if number % 2 == 0:
    print(f"{number} is even.")
else:
    print(f"{number} is odd.")

Ejercicio 5: Operaciones de Archivos Simples

Conceptos:

  • Entrada/salida de archivos
  • Manejo de excepciones
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que lea un archivo de texto, convierta su contenido a mayúsculas y escriba el resultado en un nuevo archivo. Si el archivo de entrada no existe, muestra un mensaje de error.

Solución:

input_file = input("Enter the name of the input file: ")
output_file = input("Enter the name of the output file: ")

try:
    with open(input_file, "r") as infile:
        content = infile.read()
    uppercase_content = content.upper()

    with open(output_file, "w") as outfile:
        outfile.write(uppercase_content)

    print("The content has been converted to uppercase and saved in the output file.")
except FileNotFoundError:
    print(f"The file '{input_file}' does not exist.")

Ejercicio 6: Lista de Múltiplos

Conceptos:

  • Bucles
  • Listas
  • Aritmética

Descripción: Escribe un programa en Python que tome un número como entrada y devuelva una lista con sus primeros 10 múltiplos.

Solución:

number = int(input("Enter a number: "))
multiples = [number * i for i in range(1, 11)]

print(f"The first 10 multiples of {number} are: {multiples}")

Ejercicio 7: Comprobador de Palíndromos

Conceptos:

  • Cadenas de texto
  • Declaraciones condicionales
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que compruebe si una palabra o frase dada es un palíndromo. Ignora espacios, puntuación y mayúsculas.

Solución:

import re

input_string = input("Enter a word or phrase: ")
processed_string = re.sub(r'\W+', '', input_string.lower())
reversed_string = processed_string[::-1]

if processed_string == reversed_string:
    print(f"'{input_string}' is a palindrome.")
else:
    print(f"'{input_string}' is not a palindrome.")

Ejercicio 8: Calculadora de Interés Simple

Conceptos:

  • Aritmética
  • Entrada/salida
  • Variables

Descripción: Escribe un programa en Python que calcule el interés simple para una cantidad principal, una tasa de interés y un número de años dados.

Solución:

principal = float(input("Enter the principal amount: "))
rate = float(input("Enter the rate of interest (percentage): "))
years = int(input("Enter the number of years: "))

interest = principal * rate * years / 100
total_amount = principal + interest

print(f"The simple interest is: {interest:.2f}")
print(f"The total amount after {years} years is: {total_amount:.2f}")

Ejercicio 9: Generador de Secuencia de Fibonacci

Conceptos:

  • Bucles
  • Listas
  • Funciones

Descripción: Escribe un programa en Python que genere los primeros n números de la secuencia de Fibonacci, donde n es proporcionado por el usuario.

Solución:

def generate_fibonacci(n):
    sequence = [0, 1]

    for i in range(2, n):
        sequence.append(sequence[-1] + sequence[-2])

    return sequence[:n]

n = int(input("Enter the number of Fibonacci numbers to generate: "))
fibonacci_sequence = generate_fibonacci(n)

print(f"The first {n} Fibonacci numbers are: {fibonacci_sequence}")

Ejercicio 10: Comprobador de Año Bisiesto

Conceptos:

  • Declaraciones condicionales
  • Aritmética modular

Descripción: Escribe un programa en Python que compruebe si un año dado es un año bisiesto.

Solución:

year = int(input("Enter a year: "))

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print(f"{year} is a leap year.")
else:
    print(f"{year} is not a leap year.")

Ejercicio 11: Comprobador de Números Primos

Conceptos:

  • Bucles
  • Declaraciones condicionales
  • Funciones

Descripción: Escribe un programa en Python que compruebe si un número dado es un número primo.

Solución:


def is_prime(number):
    if number <= 1:
        return False

    for i in range(2, number):
        if number % i == 0:
            return False
    return True

number = int(input("Enter a number: "))

if is_prime(number):
    print(f"{number} is a prime number.")
else:
    print(f"{number} is not a prime number.")

Ejercicio 12: Contar Vocales en una Cadena de Texto

Conceptos:

  • Cadenas de texto
  • Bucles
  • Diccionarios

Descripción: Escribe un programa en Python que cuente el número de vocales en una cadena de texto dada.

Solución:


input_string = input("Enter a string: ").lower()
vowels = "aeiou"
vowel_count = {}

for char in input_string:
    if char in vowels:
        if char in vowel_count:
            vowel_count[char] += 1
        else:
            vowel_count[char] = 1

print("Vowel count:", vowel_count)

Ejercicio 13: Calcular el Factorial de un Número

Conceptos:

  • Bucles
  • Declaraciones condicionales
  • Funciones

Descripción: Escribe un programa en Python que calcule el factorial de un número dado utilizando bucles.

Solución:


def factorial(number):
    if number == 0 or number == 1:
        return 1

    result = 1
    for i in range(2, number + 1):
        result *= i

    return result

number = int(input("Enter a number: "))
print(f"The factorial of {number} is {factorial(number)}")

Ejercicio 14: Suma de Dígitos en un Número

Conceptos:

  • Bucles
  • Aritmética
  • Cadenas de texto

Descripción: Escribe un programa en Python que calcule la suma de los dígitos de un número entero dado.

Solución:


number = int(input("Enter an integer: "))
sum_of_digits = sum(int(digit) for digit in str(number))

print(f"The sum of the digits of {number} is {sum_of_digits}")

Ejercicio 15: Codificador Cifrado César

Conceptos:

  • Cadenas de texto
  • Bucles
  • Aritmética modular

Descripción: Escribe un programa en Python que implemente un cifrado César simple. El programa debe tomar una cadena de texto y un valor de desplazamiento entero como entrada, y devolver la cadena codificada.

Solución:


def caesar_cipher(text, shift):
    encrypted = []

    for char in text:
        if char.isalpha():
            shift_amount = shift % 26
            new_ord = ord(char) + shift_amount

            if char.islower():
                if new_ord > ord("z"):
                    new_ord -= 26
            else:
                if new_ord > ord("Z"):
                    new_ord -= 26

            encrypted.append(chr(new_ord))
        else:
            encrypted.append(char)

    return "".join(encrypted)

text = input("Enter a string: ")
shift = int(input("Enter the shift value: "))

encoded_text = caesar_cipher(text, shift)
print(f"The encoded text is: {encoded_text}")

Ejercicio 16: Invertir una Cadena de Texto

Conceptos:

  • Cadenas de texto
  • Bucles
  • Slicing

Descripción: Escribe un programa en Python que invierta una cadena de texto dada.

Solución:


input_string = input("Enter a string: ")
reversed_string = input_string[::-1]

print(f"The reversed string is: {reversed_string}")

Ejercicio 17: Contar Ocurrencias de un Carácter

Conceptos:

  • Cadenas de texto
  • Bucles
  • Diccionarios

Descripción: Escribe un programa en Python que cuente las ocurrencias de un carácter específico en una cadena de texto dada.

Solución:


input_string = input("Enter a string: ")
target_char = input("Enter a character to count: ")

count = input_string.lower().count(target_char.lower())
print(f"The character '{target_char}' occurs {count} times in the string.")

Ejercicio 18: Imprimir el Valor ASCII de un Carácter

Conceptos:

  • Entrada/salida
  • Función ord()

Descripción: Escribe un programa en Python que tome un solo carácter como entrada y muestre su valor ASCII.

Solución:


char = input("Enter a single character: ")

if len(char) == 1:
    print(f"The ASCII value of '{char}' is {ord(char)}")
else:
    print("Invalid input. Please enter a single character.")

Ejercicio 19: Calculadora Simple

Conceptos:

  • Funciones
  • Entrada/salida
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que cree una calculadora simple que pueda realizar sumas, restas, multiplicaciones y divisiones. El programa debe pedir al usuario la operación, los dos números y luego mostrar el resultado.

Solución:


def add(x, y):
    return x + y

def subtract(x, y):
    return x - y

def multiply(x, y):
    return x * y

def divide(x, y):
    return x / y

operation = input("Enter the operation (add, subtract, multiply, divide): ")
num1 = float(input("Enter the first number: "))
num2 = float(input("Enter the second number: "))

if operation.lower() == "add":
    print(f"The result is: {add(num1, num2)}")
elif operation.lower() == "subtract":
    print(f"The result is: {subtract(num1, num2)}")
elif operation.lower() == "multiply":
    print(f"The result is: {multiply(num1, num2)}")
elif operation.lower() == "divide":
    if num2 == 0:
        print("Error: Division by zero is not allowed.")
    else:
        print(f"The result is: {divide(num1, num2)}")
else:
    print("Invalid operation.")

Ejercicio 20: Palabra más Larga en una Oración

Conceptos:

  • Cadenas de texto
  • Bucles
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que tome una oración como entrada y devuelva la palabra más larga de la oración.

Solución:


input_sentence = input("Enter a sentence: ")
words = input_sentence.split()

longest_word = ""
max_length = 0

for word in words:
    if len(word) > max_length:
        max_length = len(word)
        longest_word = word

print(f"The longest word in the sentence is: {longest_word}")

Ejercicio 21: Calcular el Promedio de Números en una Lista

Conceptos:

  • Listas
  • Bucles
  • Aritmética

Descripción: Escribe un programa en Python que calcule el promedio de una lista de números.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]
average = sum(numbers) / len(numbers)

print(f"The average of the numbers is: {average:.2f}")

Ejercicio 22: Elementos Comunes en Dos Listas

Conceptos:

  • Listas
  • Bucles
  • Conjuntos

Descripción: Escribe un programa en Python que tome dos listas y devuelva una lista de elementos comunes.

Solución:


list1 = input("Enter the first list of numbers separated by spaces: ").split()
list2 = input("Enter the second list of numbers separated by spaces: ").split()

common_elements = list(set(list1) & set(list2))
print(f"The common elements in the two lists are: {common_elements}")

Ejercicio 23: Encontrar los Números más Pequeño y más Grande en una Lista

Conceptos:

  • Listas
  • Bucles
  • Funciones min() y max()

Descripción: Escribe un programa en Python que tome una lista de números como entrada y devuelva los números más pequeño y más grande de la lista.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]

smallest_number = min(numbers)
largest_number = max(numbers)

print(f"The smallest number is: {smallest_number}")
print(f"The largest number is: {largest_number}")

Ejercicio 24: Eliminar Duplicados de una Lista

Conceptos:

  • Listas
  • Conjuntos
  • Comprensiones de listas

Descripción: Escribe un programa en Python que tome una lista y devuelva una nueva lista sin duplicados.

Solución:


input_list = input("Enter a list of elements separated by spaces: ").split()
unique_list = list(dict.fromkeys(input_list))

print(f"The list without duplicates is: {unique_list}")

Ejercicio 25: Ordenar una Lista en Orden Ascendente y Descendente

Conceptos:

  • Listas
  • Ordenamiento

Descripción: Escribe un programa en Python que tome una lista de números como entrada y devuelva la misma lista ordenada en orden ascendente y descendente.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]

ascending_sorted_list = sorted(numbers)
descending_sorted_list = sorted(numbers, reverse=True)

print(f"The list sorted in ascending order is: {ascending_sorted_list}")
print(f"The list sorted in descending order is: {descending_sorted_list}")

Ejercicio 26: Cuadrado y Cubo de Números en una Lista

Conceptos:

  • Listas
  • Bucles
  • Comprensiones de listas

Descripción: Escribe un programa en Python que tome una lista de números y devuelva una nueva lista que contenga el cuadrado y el cubo de cada número.

Solución:


numbers = [int(x) for x in input("Enter a list of numbers separated by spaces: ").split()]
squares_and_cubes = [(x**2, x**3) for x in numbers]

print(f"The squares and cubes of the numbers are: {squares_and_cubes}")

Ejercicio 27: Contar el Número de Palabras en una Oración

Conceptos:

  • Cadenas de texto
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que tome una oración como entrada y cuente el número de palabras en la oración.

Solución:


input_sentence = input("Enter a sentence: ")
words = input_sentence.split()
word_count = len(words)

print(f"The number of words in the sentence is: {word_count}")

Ejercicio 28: Intercambiar Dos Variables

Conceptos:

  • Variables
  • Tuplas

Descripción: Escribe un programa en Python que tome dos variables como entrada y intercambie sus valores.

Solución:


x = input("Enter the value of x: ")
y = input("Enter the value of y: ")

print(f"Before swapping: x = {x}, y = {y}")

x, y = y, x

print(f"After swapping: x = {x}, y = {y}")

Ejercicio 29: Distancia Entre Dos Puntos

Conceptos:

  • Funciones
  • Entrada/salida
  • Módulo math

Descripción: Escribe un programa en Python que calcule la distancia entre dos puntos en un espacio 2D. Las coordenadas de los puntos deben ser proporcionadas por el usuario.

Solución:


import math

def distance(x1, y1, x2, y2):
    return math.sqrt((x2 - x1)**2 + (y2 - y1)**2)

x1, y1 = map(float, input("Enter the coordinates of the first point (x1, y1): ").split())
x2, y2 = map(float, input("Enter the coordinates of the second point (x2, y2): ").split())

result = distance(x1, y1, x2, y2)
print(f"The distance between the two points is: {result:.2f}")

Ejercicio 30: Convertir Temperatura de Celsius a Fahrenheit y Viceversa

Conceptos:

  • Funciones
  • Entrada/salida
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que convierta temperaturas entre grados Celsius y grados Fahrenheit. El usuario debe proporcionar el valor de la temperatura y la unidad.

Solución:


def celsius_to_fahrenheit(celsius):
    return (celsius * 9/5) + 32

def fahrenheit_to_celsius(fahrenheit):
    return (fahrenheit - 32) * 5/9

temperature = float(input("Enter the temperature value: "))
unit = input("Enter the unit (C for Celsius, F for Fahrenheit): ")

if unit.upper() == "C":
    result = celsius_to_fahrenheit(temperature)
    print(f"{temperature} Celsius is equal to {result:.2f} Fahrenheit")
elif unit.upper() == "F":
    result = fahrenheit_to_celsius(temperature)
    print(f"{temperature} Fahrenheit is equal to {result:.2f} Celsius")
else:
    print("Invalid unit. Please enter 'C' for Celsius or 'F' for Fahrenheit.")

Ejercicios de Nivel Principiante

  1. Ejercicio 1: Calcular el Área de un Círculo
  2. Ejercicio 2: Contador de Frecuencia de Palabras
  3. Ejercicio 3: Convertidor de Temperatura Simple
  4. Ejercicio 4: Comprobador de Números Pares o Impares
  5. Ejercicio 5: Operaciones de Archivos Simples
  6. Ejercicio 6: Lista de Múltiplos
  7. Ejercicio 7: Comprobador de Palíndromos
  8. Ejercicio 8: Calculadora de Interés Simple
  9. Ejercicio 9: Generador de Secuencia de Fibonacci
  10. Ejercicio 10: Comprobador de Año Bisiesto
  11. Ejercicio 11: Comprobador de Números Primos
  12. Ejercicio 12: Contar Vocales en una Cadena
  13. Ejercicio 13: Calcular el Factorial de un Número
  14. Ejercicio 14: Suma de Dígitos en un Número
  15. Ejercicio 15: Codificador Cifrado César
  16. Ejercicio 16: Reversa una Cadena
  17. Ejercicio 17: Contar Ocurrencias de un Carácter
  18. Ejercicio 18: Imprimir el Valor ASCII de un Carácter
  19. Ejercicio 19: Calculadora Simple
  20. Ejercicio 20: Palabra Más Larga en una Oración
  21. Ejercicio 21: Calcular el Promedio de Números en una Lista
  22. Ejercicio 22: Elementos Comunes en Dos Listas
  23. Ejercicio 23: Encontrar los Números Más Pequeño y Más Grande en una Lista
  24. Ejercicio 24: Eliminar Duplicados de una Lista
  25. Ejercicio 25: Ordenar una Lista en Orden Ascendente y Descendente
  26. Ejercicio 26: Cuadrado y Cubo de Números en una Lista
  27. Ejercicio 27: Contar el Número de Palabras en una Oración
  28. Ejercicio 28: Intercambiar Dos Variables
  29. Ejercicio 29: Distancia Entre Dos Puntos
  30. Ejercicio 30: Convertir Temperatura de Celsius a Fahrenheit y Viceversa


Ejercicio 1: Calcular el Área de un Círculo

Conceptos:

  • Aritmética básica
  • Entrada/salida
  • Variables

Descripción: Escribe un programa en Python que tome el radio de un círculo como entrada del usuario y calcule su área.

Solución:

import math

radius = float(input("Enter the radius of the circle: "))
area = math.pi * (radius ** 2)

print(f"The area of the circle with radius {radius} is {area:.2f}")

Ejercicio 2: Contador de Frecuencia de Palabras

Conceptos:

  • Cadenas de texto
  • Diccionarios
  • Bucles

Descripción: Escribe un programa en Python que tome una cadena de texto como entrada y cuente la frecuencia de cada palabra en la cadena.

Solución:

input_string = input("Enter a sentence: ")
words = input_string.lower().split()
word_count = {}

for word in words:
    if word in word_count:
        word_count[word] += 1
    else:
        word_count[word] = 1

print("Word frequencies:", word_count)

Ejercicio 3: Conversor Simple de Temperatura

Conceptos:

  • Funciones
  • Declaraciones condicionales
  • Entrada de usuario

Descripción: Escribe un programa en Python que convierta temperaturas entre grados Celsius y Fahrenheit. El programa debe solicitar al usuario la unidad de temperatura y el valor a convertir.

Solución:

def celsius_to_fahrenheit(celsius):
    return (celsius * 9/5) + 32

def fahrenheit_to_celsius(fahrenheit):
    return (fahrenheit - 32) * 5/9

unit = input("Enter the temperature unit (C for Celsius, F for Fahrenheit): ")
value = float(input("Enter the temperature value to be converted: "))

if unit.upper() == "C":
    print(f"{value} Celsius is {celsius_to_fahrenheit(value):.2f} Fahrenheit.")
elif unit.upper() == "F":
    print(f"{value} Fahrenheit is {fahrenheit_to_celsius(value):.2f} Celsius.")
else:
    print("Invalid temperature unit.")

Ejercicio 4: Comprobador de Números Pares o Impares

Conceptos:

  • Aritmética modular
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que compruebe si un número dado es par o impar.

Solución:

number = int(input("Enter an integer: "))

if number % 2 == 0:
    print(f"{number} is even.")
else:
    print(f"{number} is odd.")

Ejercicio 5: Operaciones de Archivos Simples

Conceptos:

  • Entrada/salida de archivos
  • Manejo de excepciones
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que lea un archivo de texto, convierta su contenido a mayúsculas y escriba el resultado en un nuevo archivo. Si el archivo de entrada no existe, muestra un mensaje de error.

Solución:

input_file = input("Enter the name of the input file: ")
output_file = input("Enter the name of the output file: ")

try:
    with open(input_file, "r") as infile:
        content = infile.read()
    uppercase_content = content.upper()

    with open(output_file, "w") as outfile:
        outfile.write(uppercase_content)

    print("The content has been converted to uppercase and saved in the output file.")
except FileNotFoundError:
    print(f"The file '{input_file}' does not exist.")

Ejercicio 6: Lista de Múltiplos

Conceptos:

  • Bucles
  • Listas
  • Aritmética

Descripción: Escribe un programa en Python que tome un número como entrada y devuelva una lista con sus primeros 10 múltiplos.

Solución:

number = int(input("Enter a number: "))
multiples = [number * i for i in range(1, 11)]

print(f"The first 10 multiples of {number} are: {multiples}")

Ejercicio 7: Comprobador de Palíndromos

Conceptos:

  • Cadenas de texto
  • Declaraciones condicionales
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que compruebe si una palabra o frase dada es un palíndromo. Ignora espacios, puntuación y mayúsculas.

Solución:

import re

input_string = input("Enter a word or phrase: ")
processed_string = re.sub(r'\W+', '', input_string.lower())
reversed_string = processed_string[::-1]

if processed_string == reversed_string:
    print(f"'{input_string}' is a palindrome.")
else:
    print(f"'{input_string}' is not a palindrome.")

Ejercicio 8: Calculadora de Interés Simple

Conceptos:

  • Aritmética
  • Entrada/salida
  • Variables

Descripción: Escribe un programa en Python que calcule el interés simple para una cantidad principal, una tasa de interés y un número de años dados.

Solución:

principal = float(input("Enter the principal amount: "))
rate = float(input("Enter the rate of interest (percentage): "))
years = int(input("Enter the number of years: "))

interest = principal * rate * years / 100
total_amount = principal + interest

print(f"The simple interest is: {interest:.2f}")
print(f"The total amount after {years} years is: {total_amount:.2f}")

Ejercicio 9: Generador de Secuencia de Fibonacci

Conceptos:

  • Bucles
  • Listas
  • Funciones

Descripción: Escribe un programa en Python que genere los primeros n números de la secuencia de Fibonacci, donde n es proporcionado por el usuario.

Solución:

def generate_fibonacci(n):
    sequence = [0, 1]

    for i in range(2, n):
        sequence.append(sequence[-1] + sequence[-2])

    return sequence[:n]

n = int(input("Enter the number of Fibonacci numbers to generate: "))
fibonacci_sequence = generate_fibonacci(n)

print(f"The first {n} Fibonacci numbers are: {fibonacci_sequence}")

Ejercicio 10: Comprobador de Año Bisiesto

Conceptos:

  • Declaraciones condicionales
  • Aritmética modular

Descripción: Escribe un programa en Python que compruebe si un año dado es un año bisiesto.

Solución:

year = int(input("Enter a year: "))

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print(f"{year} is a leap year.")
else:
    print(f"{year} is not a leap year.")

Ejercicio 11: Comprobador de Números Primos

Conceptos:

  • Bucles
  • Declaraciones condicionales
  • Funciones

Descripción: Escribe un programa en Python que compruebe si un número dado es un número primo.

Solución:


def is_prime(number):
    if number <= 1:
        return False

    for i in range(2, number):
        if number % i == 0:
            return False
    return True

number = int(input("Enter a number: "))

if is_prime(number):
    print(f"{number} is a prime number.")
else:
    print(f"{number} is not a prime number.")

Ejercicio 12: Contar Vocales en una Cadena de Texto

Conceptos:

  • Cadenas de texto
  • Bucles
  • Diccionarios

Descripción: Escribe un programa en Python que cuente el número de vocales en una cadena de texto dada.

Solución:


input_string = input("Enter a string: ").lower()
vowels = "aeiou"
vowel_count = {}

for char in input_string:
    if char in vowels:
        if char in vowel_count:
            vowel_count[char] += 1
        else:
            vowel_count[char] = 1

print("Vowel count:", vowel_count)

Ejercicio 13: Calcular el Factorial de un Número

Conceptos:

  • Bucles
  • Declaraciones condicionales
  • Funciones

Descripción: Escribe un programa en Python que calcule el factorial de un número dado utilizando bucles.

Solución:


def factorial(number):
    if number == 0 or number == 1:
        return 1

    result = 1
    for i in range(2, number + 1):
        result *= i

    return result

number = int(input("Enter a number: "))
print(f"The factorial of {number} is {factorial(number)}")

Ejercicio 14: Suma de Dígitos en un Número

Conceptos:

  • Bucles
  • Aritmética
  • Cadenas de texto

Descripción: Escribe un programa en Python que calcule la suma de los dígitos de un número entero dado.

Solución:


number = int(input("Enter an integer: "))
sum_of_digits = sum(int(digit) for digit in str(number))

print(f"The sum of the digits of {number} is {sum_of_digits}")

Ejercicio 15: Codificador Cifrado César

Conceptos:

  • Cadenas de texto
  • Bucles
  • Aritmética modular

Descripción: Escribe un programa en Python que implemente un cifrado César simple. El programa debe tomar una cadena de texto y un valor de desplazamiento entero como entrada, y devolver la cadena codificada.

Solución:


def caesar_cipher(text, shift):
    encrypted = []

    for char in text:
        if char.isalpha():
            shift_amount = shift % 26
            new_ord = ord(char) + shift_amount

            if char.islower():
                if new_ord > ord("z"):
                    new_ord -= 26
            else:
                if new_ord > ord("Z"):
                    new_ord -= 26

            encrypted.append(chr(new_ord))
        else:
            encrypted.append(char)

    return "".join(encrypted)

text = input("Enter a string: ")
shift = int(input("Enter the shift value: "))

encoded_text = caesar_cipher(text, shift)
print(f"The encoded text is: {encoded_text}")

Ejercicio 16: Invertir una Cadena de Texto

Conceptos:

  • Cadenas de texto
  • Bucles
  • Slicing

Descripción: Escribe un programa en Python que invierta una cadena de texto dada.

Solución:


input_string = input("Enter a string: ")
reversed_string = input_string[::-1]

print(f"The reversed string is: {reversed_string}")

Ejercicio 17: Contar Ocurrencias de un Carácter

Conceptos:

  • Cadenas de texto
  • Bucles
  • Diccionarios

Descripción: Escribe un programa en Python que cuente las ocurrencias de un carácter específico en una cadena de texto dada.

Solución:


input_string = input("Enter a string: ")
target_char = input("Enter a character to count: ")

count = input_string.lower().count(target_char.lower())
print(f"The character '{target_char}' occurs {count} times in the string.")

Ejercicio 18: Imprimir el Valor ASCII de un Carácter

Conceptos:

  • Entrada/salida
  • Función ord()

Descripción: Escribe un programa en Python que tome un solo carácter como entrada y muestre su valor ASCII.

Solución:


char = input("Enter a single character: ")

if len(char) == 1:
    print(f"The ASCII value of '{char}' is {ord(char)}")
else:
    print("Invalid input. Please enter a single character.")

Ejercicio 19: Calculadora Simple

Conceptos:

  • Funciones
  • Entrada/salida
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que cree una calculadora simple que pueda realizar sumas, restas, multiplicaciones y divisiones. El programa debe pedir al usuario la operación, los dos números y luego mostrar el resultado.

Solución:


def add(x, y):
    return x + y

def subtract(x, y):
    return x - y

def multiply(x, y):
    return x * y

def divide(x, y):
    return x / y

operation = input("Enter the operation (add, subtract, multiply, divide): ")
num1 = float(input("Enter the first number: "))
num2 = float(input("Enter the second number: "))

if operation.lower() == "add":
    print(f"The result is: {add(num1, num2)}")
elif operation.lower() == "subtract":
    print(f"The result is: {subtract(num1, num2)}")
elif operation.lower() == "multiply":
    print(f"The result is: {multiply(num1, num2)}")
elif operation.lower() == "divide":
    if num2 == 0:
        print("Error: Division by zero is not allowed.")
    else:
        print(f"The result is: {divide(num1, num2)}")
else:
    print("Invalid operation.")

Ejercicio 20: Palabra más Larga en una Oración

Conceptos:

  • Cadenas de texto
  • Bucles
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que tome una oración como entrada y devuelva la palabra más larga de la oración.

Solución:


input_sentence = input("Enter a sentence: ")
words = input_sentence.split()

longest_word = ""
max_length = 0

for word in words:
    if len(word) > max_length:
        max_length = len(word)
        longest_word = word

print(f"The longest word in the sentence is: {longest_word}")

Ejercicio 21: Calcular el Promedio de Números en una Lista

Conceptos:

  • Listas
  • Bucles
  • Aritmética

Descripción: Escribe un programa en Python que calcule el promedio de una lista de números.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]
average = sum(numbers) / len(numbers)

print(f"The average of the numbers is: {average:.2f}")

Ejercicio 22: Elementos Comunes en Dos Listas

Conceptos:

  • Listas
  • Bucles
  • Conjuntos

Descripción: Escribe un programa en Python que tome dos listas y devuelva una lista de elementos comunes.

Solución:


list1 = input("Enter the first list of numbers separated by spaces: ").split()
list2 = input("Enter the second list of numbers separated by spaces: ").split()

common_elements = list(set(list1) & set(list2))
print(f"The common elements in the two lists are: {common_elements}")

Ejercicio 23: Encontrar los Números más Pequeño y más Grande en una Lista

Conceptos:

  • Listas
  • Bucles
  • Funciones min() y max()

Descripción: Escribe un programa en Python que tome una lista de números como entrada y devuelva los números más pequeño y más grande de la lista.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]

smallest_number = min(numbers)
largest_number = max(numbers)

print(f"The smallest number is: {smallest_number}")
print(f"The largest number is: {largest_number}")

Ejercicio 24: Eliminar Duplicados de una Lista

Conceptos:

  • Listas
  • Conjuntos
  • Comprensiones de listas

Descripción: Escribe un programa en Python que tome una lista y devuelva una nueva lista sin duplicados.

Solución:


input_list = input("Enter a list of elements separated by spaces: ").split()
unique_list = list(dict.fromkeys(input_list))

print(f"The list without duplicates is: {unique_list}")

Ejercicio 25: Ordenar una Lista en Orden Ascendente y Descendente

Conceptos:

  • Listas
  • Ordenamiento

Descripción: Escribe un programa en Python que tome una lista de números como entrada y devuelva la misma lista ordenada en orden ascendente y descendente.

Solución:


numbers = [float(x) for x in input("Enter a list of numbers separated by spaces: ").split()]

ascending_sorted_list = sorted(numbers)
descending_sorted_list = sorted(numbers, reverse=True)

print(f"The list sorted in ascending order is: {ascending_sorted_list}")
print(f"The list sorted in descending order is: {descending_sorted_list}")

Ejercicio 26: Cuadrado y Cubo de Números en una Lista

Conceptos:

  • Listas
  • Bucles
  • Comprensiones de listas

Descripción: Escribe un programa en Python que tome una lista de números y devuelva una nueva lista que contenga el cuadrado y el cubo de cada número.

Solución:


numbers = [int(x) for x in input("Enter a list of numbers separated by spaces: ").split()]
squares_and_cubes = [(x**2, x**3) for x in numbers]

print(f"The squares and cubes of the numbers are: {squares_and_cubes}")

Ejercicio 27: Contar el Número de Palabras en una Oración

Conceptos:

  • Cadenas de texto
  • Manipulación de cadenas de texto

Descripción: Escribe un programa en Python que tome una oración como entrada y cuente el número de palabras en la oración.

Solución:


input_sentence = input("Enter a sentence: ")
words = input_sentence.split()
word_count = len(words)

print(f"The number of words in the sentence is: {word_count}")

Ejercicio 28: Intercambiar Dos Variables

Conceptos:

  • Variables
  • Tuplas

Descripción: Escribe un programa en Python que tome dos variables como entrada y intercambie sus valores.

Solución:


x = input("Enter the value of x: ")
y = input("Enter the value of y: ")

print(f"Before swapping: x = {x}, y = {y}")

x, y = y, x

print(f"After swapping: x = {x}, y = {y}")

Ejercicio 29: Distancia Entre Dos Puntos

Conceptos:

  • Funciones
  • Entrada/salida
  • Módulo math

Descripción: Escribe un programa en Python que calcule la distancia entre dos puntos en un espacio 2D. Las coordenadas de los puntos deben ser proporcionadas por el usuario.

Solución:


import math

def distance(x1, y1, x2, y2):
    return math.sqrt((x2 - x1)**2 + (y2 - y1)**2)

x1, y1 = map(float, input("Enter the coordinates of the first point (x1, y1): ").split())
x2, y2 = map(float, input("Enter the coordinates of the second point (x2, y2): ").split())

result = distance(x1, y1, x2, y2)
print(f"The distance between the two points is: {result:.2f}")

Ejercicio 30: Convertir Temperatura de Celsius a Fahrenheit y Viceversa

Conceptos:

  • Funciones
  • Entrada/salida
  • Declaraciones condicionales

Descripción: Escribe un programa en Python que convierta temperaturas entre grados Celsius y grados Fahrenheit. El usuario debe proporcionar el valor de la temperatura y la unidad.

Solución:


def celsius_to_fahrenheit(celsius):
    return (celsius * 9/5) + 32

def fahrenheit_to_celsius(fahrenheit):
    return (fahrenheit - 32) * 5/9

temperature = float(input("Enter the temperature value: "))
unit = input("Enter the unit (C for Celsius, F for Fahrenheit): ")

if unit.upper() == "C":
    result = celsius_to_fahrenheit(temperature)
    print(f"{temperature} Celsius is equal to {result:.2f} Fahrenheit")
elif unit.upper() == "F":
    result = fahrenheit_to_celsius(temperature)
    print(f"{temperature} Fahrenheit is equal to {result:.2f} Celsius")
else:
    print("Invalid unit. Please enter 'C' for Celsius or 'F' for Fahrenheit.")