Info

此问题已关闭。 请重新打开它进行编辑或回答。

Problem with for loop

2 次查看(过去 30 天)
Oscar Espinosa
Oscar Espinosa 2018-11-15
关闭: MATLAB Answer Bot 2021-8-20
I want to obtain the middle points of each panel of a closed circle, for that I'm using the for loop. For example, the length of xc is 9 thus i = 8, but I get a matrix of dimension 1x9 for xc and yc, where the first element is equal to 0. Why is this happening and how can I obtain xc and yc of dimensions 1x8?
Thanks in advance.
for i = 2:1:length(xp);
i
xc(i) = (xp(i-1)+xp(i))/2;
yc(i) = (yp(i-1)+yp(i))/2;
end
  1 个评论
Adam
Adam 2018-11-15
You start indexing from 2 but you can't have an array with nothing as the first element so that first element is created as 0.
You could just index as
xc( i - 1 )
yc( i - 1 )
in this case.

回答(1 个)

madhan ravi
madhan ravi 2018-11-15
your loop produces eight elements but you already defined the first element for each variable as 0 , if you want to know what i mean type
xc(2) %which is the first element of loop but second element of the vector itself
xc(1) %which will be zero because it's predefined

标签

Community Treasure Hunt

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

Start Hunting!

Translated by