Error In finding a variable inside a nested loop..
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
satish kumar
le 7 Mai 2020
Commenté : satish kumar
le 7 Mai 2020
I am getting an error of "Operands to the || and && operators must be convertible to logical scalar values". Here, I need to plot figure(2), figure(3). i don't understand how to solve this. Any help is very much appreciated. I am attachhing my code here.
2 commentaires
Réponse acceptée
Walter Roberson
le 7 Mai 2020
The code you posted cannot encounter that error unless you uncomment some code. If you do uncomment, then
elseif lambdat(:,:) > 0.34522 pi/2 - lambdam pi/2 + lambdam 0.34522 < lambdat(:,:) &&
What would be the intent of that code? MATLAB would parse it like
elseif lambdat(:,:) > 0.34522
pi/2 - lambdam
pi/2 + lambdam
0.34522 < lambdat(:,:) &&
complete with an error because the statement is not finished on the line.
Your lambdat is a non-scalar. When you test a non-scalar in an if or elseif the condition is only considered true if all of the values are non-zero . So if some of the lambdat values are > 0.34522 but not all of them are, then the condition would fail.
You should probably be using logical indexing, or else using a loop so you are only testing one value at a time.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!