# !/usr/bin/env python
# -*- coding: utf-8 -*-
from statistics import mean


def average(a, b):
    return mean([a, b])


courses = [
    "Programación de Sistemas",
    "Estadística Básica",
    "Algebra Lineal",
    "Matrices Distribuidas",
    "Redes Neuronales",
]
score_01, score_02, score_min = [15, 18, 12, 19, 13], [18, 16, 13, 16, 18], 13

# Usamos "map" para invocar función "average" a cada elemento de las listas.
score_course_final = list(map(average, score_01, score_02))
score_final = mean(score_course_final)

if __name__ == "__main__":
    for x in range(0, len(courses)):
        print("\nCurso: {}".format(courses[x]))
        print("\n{} {}".format("Nota 1 :".ljust(14), score_01[x]))
        print("{} {}".format("Nota 2 :".ljust(14), score_02[x]))
        print("{} {}".format("Nota Final :".ljust(14), score_course_final[x]))
        print(
            "Estado: {}".format(
                "Aprobado" if score_course_final[x] >= score_min else "Desaprobado"
            )
        )
        print("\n{}".format("".ljust(30, "*")))
    print("\nPromedio Final: {}".format(score_final))
    print(
        "Estado Final: {}".format(
            "Aprobado" if score_final >= score_min else "Desaprobado"
        )
    )