Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

error when substituting value

1 Ansicht (letzte 30 Tage)
Hao Ming Low
Hao Ming Low am 24 Mär. 2020
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
what is the meaning of the code below?
>> f(x) = -0.5.*(x.^2)+2.5*x+4.5
x = 4
f =
0 0 0 0 4.5000 1.5000 -2.5000 -7.5000 -13.5000 -20.5000
x =
4
i typed the quadratic equation and wish to find the value from 0<x<20 ,but the table emerges. can anyone explain the table for me?

Antworten (1)

Geoff Hayes
Geoff Hayes am 24 Mär. 2020
Hao - your code above code is creating an array (this is your f) and not a table. So when you say something like
x = 3;
f(x) = -0.5.*(x.^2)+2.5*x+4.5;
you are setting the third element to the evaluation of -0.5.*(x.^2)+2.5*x+4.5 for x=3. If you have not previously assigned anything to the first or second elements, then they are set to zero. I'm not sure if that is your intent, but an alternative approach might be to use an anonymous function for your quadratic:
f = @(x)-0.5.*(x.^2)+2.5*x+4.5;
x = 1:1:19;
result = f(x);
where result is an array where the kth element is f(k). (Note that is only true when k is an integer - if the x data contains non-integer values, then the kth element of the results array would correspond to f(x(k)).)
  3 Kommentare
Geoff Hayes
Geoff Hayes am 24 Mär. 2020
Hao - all you need is the three lines. I'm not sure what you mean by nothing appear. It could be that semi-colon at the end of the third line is suppressing output that you are expecting to see. Either remove the semi-colon or just do
f = @(x)-0.5.*(x.^2)+2.5*x+4.5;
x = 1:1:19;
result = f(x);
result
to see what result contains.
Hao Ming Low
Hao Ming Low am 24 Mär. 2020
thank you!!! it works after semicolon removed

Community Treasure Hunt

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

Start Hunting!

Translated by