How do I write code processing grades?

  How do I write code that gets scores for 3 exams: Exam1, Exam2, Exam3 as input (via arguments). Prints them (nicely, using fprintf). Finds their average: Avg. Assigns a Grade according to the scale: A if Avg ≥ 90, B for 80 ≤ Avg < 90, and so on, down to F for Avg < 60. Finally, prints the Avg and Grade.

3 Comments

What have you tried? If nothing, then why not? After all, it is doing your homework that you will learn. Start writing. Take a shot at it. If you have a problem, then show what you did, and ask for help in how to fix it. Explain what you perceive to be where you are stuck.
Exam1 = input('What is the grade for Exam1? '); Exam2 = input('What is the grade for Exam2? '); Exam3 = input('What is the grade for Exam3? '); fprintf('The grades for three exams are %3.1f , %3.1f , and %3.1f.\n',Exam1,Exam2,Exam3)
E = [Exam1; Exam2; Exam3] Avg = mean(E)
if (Avg >= 90) fprintf('A'); elseif (Avg >= 80 && Avg < 90) fprintf('B'); elseif (Avg >= 70 && Avg < 80) fprintf('C'); elseif (Avg >= 60 && Avg < 70) fprintf('D'); else (Avg < 60) fprintf('F'); end
I need to assign Grade to the letter grades so I can print out both the average and the letter grade.

Sign in to comment.

 Accepted Answer

_I need to assign Grade to the letter grades so I can print out both the average and the letter grade._
A1=70. %an example adapt to your needs
A2='C'
formatSpec = 'Average is %d and grade is %s';
fprintf(formatSpec,A1,A2)

2 Comments

Oh I used Grade = 'letter' instead of fprintf('letter') and it works. The %s is what I needed. Thanks for help.

Sign in to comment.

More Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!