MATLAB程序 20
n个人围成一圈,按序列编号。从第1个人开始报数,数到m时该人退出,并且下一个从1重新开始报数,求出出圈人的顺序。我写了个程序如下,但是运行起来貌似有点问题,哪位大神能帮我...
n个人围成一圈,按序列编号。从第1个人开始报数,数到m时该人退出,并且下一个从1重新开始报数,求出出圈人的顺序。
我写了个程序如下,但是运行起来貌似有点问题,哪位大神能帮我改改,,在哪里错了。
n=input('输入有多少个人');
m=input('输入数到第几个人的时候该人退出');
k=1;
while (k<=n) %把人排好位置
a(1,k)=k;
k=k+1;
end
i=1;
num=n;
while(i<=num)
b(i)=a(i,m); %出圈人放在这个矩阵内
for (j=1:(n-m))
a(i+1,j)=a(i,m+j);
end
for (j=(m-1):1)
a(i+1,n-m+1)=a(i,m-j);
end
i=i+1;
n=n-1;
end
disp(b) 展开
我写了个程序如下,但是运行起来貌似有点问题,哪位大神能帮我改改,,在哪里错了。
n=input('输入有多少个人');
m=input('输入数到第几个人的时候该人退出');
k=1;
while (k<=n) %把人排好位置
a(1,k)=k;
k=k+1;
end
i=1;
num=n;
while(i<=num)
b(i)=a(i,m); %出圈人放在这个矩阵内
for (j=1:(n-m))
a(i+1,j)=a(i,m+j);
end
for (j=(m-1):1)
a(i+1,n-m+1)=a(i,m-j);
end
i=i+1;
n=n-1;
end
disp(b) 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询