MATLAB: Insert Equation directly into the code

equationerrorfunctionhelpinputMATLABundefinedvariablex

This code is for finding roots for an equation. My code runs fine how it is. But I do not like how I have to use the input command to call the function. I want the code to run with the function in the code.
The function I am using is x^2-6. But I cannot not seem to make it happen. It says x is not a defined variable. How do I fix this?
f1 = input('Equation','s'); %%%%I want f1 = x^2-6
f = inline(f1);
xl = 0;
xu = 10;
xe = (xl+xu)/(2);
acc = 0.0001;
while abs(f(xe))> acc
i = i + 1;
if (f(xe)*f(xu)) < 0
xl = xe;
else
xu = xe;
end
xe = (xl+xu)/2;
end
fprintf('%d)\t%f\tf(x)=%f\n',i,xe,f(xe));

Best Answer

You want to use an anonymous function :
f = @(x) x^2-6;