MATLAB Answers

Problem with for loop

1 view (last 30 days)
Oscar Espinosa
Oscar Espinosa on 15 Nov 2018
Answered: madhan ravi on 15 Nov 2018
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);
xc(i) = (xp(i-1)+xp(i))/2;
yc(i) = (yp(i-1)+yp(i))/2;

  1 Comment

Adam on 15 Nov 2018
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.

Sign in to comment.

Answers (1)

madhan ravi
madhan ravi on 15 Nov 2018
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


Sign in to comment.

Community Treasure Hunt

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

Start Hunting!