matlab for循环语句clc;close all;clear all;x=1;y=1;T=1;A=[3,4,5];for i=1:3N=A(i);t=x;x=x+y;y=t+2*y;while =1&y~=1;T=T+1;if x>Nx=mod(x,N);endif y>Ny=mod(y,N);endt=x;x=x+y;y=t+2*y;enddisp(T);end我本意是想调用 数组A内的数来计算不同阶
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/07 14:34:22
matlab for循环语句clc;close all;clear all;x=1;y=1;T=1;A=[3,4,5];for i=1:3N=A(i);t=x;x=x+y;y=t+2*y;while =1&y~=1;T=T+1;if x>Nx=mod(x,N);endif y>Ny=mod(y,N);endt=x;x=x+y;y=t+2*y;enddisp(T);end我本意是想调用 数组A内的数来计算不同阶
matlab for循环语句
clc;
close all;
clear all;
x=1;y=1;
T=1;
A=[3,4,5];
for i=1:3
N=A(i);
t=x;x=x+y;y=t+2*y;
while =1&y~=1;
T=T+1;
if x>N
x=mod(x,N);
end
if y>N
y=mod(y,N);
end
t=x;x=x+y;y=t+2*y;
end
disp(T);
end
我本意是想调用 数组A内的数来计算不同阶数N对应的 arnold置乱周期,所以添加了一个for语句,结果计算的结果与不添加for语句时不一致,请问该怎么修改呀.
未添加for语句时
clc;
close all;
clear all;
x=1;y=1;
T=1;
N=3;
t=x;x=x+y;y=t+2*y;
while =1&y~=1;
T=T+1;
if x>N
x=mod(x,N);
end
if y>N
y=mod(y,N);
end
t=x;x=x+y;y=t+2*y;
end
disp(T);
matlab for循环语句clc;close all;clear all;x=1;y=1;T=1;A=[3,4,5];for i=1:3N=A(i);t=x;x=x+y;y=t+2*y;while =1&y~=1;T=T+1;if x>Nx=mod(x,N);endif y>Ny=mod(y,N);endt=x;x=x+y;y=t+2*y;enddisp(T);end我本意是想调用 数组A内的数来计算不同阶
明明一样的.怎么不一样了、.