- A CONTINUE may only be used within a FOR or WHILE loop
- Logical comparison requires 2 equals: d==1 && r>1
A switch case with multiple results or switch expressions?
39 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Rishi Balasubramanian
il 23 Dic 2020
Commentato: Walter Roberson
il 23 Dic 2020
Is such a switch case possible? If not, whats my workaround for it?
switch r,d
case d=1 && r=1
continue
case d=1 && r>1
disp('zero')
case d=0 && r=1
disp('positive one')
case d=0 && r>1
disp('other value')
end
0 Commenti
Risposta accettata
Cris LaPierre
il 23 Dic 2020
First we need to fix some syntax issues.
One way to swtich based on the value of multiple variables is this:
r = 1;
d = 0;
switch true
case d==1 && r>1
disp('zero')
case d==0 && r==1
disp('positive one')
case d==0 && r>1
disp('other value')
end
1 Commento
Walter Roberson
il 23 Dic 2020
It is true that a continue can only be used within for or while, but we could speculate that this switch logic is indeed inside a loop.
Più risposte (1)
Walter Roberson
il 23 Dic 2020
switch true
case d==1 && r==1
continue
case d==1 && r>1
disp('zero')
case d==0 && r==1
disp('positive one')
case d==0 && r>1
disp('other value')
otherwise
disp('Uh-oh!')
end
0 Commenti
Vedere anche
Categorie
Scopri di più su Loops and Conditional Statements in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!