Matlab For Loop Problem: Solve y=x^3+1

  • Context: MATLAB 
  • Thread starter Thread starter kschul14
  • Start date Start date
  • Tags Tags
    Loop Matlab
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
5 replies · 4K views
kschul14
Messages
2
Reaction score
0
I'm have a really hard time understanding for loops in matlab. How can I solve y=x^3+1 with a for loop?
 
Physics news on Phys.org
Why would you use a for loop? Are you implementing some sort of iterative algorithm? Just use the cubic formula.
This really belongs in the programming section. I'll ask one of the mods to move it.
 
it's an assignment. we are supposed to use the dot operator which is really easy and a for loop and the range is 0<=x<=2 with 100 points distributed uniformly. I have tryed the fallowing
for i=0:01:2
y(i)=1+i^3
end
this won't work
 
To get a uniformly space range of numbers on a specified interval use the linspace command.

If you are trying to find the zero(s) of the function, what is a test you can use to check if you are close?

You may also find eps, the machine epsilon, to be of use.
 
kschul14 said:
it's an assignment. we are supposed to use the dot operator which is really easy and a for loop and the range is 0<=x<=2 with 100 points distributed uniformly. I have tryed the fallowing
for i=0:01:2
y(i)=1+i^3
end
this won't work

You're trying to raise a vector to a power; using "i^3" will attempt to multiply i*i*i, which is not what you want. The correct expression is "i.^3". You should be able to figure out what to do from there.
 
Code:
for i=0:01:2
    y(i)=1+i^3
end

You are using i as an index for y, when i is not an integer. (You can't get the 0.1th element of y, for example.)

In MATLAB, you should always prefer using vectors to loops. How can you vectorize this?