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:
- El 10% de la ponderación pertenece a la puntuación media de las tareas.
- El 20% de la ponderación corresponde a la puntuación media de las tareas de laboratorio.
- 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
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