How do i convert this for loop into a while loop?

3 次查看(过去 30 天)
I just couldn't figure out how to convert it into a while loop. here is the code:
clc;
clear;
clear all;
n=input('Enter the number of elements in your array:'); % number of array elements
for i=1:n
values(i)=input('Enter the values:')
if values(i)<0
values(i)=values(i)*(-1)
end
end
for k=1:(n-1)
d=k+1
Xaverage(k)=(values(d)+values(k))/2
end
y=1:1:n;
plot(values,y)
hold on
z=1:1:(n-1);
plot(Xaverage,z)
  1 个评论
Ilker Enes Çirkin
Ilker Enes Çirkin 2019-5-28
this is what i have tried so far:
clc;
clear;
clear all;
n=input('Enter the number of elements in your array:'); % number of array elements
i=1;
while i<n
values(i)=input('Enter the values:');
if values(i)<0
values(i)=values(i)*(-1)
end
end
k=1;
while k<(n-1)
d=k+1
Xaverage(k)=(values(d)+values(k))/2
end
y=1:1:n;
plot(values,y)
hold on
z=1:1:(n-1);
plot(Xaverage,z)

请先登录,再进行评论。

采纳的回答

James Tursa
James Tursa 2019-5-28
This for loop:
for i=1:n
% stuff
end
is equivalent to this while loop:
i = 1;
while i <= n
% stuff
i = i + 1;
end
Your biggest problem is you never increment i or k in your while loops.
  2 个评论
Ilker Enes Çirkin
Ilker Enes Çirkin 2019-5-28
yes ı noticed that after i shared this but after changing it i get the error saying Index exceeds the number of array elements (2).

请先登录,再进行评论。

更多回答(1 个)

Ilker Enes Çirkin
Ilker Enes Çirkin 2019-5-28
This is my current code:
n=input('Enter the number of elements in your array:'); % number of array elements
i=1;
while i<=n
i=i+1;
values(i)=input('Enter the values:')
if values(i)<0
values(i)=values(i)*(-1)
end
end
k=1;
while k<=(n-1)
k=k+1;
d=k+1
Xaverage(k)=(values(d)+values(k))/2
end
y=1:1:n;
plot(values,y)
hold on
z=1:1:(n-1);
plot(Xaverage,z)
  2 个评论
James Tursa
James Tursa 2019-5-28
You did not copy the form of the while loop correctly. Incrementing the index variable is the LAST thing you do in the loop as I have written it. So your i=i+1 and k=k+1 lines need to be the LAST things you do in the loop, not the first.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

尚未输入任何标签。

产品


版本

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by