Error in following matlab code.
1 回表示 (過去 30 日間)
古いコメントを表示
Error in following codes
for i = 1:12
if i == 12
x1 = 9
end
x1 = [1];
x2 = [3];
if i == 1
x1 = 2
else
x1(i) = x1(i-1) - x2;
end
x = [x1 x2]
end
When i run it it shows following error please help me to solve error.
Array indices must be positive integers or logical values.
3 件のコメント
Image Analyst
2019 年 2 月 3 日
Yes, but did Star's answer below solve your problem or not? Did you even try it?
回答 (1 件)
Star Strider
2019 年 1 月 26 日
The error comes from your current calculation of ‘x1’ as:
x1(i) = x1(i-1) - x2;
In the first iteration,i=1 so (i-1)=0. In MATLAB, indices are integers greater than 0, or logical values.
I am not certain this ‘corrected’ version of your code creates the values for ‘x’ that you want. However, it has the virtue of running without error:
for i = 1:12
if i == 12
x1(i) = 9;
end
x1(i) = [1];
x2 = [3];
if i == 1
x1(i) = 2;
else
x1(i+1) = x1(i) - x2;
end
x(i,:) = [x1(i) x2];
end
Experiment to get the result you want.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Startup and Shutdown についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!