elseif to switch statement

14 次查看(过去 30 天)
I am attempting to switch this into a switch statement.
TestScore = input('Enter a score from the keyboard ')
if(TestScore > 89)
disp('Your Letter grade is A')
elseif(TestScore > 79)
disp('Your Letter grade is B')
elseif(TestScore > 69)
disp('Your Letter grade is C')
elseif(TestScore > 59)
disp('Your Letter grade is D')
else
disp('Your Letter grade is F')
end

采纳的回答

Adam Danz
Adam Danz 2020-4-20
编辑:Adam Danz 2020-4-20
There's nothing wrong with the if/elseif/else syntax but the conditional statements could be tightened up.
If you prefer a switch-case,
switch true
case (TestScore > 89 && TestScore <=100)
disp('Your Letter grade is A')
case (TestScore > 79 && TestScore <= 89)
disp('Your Letter grade is B')
case (TestScore > 69 && TestScore <= 79)
disp('Your Letter grade is C')
case (TestScore > 59 && TestScore <= 69)
disp('Your Letter grade is D')
case (TestScore >=0 && TestScore <= 59)
disp('Your Letter grade is F')
otherwise
disp('TestScore did not match grade ranges.')
end
  2 个评论
Gerardo Echeverria
Gerardo Echeverria 2020-4-20
This is what I got, It seems to be different, but they both work. Do you know if this one is incorrect?
TestScore = input('Enter a score from the keyboard ');
switch TestScore
case num2cell(90:100)
disp('Your Letter grade is A')
case num2cell(80:89)
disp('Your Letter grade is B')
case num2cell(70:79)
disp('Your Letter grade is C')
case num2cell(60:69)
disp('Your Letter grade is D')
otherwise
disp('Your Letter grade is F')
end
Adam Danz
Adam Danz 2020-4-20
编辑:Adam Danz 2020-4-20
Test the following grades:
  • 101 (accidentally entered by user)
  • 91.5

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 GNC and Avionics 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by