Error in following matlab code.
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
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 comentarios
Image Analyst
el 3 de Feb. de 2019
Yes, but did Star's answer below solve your problem or not? Did you even try it?
Respuestas (1)
Star Strider
el 26 de En. de 2019
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 comentarios
Ver también
Categorías
Más información sobre Startup and Shutdown en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!