If statement to target certain area of f(i,j)?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Assume I have a function of F(i,j) in grid points,
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/649535/image.png)
Am i typing my if statement correctly to target the 2 areas shown above? MATLAB console has not shown any error so far. Thanks in advance.
% Subroutine
function k=X(x,y,dx)
if (x <=5 & y <=2) & (x >= 10 & y >= 10)
constant = 85; % beta
else
constant = 100; % alpha
end
k=constant*dx;
end
0 commentaires
Réponse acceptée
KSSV
le 11 Juin 2021
% Subroutine
function k=X(x,y,dx)
if (x <=5 && y <=2) || (x >= 10 && y >= 10)
constant = 85; % beta
else
constant = 100; % alpha
end
k=constant*dx;
end
3 commentaires
Steven Lord
le 11 Juin 2021
% if (x <=5 & y <=2) & (x >= 10 & y >= 10)
Is the if condition satisfied for x = 3 and y = 1?
x = 3;
y = 1;
condition = (x <=5 & y <=2) & (x >= 10 & y >= 10)
Why is this false when the point is in the left box in your diagram?
inLeftBox = (x <=5 & y <=2)
inRightBox = (x >= 10 & y >= 10)
The first condition is true but the second is false and:
true & false % false
In fact this if statement's condition cannot be satisfied. Can you think of an x coordinate that is simultaneously less than or equal to 5 and greater than or equal to 10? Or to put it another way, point out a point in your diagram that's in both the beta boxes.
How about the second if statement?
% if (x <=5 & y <=2) | (x >= 10 & y >= 10)
condition2 = (x <=5 & y <=2) | (x >= 10 & y >= 10)
true | false
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Graphics Performance 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!