Skip to content

Instantly share code, notes, and snippets.

@piyush2896
Created October 26, 2018 11:30
Show Gist options
  • Save piyush2896/59de25007921eaf9490401dc409cd8a8 to your computer and use it in GitHub Desktop.
Save piyush2896/59de25007921eaf9490401dc409cd8a8 to your computer and use it in GitHub Desktop.
name = input('Enter Student Name: ')
roll_no = int(input('Enter Roll No: '))
subjects_list = ['Maths',
'Physics',
'Chemistry',
'English',
'Python']
print('\n' + '-' * 10 + 'GRADING CRITERIA' + '-' * 10)
print('|{:10s}|{:^23s}|'.format('A', '>=80%'))
print('|{:10s}|{:^23s}|'.format('B', '>=65% and < 80%'))
print('|{:10s}|{:^23s}|'.format('C', '>=50% and < 65%'))
print('|{:10s}|{:^23s}|'.format('D', '>=35% and < 50%'))
print('|{:10s}|{:^23s}|'.format('E', '<35%'))
print('-' * 36)
marks = []
subject_grade = []
for subject in subjects_list:
subject_marks = float(input('Enter marks in subject ' + subject + ':'))
if subject_marks >= 80:
subject_grade.append('A')
elif subject_marks >= 65:
subject_grade.append('B')
elif subject_marks >= 50:
subject_grade.append('C')
elif subject_marks >= 35:
subject_grade.append('D')
else:
subject_grade.append('E')
marks.append(subject_marks)
average_marks = sum(marks) / len(marks)
if average_marks >= 80:
grade = 'A'
elif average_marks >= 65:
grade = 'B'
elif average_marks >= 50:
grade = 'C'
elif average_marks >= 35:
grade = 'D'
else:
grade = 'E'
print('\n\n')
print('-' * 20 + 'Student Report' + '-' * 20)
print('NAME: ' + name)
print('ROLL NO.: ' + str(roll_no))
print('-' * 54)
print('|{:20s}|{:20s}|{:10s}|'.format('Subject',
'Marks',
'Grade'))
print('-' * 54)
for i in range(len(subjects_list)):
print('|{:20s}|{:20s}|{:10s}|'.format(subjects_list[i],
str(marks[i]),
subject_grade[i]))
print('-' * 54)
print('Overall Grade: ' + grade)
print('Percentage: ' + str(average_marks) + '%')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment