(*
i have to create a program that will
allow the entry of 10 students’ name, sex and grade
which should display :
the percentage of students who got a grade of 50 or more.
The Percentage of male students getting 50 or above.
The percentage of female students getting 50 or above.
The the female with the highest average
The male with the highest average.
*)
program Grading_System ;
(*
uses crt ;
*)
var
ClassNames : array[1..10] of string[20] ;
ClassGen : array[1..10] of char ;
ClassAvg : array[1..10] of integer ;
LoopCounter : integer ;
NumberOfNames : integer ;
sum : integer ;
average : real ;
begin
(*
clrscr ;
*)
write('How many names are you entering (max 10)? ') ;
readln(NumberOfNames) ;
{
Input Names, Grades and Gender
}
for LoopCounter := 1 to NumberOfNames do begin
writeln ;
writeln('Enter Name: ',LoopCounter) ;
readln(ClassNames[LoopCounter]) ;
repeat
writeln ;
writeln('Enter Gender: ',LoopCounter) ;
readln(ClassGen[LoopCounter]) ;
until ClassGen[LoopCounter] in ['F','M'] ;
writeln ;
writeln('Enter Average: ',LoopCounter) ;
readln(ClassAvg[LoopCounter])
end ;
{
Print out names
}
writeln('Here is the list of names') ;
for LoopCounter := 1 to NumberOfNames do
writeln(ClassNames[LoopCounter]:20, ' : ',ClassGen[LoopCounter],' : ',ClassAvg[LoopCounter]:5) ;
readln ;
{
Students with 50+ average
}
sum := 0 ;
for LoopCounter := 1 to NumberOfNames do
if ClassAvg[LoopCounter] >= 50 then
sum := sum + 1 ;
average := 100.0 * sum / NumberOfNames ;
writeln('Percentage of Students with 50+ average is: ', average:0:2,'%') ;
readln
end.