lunes, 27 de julio de 2026

Crear un programa que solicite N calificaciones, mostrar por pantalla los aprobados y los reprobados y el promedio de las calificaciones en Python

Código del ejercicio:

numeroCalificaciones = 0
while True:
    try:
        numeroCalificaciones = int(input("Ingrese la cantidad de calificaciones a introducir: "))
        break
    except ValueError:
        print("Error")
suma = 0
calificaciones = []
for i in range(0, numeroCalificaciones):
    while True:
        try:
            calificacion = int(input("Ingrese la calificación " + str(i) + ": "))
            break
        except ValueError:
            print("Error:")
    calificaciones.append(calificacion)
    suma = suma + calificacion
promedio = suma / numeroCalificaciones
for i in range(0, numeroCalificaciones):
    if calificaciones[i] >= 50:
        print(str(calificaciones[i]) + " calificación aprobatoria")
    else:
        print(str(calificaciones[i]) + " calificación no aprobatoria")
print("El promedio de las calificaciones es:", round(promedio))

Definición de los códigos del ejercicio:

while True --> se ejecuta sin ninguna condición hasta que la instrucción break se ejecuta dentro del ciclo.
try --> permite probar un bloque de código en busca de errores.
int() --> convierte el valor especificado en un número entero.
input() --> permite obtener texto escrito por teclado.
break --> se utiliza para romper un for bucle o un while bucle.
except --> permite manejar el error.
ValueError --> se genera cuando hay un valor incorrecto en un tipo de datos especificado.
lista = [1,2,3,4] --> son variables que almacenan arrays, internamente cada posición puede ser un tipo de datos distinto.
for --> el bucle for se utiliza para recorrer los elementos de un objeto iterable (lista, tupla, conjunto, diccionario, …) y ejecutar un bloque de código.
in --> el operador in devuelve True si el valor se encuentra en una secuencia; False en caso contrario.
range --> es un tipo que se utiliza para representar una secuencia inmutable de números. Uno de sus principales usos es junto a la sentencia for, para definir un bucle sobre el que se itera un número determinado de veces.
str() --> convierte el valor especificado en una cadena.
+ --> el operador ( + ) concatena variables de cadena.
break --> se utiliza para romper un for bucle o un while bucle.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
>= --> el operador mayor que o igual ( >= ) devuelve true si el operando izquierdo es mayor o igual que el operando derecho, y en false caso contrario.
round() --> le devolverá un número flotante que se redondeará a los lugares decimales que se dan como entrada.
print() --> imprime un mensaje en la pantalla.
, --> concatena variables de cadena.

Explicación del Código:

Este programa permite ingresar una cantidad determinada de calificaciones. Después guarda cada una en una lista, calcula el promedio y muestra cuáles son aprobatorias y cuáles no.

Código

numeroCalificaciones = 0 while True: try: numeroCalificaciones = int(input("Ingrese la cantidad de calificaciones a introducir: ")) break except ValueError: print("Error") suma = 0 calificaciones = [] for i in range(0, numeroCalificaciones): while True: try: calificacion = int(input("Ingrese la calificación " + str(i) + ": ")) break except ValueError: print("Error:") calificaciones.append(calificacion) suma = suma + calificacion promedio = suma / numeroCalificaciones for i in range(0, numeroCalificaciones): if calificaciones[i] >= 50: print(str(calificaciones[i]) + " calificación aprobatoria") else: print(str(calificaciones[i]) + " calificación no aprobatoria") print("El promedio de las calificaciones es:", round(promedio))

Explicación paso a paso

Código Explicación sencilla
numeroCalificaciones = 0 Se crea una variable para guardar la cantidad de calificaciones que ingresará el usuario.
while True: Se repite el proceso hasta que el usuario escriba un número válido.
try: Intenta convertir el dato ingresado en un número entero.
input(...) Solicita al usuario la cantidad de calificaciones.
int(...) Convierte el texto ingresado en un número entero.
break Sale del ciclo cuando el dato es correcto.
except ValueError: Si el usuario escribe letras u otro dato incorrecto, muestra el mensaje "Error".
suma = 0 Inicializa la variable donde se acumulará la suma de todas las calificaciones.
calificaciones = [] Crea una lista vacía para almacenar las calificaciones ingresadas.
for i in range(...) Repite el proceso tantas veces como calificaciones indicó el usuario.
while True Valida que cada calificación ingresada sea un número.
calificacion = int(input(...)) Solicita una calificación y la convierte en entero.
calificaciones.append(calificacion) Guarda la calificación dentro de la lista.
suma = suma + calificacion Va acumulando la suma de todas las calificaciones.
promedio = suma / numeroCalificaciones Calcula el promedio dividiendo la suma entre la cantidad de calificaciones.
if calificaciones[i] >= 50 Comprueba si la calificación es aprobatoria (50 o más).
else Si la nota es menor que 50, indica que es reprobatoria.
round(promedio) Redondea el promedio al entero más cercano antes de mostrarlo.

Funcionamiento del programa

  1. Solicita cuántas calificaciones se ingresarán.
  2. Verifica que la cantidad sea un número válido.
  3. Pide una por una las calificaciones.
  4. Guarda todas las calificaciones en una lista.
  5. Suma todas las notas.
  6. Calcula el promedio.
  7. Recorre nuevamente la lista.
  8. Muestra cuáles son aprobatorias y cuáles no.
  9. Finalmente muestra el promedio de todas las calificaciones.

Ejemplo de ejecución

Ingrese la cantidad de calificaciones a introducir: 5 Ingrese la calificación 0: 80 Ingrese la calificación 1: 45 Ingrese la calificación 2: 60 Ingrese la calificación 3: 30 Ingrese la calificación 4: 90 80 calificación aprobatoria 45 calificación no aprobatoria 60 calificación aprobatoria 30 calificación no aprobatoria 90 calificación aprobatoria El promedio de las calificaciones es: 61
Resumen:

Este programa utiliza:
  • while para validar que los datos sean correctos.
  • try - except para evitar errores cuando el usuario escribe letras.
  • for para repetir el ingreso y recorrido de las calificaciones.
  • listas para almacenar todas las notas.
  • if - else para identificar si cada calificación está aprobada o reprobada.
  • round() para mostrar el promedio redondeado.
Al finalizar, el programa informa cuáles calificaciones aprobaron, cuáles reprobaron y cuál fue el promedio general.

No hay comentarios.:

Publicar un comentario

Crear una calculadora para calcular la suma, resta, multiplicación, división, número elevado al cuadrado y raíz cuadrada en Python

Código del ejercicio: import math print ( 'Selecciona una operación a realizar: ' ) print ( '1 Suma' ) prin...

Copyright © Ejercicios de programación. Todos los derechos reservados. ❤️