problem with loops and conditional statements
1 次查看(过去 30 天)
显示 更早的评论
I am writing a simple program with if loop inside a for loop but the program gets stopped in middle with error:
Index exceeds the number of array elements. Index must not exceed 1.
Error in newtrial (line 19)
Y(i) = Y(i) + 1;
and the plot is not generated as well even for values generated.
the code is:
clc
clear
x1 = 5
y1 = 3
x0 = 0
y0 = 0
dx = x1-x0
dy = y1-y0
e = dy-dx
X = x0
Y = y0
for i = 1:1:5;
X(i+1) = X(i) + 1
if e(i) >= 0
Y(i+1) = Y(i) + 1;
e(i+1) = e(i) - dx;
else
e(i+1) = e(i) + dy;
end
end
Y
plot(X,Y,'bo')
axis([0 6 0 6])
I am new to this, so any help or correction in code is appreciated, thanks in advance.
0 个评论
采纳的回答
AMIT
2024-8-11
the problem is with the statement Y(i+1) = Y(i) + 1; in the second iteration it is trying to update the Y(3) with Y(2)+1 when during the first iteration the value of Y(2) is not updated in the else statement. try to rectify within the else statement for Y.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!