if statement problem with function
Afficher commentaires plus anciens
i'm given the task to create an if statement for this problem
i have an array from -1:1
x=[-1:0.1:1]
and a function f= x.^2.*sin(pi.*x)
and i'm supposted to make an if statement arround g
if F>=0 then g=F
if F<0 then g=0
the problem seems pretty easy to solve but somehow i can't seem to do it
i've coded this so far but i keep getting error messages and i don't understand why it's not working
i keep getting the error message: Index in position 2 is invalid. Array indices must be positive integers or logical values.
Error in solution (line 6)
if f(1,i) >= 0
x = [-1:0.1:1];
f = (x.^2).*(sin(pi.*x));
for i = -1:1
if f(1,i) >= 0
g(1,i)=f
elseif f(1,i)<0
g(1,i)=0
end
end
1 commentaire
Stephen23
le 6 Oct 2020
The MATLAB approach:
x = -1:0.1:1; % get rid of the superfluous brackets
f = x.^2.*sin(pi.*x);
g = max(0,f);
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Programming dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!