Créer un convertisseur de notes en Python
Le calculateur/convertisseur de notes est un programme qui attribue des notes à chaque plage de notes obtenues par l’étudiant. Ce type de programme est souvent utilisé par les enseignants et les établissements d’enseignement pour calculer automatiquement la note en saisissant le score individuel de chaque matière.
Créer un convertisseur de notes en Python
Il peut y avoir plusieurs scénarios et critères pour calculer la note d’un élève.
Ici, nous allons fabriquer deux types de convertisseurs de grade. L’un est simple et l’autre est pondéré.
Convertisseur de note simple
Ici, nous allons créer un convertisseur de note qui calculera la note sans donner de poids au score. Voici les étapes :
-
L’utilisateur saisira le score individuel obtenu par l’étudiant dans chaque matière.
-
Ensuite, nous calculerons le score moyen en prenant la somme du score de chaque sujet et en divisant le score total par le nombre de sujets.
-
Enfin, nous attribuerons une note à chaque plage de notes moyennes en utilisant des conditions
if-else
.
Exemple de code :
# 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")
Production:
#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+
Convertisseur de note pondérée
Dans ce scénario, le convertisseur de notes calcule la note en ajoutant une étape supplémentaire qui donne le poids aux notes obtenues aux examens, aux tâches de laboratoire et aux devoirs. Ici, nous saisirons les notes des examens, des tâches de laboratoire et des devoirs et calculerons leur moyenne une par une.
Enfin, nous calculerons le score moyen total en attribuant des poids à chaque score. Nous avons défini la pondération comme suit :
- 10% de la pondération appartient au score moyen des devoirs.
- La pondération de 20% appartient au score moyen des tâches de laboratoire.
- La pondération de 70% appartient au score moyen des examens.
Après avoir calculé la note moyenne totale, nous attribuerons la note à chaque plage de notes.
Exemple de code :
# 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")
Production:
#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