DiYane

Exam

Jun 10th, 2023
611
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.61 KB | None | 0 0
  1. def calculate_statistics(scores):
  2.     total_students = len(scores)
  3.     top_students = sum(1 for score in scores if score >= 5.00)
  4.     between_4_4_99 = sum(1 for score in scores if 4.00 <= score <= 4.99)
  5.     between_3_3_99 = sum(1 for score in scores if 3.00 <= score <= 3.99)
  6.     fail_students = total_students - (top_students + between_4_4_99 + between_3_3_99)
  7.     average_score = sum(scores) / total_students
  8.    
  9.     top_students_percent = (top_students / total_students) * 100
  10.     between_4_4_99_percent = (between_4_4_99 / total_students) * 100
  11.     between_3_3_99_percent = (between_3_3_99 / total_students) * 100
  12.     fail_students_percent = (fail_students / total_students) * 100
  13.    
  14.     statistics = {
  15.         "top_students_percent": "{:.2f}".format(top_students_percent),
  16.         "between_4_4_99_percent": "{:.2f}".format(between_4_4_99_percent),
  17.         "between_3_3_99_percent": "{:.2f}".format(between_3_3_99_percent),
  18.         "fail_students_percent": "{:.2f}".format(fail_students_percent),
  19.         "average_score": "{:.2f}".format(average_score)
  20.     }
  21.    
  22.     return statistics
  23.  
  24.  
  25. num_students = int(input())
  26. scores = []
  27.  
  28. for _ in range(num_students):
  29.     score = float(input())
  30.     scores.append(score)
  31.  
  32. statistics = calculate_statistics(scores)
  33.  
  34. print("Top students: {}%".format(statistics["top_students_percent"]))
  35. print("Between 4.00 and 4.99: {}%".format(statistics["between_4_4_99_percent"]))
  36. print("Between 3.00 and 3.99: {}%".format(statistics["between_3_3_99_percent"]))
  37. print("Fail: {}%".format(statistics["fail_students_percent"]))
  38. print("Average: {}".format(statistics["average_score"]))
  39.  
Advertisement
Add Comment
Please, Sign In to add comment