Hacer un convertidor de notas en Python

Fariba Laiq 26 mayo 2022
Hacer un convertidor de notas en Python

La calculadora/conversora de calificaciones es un programa que asigna calificaciones contra cada rango de calificaciones obtenidas por el estudiante. Este tipo de programa suele ser utilizado por profesores e instituciones educativas para calcular automáticamente la nota introduciendo la puntuación individual de cada asignatura.

Hacer un convertidor de calificaciones en Python

Puede haber múltiples escenarios y criterios para calcular la calificación de un estudiante.

Aquí, haremos dos tipos de convertidores de grados. Uno es simple, y el otro es ponderado.

Convertidor de grado simple

Aquí, haremos un convertidor de calificaciones que calculará la calificación sin darle ningún peso a la puntuación. Los siguientes son los pasos:

  • El usuario introducirá la puntuación individual obtenida por el alumno en cada asignatura.
  • Luego, calcularemos el puntaje promedio tomando la suma del puntaje de cada sujeto y dividiendo el puntaje total por el número de sujetos.
  • Finalmente, asignaremos una nota a cada rango de puntuaciones medias utilizando condiciones if-else.

Código de ejemplo:

# Python 3.x
total_marks = 0
print("Enter Marks Obtained in 4 Subjects: ")
for i in range(1, 5):
    marks = int(input("Enter the marks for subject:" + str(i) + " "))
    total_marks = total_marks + marks
avg_marks = total_marks / 4
if avg_marks >= 91 and avg_marksg <= 100:
    print("Grade: A+")
elif avg_marks >= 81 and avg_marks < 91:
    print("Grade: A")
elif avg_marks >= 71 and avg_marks < 81:
    print("Grade: B+")
elif avg_marks >= 61 and avg_marks < 71:
    print("Grade: B")
elif avg_marks >= 51 and avg_marks < 61:
    print("Grade: C+")
elif avg_marks >= 41 and avg_marks < 51:
    print("Grade: C")
else:
    print("Grade: F")

Producción :

#Python 3.x
Enter Marks Obtained in 4 Subjects:
Enter the marks for subject:1 90
Enter the marks for subject:2 80
Enter the marks for subject:3 60
Enter the marks for subject:4 70
Grade: B+

Convertidor de grado ponderado

En este escenario, el convertidor de calificaciones calculará la calificación agregando un paso adicional que otorga el peso a las calificaciones obtenidas en los exámenes, tareas de laboratorio y asignaciones. Aquí, ingresaremos las calificaciones de los exámenes, tareas de laboratorio y tareas y calcularemos su promedio uno por uno.

Finalmente, calcularemos el puntaje promedio total otorgando pesos a cada puntaje. Hemos definido el peso de la siguiente manera:

  1. El 10% de la ponderación pertenece a la puntuación media de las tareas.
  2. El 20% de la ponderación corresponde a la puntuación media de las tareas de laboratorio.
  3. El peso del 70% pertenece a la puntuación media de los exámenes.

Después de calcular el puntaje promedio total, asignaremos la calificación contra cada rango de puntaje.

Código de ejemplo:

# Python 3.x
total_marks = 0
exam1 = int(input("Enter Marks Obtained in Exam 1: "))
exam2 = int(input("Enter Marks Obtained in Exam 2: "))
avg_exam = (exam1 + exam2) / 2
totallab = 0
totalassignment = 0
for i in range(1, 3):
    marks = int(input("Enter Marks Obtained in Lab Task: " + str(i) + " "))
    totallab = totallab + marks
avglab = totallab / 2
for i in range(1, 5):
    marks = int(input("Enter the marks for Assignment:" + str(i) + " "))
    totalassignment = totalassignment + marks
avgassignment = totalassignment / 4
avg_marks = 0.1 * avgassignment + 0.7 * avg_exam + 0.2 * avglab
if avg_marks >= 91 and avg_marksg <= 100:
    print("Grade: A+")
elif avg_marks >= 81 and avg_marks < 91:
    print("Grade: A")
elif avg_marks >= 71 and avg_marks < 81:
    print("Grade: B+")
elif avg_marks >= 61 and avg_marks < 71:
    print("Grade: B")
elif avg_marks >= 51 and avg_marks < 61:
    print("Grade: C+")
elif avg_marks >= 41 and avg_marks < 51:
    print("Grade: C")
else:
    print("Grade: F")

Producción :

#Python 3.x
Enter Marks Obtained in Exam 1: 40
Enter Marks Obtained in Exam 2: 60
Enter Marks Obtained in Lab Task: 1 20
Enter Marks Obtained in Lab Task: 2 40
Enter the marks for Assignment:1 60
Enter the marks for Assignment:2 10
Enter the marks for Assignment:3 30
Enter the marks for Assignment:4 40
Grade: C
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

Artículo relacionado - Python Math