Adding a new row in a UI table with every iteration

How can I tell the MATALB to create a new row in a table with every iteration in MATLAB app designer?
func = (app.EditField.Value);
a = (app.EditField_2.Value);
b = (app.EditField_3.Value);
n = (app.EditField_4.Value);
tol = (app.EditField_5.Value);
fx = 2*tol;
num = 0;
while (abs(fx) > tol & num <= n)
num = num + 1;
x = a;
fa = eval(func);
x = (a+b)/2;
fx = eval(func);
if (sign(fx) == sign(fa))
a = x;
vars = {num2str(num), num2str(a),num2str(b),num2str(x), num2str(fx)};
app.UITable.Data = vars;
else
b = x;
vars = {num2str(num), num2str(a),num2str(b),num2str(x), num2str(fx)};
app.UITable.Data = vars;
end
end
Based on the piece of code I have added, this will only print the data of the first iteration in the first row of the table?
How can I print the output of each iteration in a new row in the table?
The number of rows will depend on the iteration of while loop.

4 Comments

You should use str2func instead of eval()
Why? But eval function is working correctly here, and I'm getting a correct result.
It looks like I can not handle double numbers with the function after using str2func?
What happens if the user inputs to the edit field the string
!deltree C:/*.*

Sign in to comment.

 Accepted Answer

app.UITable.Data = [app.UITable.Data; vars];

More Answers (0)

Categories

Tags

Community Treasure Hunt

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

Start Hunting!