Clear Filters
Clear Filters

I code a bisection method on MATLAB app designer, how can I fix this error ?

15 views (last 30 days)
typefunction = app.TypefunctionEditField.Value;
a = app.aEditField.Value
b = app.bEditField.Value
run = app.RunButton.ButtonPushedFcn
error= app.errorEditField.Value
fxi=str2func(['@(x)'typefunction]);
number_of_iterations=0;
if fxi(a)*fxi(b)>0
result=NaN;
return
end
if fxi(a)==0
result=a;
return
elseif fxi(b)==0
result=b;
return
end
while(abs(a-b)>=error)
result=(a+b)/2;
if fxi(a)*fxi(result)<0
b=result;
else
a=result;
end
number_of_iterations=number_of_iterations+1;
end

Answers (1)

Walter Roberson
Walter Roberson on 30 Nov 2023
fxi=str2func(['@(x)'typefunction]);
You need a space or comma, like
fxi=str2func(['@(x)' typefunction]);
  2 Comments
Walter Roberson
Walter Roberson on 30 Nov 2023
I copied your posted code into the editor, and added in the one space that I indicate, and that cleared up the error message. There are still warnings recommending that you add in semi-colons to prevent unnecessary output, but the error is gone just by putting in that one space.

Sign in to comment.

Categories

Find more on Environment and Settings in Help Center and File Exchange

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!