Using if statement inside a function,I didn't understand why the error is coming,why I am unable to use the values of x & y inside the if loop

function O = help(~,~)
i=input('Value of i:');
j=input('Value of j:');
O = y(i,j);
function g=y(x,y)
if(x==y)
{
k = rem(x,2);
s = log2( (y - k) );
g = 2^(-s);
}
else
{
g=0;
}
end
return;
end
return;
end

2 Comments

There is no such thing as an "if loop". The body of an "if" is executed exactly once (or not at all), whereas a "loop" would continue executing the body until some condition was met.
Please post the error message.
Be sure not to shadow the important Matlab function help by your function. This would be a very bad idea.

Sign in to comment.

 Accepted Answer

Curly braces for the if-else statement are not required.

3 Comments

Pardon me,it was mistakenly mentioned as if loop,But my question was,why I couldn't use the statements executed before the if statement inside the function y(a,b)
As Vishal Rane has said already: remove the curly braces in the IF-block. They are not only not required, but even an error, because curly braces create a cell array.
Thank you,I forgot that matlab doesn't need curly braces for if else statement,confused with C programming,Anyway thankyou both for your suggestions Vishal & Walter Roberson

Sign in to comment.

More Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!