PROGRAMA SISTEMA_DE_CALIFICACIONES
INICIO
DEFINIR calificaciones [5] COMO REAL
DEFINIR opción COMO CARACTER
DEFINIR inicio, fin COMO TIEMPO
DEFINIR promedio COMO REAL
DEFINIR aprobados COMO ENTERO
DEFINIR tiempo COMO REAL
DEFINIR suma COMO REAL
DEFINIR contador COMO ENTERO
DEFINIR hayReprobados COMO LOGICO
ESCRIBIR "SISTEMA DE CALIFICACIONES"
REPETIR
inicio ← HORA_ACTUAL()
ESCRIBIR "Hora de entrada: ", inicio
// INGRESO DE CALIFICACIONES
PARA i ← 0 HASTA 4 HACER
REPETIR
ESCRIBIR "Ingrese la calificación del estudiante ", i+1, " (0-10): "
LEER calificaciones[i]
HASTA QUE calificaciones[i] ≥ 0 Y calificaciones[i] ≤ 10
FIN PARA
// CALCULAR PROMEDIO
suma ← 0
PARA i ← 0 HASTA 4 HACER
suma ← suma + calificaciones[i]
FIN PARA
promedio ← suma / 5
// CONTAR APROBADOS
contador ← 0
PARA i ← 0 HASTA 4 HACER
SI calificaciones[i] > 6 ENTONCES
contador ← contador + 1
FIN SI
FIN PARA
aprobados ← contador
ESCRIBIR "RESULTADOS"
ESCRIBIR "Promedio general: ", promedio
ESCRIBIR "Cantidad de estudiantes aprobados: ", aprobados
// MOSTRAR REPROBADOS
hayReprobados ← FALSO
ESCRIBIR "Calificaciones reprobadas:"
PARA i ← 0 HASTA 4 HACER
SI calificaciones[i] ≤ 6 ENTONCES
ESCRIBIR "Estudiante ", i+1, ": ", calificaciones[i]
hayReprobados ← VERDADERO
FIN SI
FIN PARA
SI hayReprobados = FALSO ENTONCES
ESCRIBIR "No hay estudiantes reprobados."
FIN SI
fin ← HORA_ACTUAL()
ESCRIBIR "Hora de salida: ", fin
tiempo ← DIFERENCIA_SEGUNDOS(fin, inicio)
ESCRIBIR "Tiempo de permanencia: ", tiempo, " segundos"
ESCRIBIR "¿Desea ejecutar nuevamente el programa? (s/n): "
LEER opcion
HASTA QUE opcion ≠ 's' Y opcion ≠ 'S'
ESCRIBIR "Programa finalizado."
FIN
FIN PROGRAMA