Matlab, for loop simple division problem

  • MATLAB
  • Thread starter feicobain
  • Start date
  • #1
4
0

Main Question or Discussion Point

I put down a script like this

for u=(10:10:20)'
i=(1:size(u,1))'
X=zeros(size(u,1),1)
X(i,1)=100/u(i,1)
end

I expect to get a result like

X=
10
5

but it came out like

X=
0
5

It seems it does work if it contain / in the equation. Please help!!
 

Answers and Replies

  • #2
MATLABdude
Science Advisor
1,655
4
Did you realize that i contains two elements? The syntax u(i,1) makes no sense when i contains two elements. You've either got u and i jumbled up, or I'm not understanding what you're trying to do.

You also need to initialize your variables outside the loop.

So, this is probably the code you're looking for:

Code:
u=(10:10:20)'
X=zeros(size(u,1), 1)

for i = 1:size(u,1)
X(i,1) = 100 / u(i,1)
end
Which produces the desired results.

EDIT: Ooops, forgot some parentheses...
 

Related Threads for: Matlab, for loop simple division problem

  • Last Post
Replies
6
Views
12K
Replies
2
Views
6K
  • Last Post
Replies
5
Views
3K
  • Last Post
Replies
3
Views
719
  • Last Post
Replies
2
Views
2K
Replies
2
Views
2K
Replies
1
Views
6K
  • Last Post
Replies
3
Views
3K
Top