Advertisement
Guest User

Untitled

a guest
Jun 24th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. # include <string>
  2. import re
  3. data = open("administration.in").readlines()
  4.  
  5. def gradeCalc(s):
  6. if s[0].isdigit():
  7. split1 = s.split(';')[0]
  8. percentages = split1.split('=')
  9. split2 = s.split(';')[1]
  10. names = split2.split(',')
  11.  
  12. index = 0
  13. for percentage in percentages:
  14.  
  15. if int(percentage) <= 0:
  16. percentages[index] = '_'
  17. index = index + 1
  18. elif int(percentage) < 20:
  19. percentages[index] = '-'
  20. index = index + 1
  21. else:
  22. percentages[index] = '^'
  23. index = index + 1
  24.  
  25. return ' ' + ''.join(percentages) + '\n ' + '\n '.join(names)
  26. else:
  27. if re.search('[a-z,A-Z]_{1,3}[1-9]', s):
  28. if re.search('[a-z,A-Z]_{1}[1-9]', s):
  29. student = s.split('_')[0]
  30. grades = s.split('_')[1]
  31. elif re.search('[a-z,A-Z]_{2}[1-9]', s):
  32. student = s.split('__')[0]
  33. grades = s.split('__')[1]
  34. else:
  35. student = s.split('___')[0]
  36. grades = s.split('___')[1]
  37.  
  38. totalGrades = 0.0
  39. count = 0
  40. for grade in grades.split(' '):
  41. count = count + 1
  42. totalGrades = totalGrades + int(grade)
  43.  
  44. avgGrade = totalGrades / count
  45.  
  46. if avgGrade is avgGrade >= 5.5 and avgGrade < 6.0:
  47. avgGrade = '6-'
  48. else:
  49. avgGrade = str(round(avgGrade)) + '.0'
  50.  
  51. return student + ' has an avarage of ' + avgGrade
  52. else:
  53. return 'No matches found'
  54.  
  55. for i in data:
  56. print(gradeCalc(i))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement