I have a function and two values of x and I would like to find the values corresponding to the x-values, how should I start ? I was thinking to do for loop but it does not work it only gave me one of the answers (as you can see below)!
for x = 0.36 : 0.40
y = x^4 + 5*x^2 + sqrt(x-1)
end
y =
0.6648 + 0.8000i

1 Kommentar

John D'Errico
John D'Errico am 9 Jan. 2017
So your code was wrong. Show your code, and someone will show you how to fix it.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

John D'Errico
John D'Errico am 9 Jan. 2017

1 Stimme

Ok, you posted your code.
As I expected, every time through that loop, you overwrote the previous values.
Worse, what do you think 0.36:0.40 does? It generates a set of values from 0.36 to 0.40 in increments of 1 (ONE)! How many values do you think that creates? ONE: 0.36.
Simplest is to not use a loop.
x = [0.36, 0.40];
y = x.^4 + 5*x.^2 + sqrt(x-1);
Note the use of .^ there. It is there for a reason. Learn about element-wise operations on a vector or array.
help power

4 Kommentare

Yumi Lee
Yumi Lee am 9 Jan. 2017
Bearbeitet: Yumi Lee am 9 Jan. 2017
OMG ! so using loop was useless lol Thank you so much that helps a lot :)
Yumi Lee
Yumi Lee am 9 Jan. 2017
But why this does not work if I have something such as (x-1) multiply by the square root ? It says '' Error using * Inner matrix dimensions must agree.'' Any idea ?
Stephen23
Stephen23 am 9 Jan. 2017
Bearbeitet: Stephen23 am 9 Jan. 2017
Yumi Lee
Yumi Lee am 11 Jan. 2017
ok I will try it. Thank you

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by