combining evalfis with sprintf

4 views (last 30 days)
Sotiris
Sotiris on 13 Jun 2011
Hello,
I am trying to combine evalfis with sprintf in order to use it repeatedly within a loop. The command I use is the following:
evalfis(sprintf('[%1.0f %1.0f %1.0f %1.0f],fis',j,deg1,deg2,deg3))
I receive the following error message:
Need at least two inputs ??? In an assignment A(I) = B, the number of elements in B and I must be the same.
if i use evalfis without sprintf works, and sprintf alone is working great when copying the result to evalfis.
Can you suggest me anything?
Thank you in advance
Sotiris

Accepted Answer

Walter Roberson
Walter Roberson on 13 Jun 2011
evalfis() requires a numeric input for the first argument, not a string.
evalfis() requires a minimum of two arguments according to the documentation
When you are copying the output of sprintf to evalfis, you are probably copying and pasting, which would cause the command interpreter to parse the text and convert it in to numeric form.

More Answers (1)

Sotiris
Sotiris on 13 Jun 2011
You were right, i changed the command from 1 to 2 lines as follow:
input=[j deg1 deg2 deg3];
out(z)=evalfis(input,fis)'
Thank you for your suggestion
Sotiris

Categories

Find more on Source Control Integration 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!