Azzera filtri
Azzera filtri

How to use switch statement

1 visualizzazione (ultimi 30 giorni)
Alexya
Alexya il 14 Ott 2022
Risposto: Matt J il 14 Ott 2022
I need to create a function through switch statements that are from one bound to the next bound. How would i use the case to display bound1 through bound2. Every variable falling within the bounds is included in the case.
i have
switch n
case {bound1 through bound2}
  2 Commenti
Matt J
Matt J il 14 Ott 2022
Don't do that. Use logical indexing instead.
Alexya
Alexya il 14 Ott 2022
This is what I have so far
function [lettergrade] = curvedGrade(grade,bound)
a = (bound(1):100);
b = (bound(2):bound(1));
c = (bound(3):bound(2));
d = (bound(4):bound(3));
switch grade
case{a}
lettergrade = 'A';
case{b}
lettergrade = 'B';
case{c}
lettergrade = 'C';
case{d}
lettergrade = 'D';
otherwise
lettergrade = 'F';

Accedi per commentare.

Risposta accettata

Matt J
Matt J il 14 Ott 2022
No, do it like this:
[lettergrade] = curvedGrade(71,[90,80,70,60, 50])
lettergrade = "C"
function [lettergrade] = curvedGrade(grade,bound)
gradeList=flip(["A" "B" "C" "D" "F"]);
idx=discretize(grade,[flip(bound(:));100]);
lettergrade=gradeList(idx);
end

Più risposte (1)

Walter Roberson
Walter Roberson il 14 Ott 2022

https://www.mathworks.com/help/matlab/ref/double.discretize.html and switch on the bin number.

Categorie

Scopri di più su Develop Apps Using App Designer in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by