Soluciones de ejercicios y proyecto – 100 días de Python #6

Soluciones de ejercicios y proyecto – 100 días de Python #6

Esta página contiene las soluciones para los ejercicios y el proyecto del sexto día del curso.

  1. Solo hace falta una simple función con un insert() que almacene en la lista el valor del input() pasado como argumento en la llamada.
colores = ["rojo", "verde", "amarillo"]

def anadir_color(color):
	colores.insert(0, color)
    
anadir_color(input("Escriba un color para añadirlo a la lista:\n"))

print(colores)
  1. Aquí el error estaba solo por no poner los dos puntos después de los paréntesis. Un error muy común, puesto que la función ya lleva paréntesis, a veces se olvida de poner los dos puntos.

Recuerda, bloque indentado lleva dos puntos siempre al final de la primera línea. Aplicable a condicionales, bucles, funciones y clases.

def saludar():
    nombre = input("Introduzca su nombre, por favor\n")
    print(f"¡Muy buenas, {nombre}!")

Solución del proyecto de calculadora mejorada de nuevo

Aquí tienes mi solución.

Creamos funciones para cada operación.

Bucle infinito para poder realizar todas las operaciones que queramos.

En el vídeo de este sexto día, puedes ver detalladamente las explicaciones de todo este código.

# Se da un título a la calculadora.
print("--- CALCULADORA MEJORADA DE NUEVO ---")

# Funciones
# Suma
def suma(numero1,numero2):
    return numero1 + numero2
# Resta
def resta(numero1,numero2):
    return numero1 - numero2
# Multiplicación
def multiplicacion(numero1,numero2):
    return numero1 * numero2
# División
def division(numero1,numero2):
    return numero1 / numero2
# Módulo
def modulo(numero1,numero2):
    return numero1 % numero2
# Exponente
def exponente(numero1,numero2):
    return numero1 ** numero2

while True:
    # Se le pide al usuario que elija una opción y se evalúa
    print("Por favor, elija una opción:")
    print("1- Suma.")
    print("2- Resta.")
    print("3- Multiplicación.")
    print("4- División.")
    print("5- Módulo.")
    print("6- Exponente.")
    print("7- Salir.")

    # Se le pide al usuario un número de opción
    eleccion = int(input("Teclee un número y pulse ENTER:\n"))

    match eleccion:
        case 1:
            print('Ha elegido la opción "suma".')
        case 2:
            print('Ha elegido la opción "resta".')
        case 3:
            print('Ha elegido la opción "multiplicación".')
        case 4:
            print('Ha elegido la opción "división".')
        case 5:
            print('Ha elegido la opción "módulo".')
        case 6:
            print('Ha elegido la opción "exponente".')
        case 7:
            print('Saliendo de la calculadora...')
            break
        case _:
            print('Error, opción inválida. Especifique una opción del 1 al 7.')

    # Se solicitan los dos números para cualquier operación que elija.
    numero_1 = float(input("Especifique el primer operando:\n"))
    numero_2 = float(input("Especifique el segundo operando:\n"))
    
    match eleccion:
        case 1:
            resultado = round(suma(numero_1, numero_2), 2)
            print(f"El resultado de sumar {numero_1} + {numero_2} es: {resultado}.")
        case 2:
            resultado = round(resta(numero_1, numero_2), 2)
            print(f"El resultado de restar {numero_1} - {numero_2} es: {resultado}.")
        case 3:
            resultado = round(multiplicacion(numero_1, numero_2), 2)
            print(f"El resultado de multiplicar {numero_1} por {numero_2} es: {resultado}.")
        case 4:
            resultado = round(division(numero_1, numero_2), 2)
            print(f"El resultado de dividir {numero_1} entre {numero_2} es: {resultado}.")
        case 5:
            resultado = round(modulo(numero_1, numero_2), 2)
            print(f"El resto de la división de {numero_1} entre {numero_2} es: {resultado}.")
        case 6:
            resultado = round(exponente(numero_1, numero_2), 2)
            print(f"{numero_1} elevado a {numero_2} es: {resultado}.")

Solución del proyecto opcional

Esta segunda solución es para la calculadora opcional, la cual, realiza todas las operaciones de una sola vez:

# Se da un título a la calculadora.
print("--- CALCULADORA OPCIONAL ---")

# Funciones
# Suma
def suma(numero1,numero2):
    return numero1 + numero2
# Resta
def resta(numero1,numero2):
    return numero1 - numero2
# Multiplicación
def multiplicacion(numero1,numero2):
    return numero1 * numero2
# División
def division(numero1,numero2):
    return numero1 / numero2
# Módulo
def modulo(numero1,numero2):
    return numero1 % numero2
# Exponente
def exponente(numero1,numero2):
    return numero1 ** numero2

while True:

    # Se solicitan los dos números para cualquier operación que elija.
    numero_1 = float(input("Especifique el primer operando:\n"))
    numero_2 = float(input("Especifique el segundo operando:\n"))
    
    resultado = round(suma(numero_1, numero_2), 2)
    print(f"El resultado de sumar {numero_1} + {numero_2} es: {resultado}.")

    resultado = round(resta(numero_1, numero_2), 2)
    print(f"El resultado de restar {numero_1} - {numero_2} es: {resultado}.")

    resultado = round(multiplicacion(numero_1, numero_2), 2)
    print(f"El resultado de multiplicar {numero_1} por {numero_2} es: {resultado}.")

    resultado = round(division(numero_1, numero_2), 2)
    print(f"El resultado de dividir {numero_1} entre {numero_2} es: {resultado}.")

    resultado = round(modulo(numero_1, numero_2), 2)
    print(f"El resto de la división de {numero_1} entre {numero_2} es: {resultado}.")

    resultado = round(exponente(numero_1, numero_2), 2)
    print(f"{numero_1} elevado a {numero_2} es: {resultado}.")

2 comentarios en «0»

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

curso de Python Entrada anterior Ejercicios y proyecto con funciones – 100 días de Python #6
curso de Python Entrada siguiente Los diccionarios y los sets – 100 días de Python #7