the data you show is a list, so I guess it's OK to use them
have you learned about dictionaries or enumeration yet?
Here's how you can simplify:
have you learned about dictionaries or enumeration yet?
Here's how you can simplify:
data=[ 90,30,13,67,85,87,50,45,51,72,64,69,59,17,22,23,44, 25,16,67,85,87,50,45,51,72,59,14 ,50,55,32,23,24,25, 37,28,39,30,33,35,40,34,41,43,94,95,98,99,44,45,47, 48,49,53,61,63,69,75,77,60,83 ] grade_groups = [0] * 10 for n, group in enumerate(range(11, 101, 10)): for grade in data: if grade < group and grade > (group - 10): grade_groups[n] += 1 print('{:12s}{:10s}{:10s}'.format('Mark', 'Grade', 'Stars')) for n, group in enumerate(range(11, 101, 10)): print('{:3s}- {:7s}{:10s}{:14s}'.format(str(group-11), str(group-1), str(grade_groups[n]), '*' * grade_groups[n]))results:
Output:Mark Grade Stars
0 - 10 0
10 - 20 4 ****
20 - 30 9 *********
30 - 40 7 *******
40 - 50 12 ************
50 - 60 5 *****
60 - 70 6 ******
70 - 80 4 ****
80 - 90 6 ******