demi rose大尺度:pascal约瑟夫问题答案
来源:百度文库 编辑:高校问答 时间:2024/03/29 13:37:50
program l_1(input,output);
type
arrtype=array[1..10] of integer;
var
a:arrtype;
i,t:integer;
procedure find(i:integer);
var
j:integer;
begin
for j:=0 to i do
if t<10 then t:=t+1 else t:=1;
a[t]:=a[t]+1;
end;
begin
t:=3;
fillchar(a,sizeof(a),0);
a[t]:=1;
for i:=2 to 1000 do
find(i);
for i:=1 to 10 do
if a[i]=0 then write(i:8);
writeln;
end.
等一下答案就来了
http://zhidao.baidu.com/question/3721374.html
【参考程序1】
const
holenumber=10;
var var
hole:array[0..holenumber] l,f,t:integer;
of 0..1; a:array[1..m+1] of 0..1;
step,i,number:longint; begin
begin for t:=1 to m do
for i:=0 to 9 do hole[i]:=0; a[t]:=0;
number:=0; f:=0; t:=0; l:=0;
for step:=1 to 1000 do begin repeat
number:=number+step; l:=l+1;
i:=number mod holenumber; t:=t+l;
hole[i]:=1; if t>m+1 then t:=t mod m;
end; if t=0 then t:=10;
for i:=0 to holenumber-1 do a[t]:=1;
if hole[i]=0 then write(i:3); f:=f+1;
readln; until f=1000;
end. for t:=1 to 10 do
if a[t]=0 then write(t,' ');
readln
end.
拜托!这个不是约瑟夫问题!约瑟夫问题是猴子选大王问题!