Turbo Pascal编程题目
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/12 15:36:06
Turbo Pascal编程题目
用Turbo Pascal一维数组(与循环)做下面的题目(要详细程序):
N只猴子围成一圈选大王.选举方式如下:1、2、3报数,数到3的猴子退出圈外.直到剩下一只猴子为止,这只猴子就是大王.键盘输入n,输出猴王的编号.
分析:
循环的问题:x:=n;
repeat
until 猴子数=1;
I=1、2、3…n、1、2、3…n
I:=I+1; if I>n then I:=I-n;
报数计数器 t
if a[I]0 then t:=t+1
猴子出圈
if t=3 then [a[I]:=0;t:=0;x:=x-1]
急用,
用Turbo Pascal一维数组(与循环)做下面的题目(要详细程序):
N只猴子围成一圈选大王.选举方式如下:1、2、3报数,数到3的猴子退出圈外.直到剩下一只猴子为止,这只猴子就是大王.键盘输入n,输出猴王的编号.
分析:
循环的问题:x:=n;
repeat
until 猴子数=1;
I=1、2、3…n、1、2、3…n
I:=I+1; if I>n then I:=I-n;
报数计数器 t
if a[I]0 then t:=t+1
猴子出圈
if t=3 then [a[I]:=0;t:=0;x:=x-1]
急用,
Const
n=3;
Var
a:Array [1..1000] of integer;
i,m,j,s:integer;
Begin
For i:=1 to m do
a[i]:=1;
read(m);
j:=0;
For i:=1 to m do
Begin
s:=0;
While sm
Then j:=1;
s:=s+a[j]
End;
Writeln(j);
a[j]:=0
End
End.
n=3;
Var
a:Array [1..1000] of integer;
i,m,j,s:integer;
Begin
For i:=1 to m do
a[i]:=1;
read(m);
j:=0;
For i:=1 to m do
Begin
s:=0;
While sm
Then j:=1;
s:=s+a[j]
End;
Writeln(j);
a[j]:=0
End
End.