- 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?
    17 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
    Rishi Balasubramanian
 le 23 Déc 2020
  
    
    
    
    
    Commenté : Walter Roberson
      
      
 le 23 Déc 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 commentaires
Réponse acceptée
  Cris LaPierre
    
      
 le 23 Déc 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 commentaire
  Walter Roberson
      
      
 le 23 Déc 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.
Plus de réponses (1)
  Walter Roberson
      
      
 le 23 Déc 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 commentaires
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


