主题:这副牌我怎么老玩不好啊???
有52张扑克牌,使它们全部下面朝上。从第2张牌开始,把凡是2的倍数位置上的牌翻成下面朝下,接着从第3张牌开始,把凡是3的倍数位置上的牌下面朝上的番成下面朝下,正面朝下的翻成正面朝上,接着从第4张牌开始,把凡是4的倍数位置上的牌按此规律翻转。依此类推,直到第2张要翻的牌是第52张牌为止。统计最后有几张牌正面朝上,并打印出它们的位置。
本人已给出了一个程序,可老是运行不起来,怎么回事啊!!
program p1;
var
a:array[1..52] of integer;
i,k:integer;
begin
for i:=1 to 52 do
while k<=52 do
k:=1;
a[i]:=1;
if k mod i=0 then
a[i]:=a[i]*-1
else a[i]:=a[i]*1;
k:=k+1;
end;
if a[i]=1 then
writeln(i)
end.
本人已给出了一个程序,可老是运行不起来,怎么回事啊!!
program p1;
var
a:array[1..52] of integer;
i,k:integer;
begin
for i:=1 to 52 do
while k<=52 do
k:=1;
a[i]:=1;
if k mod i=0 then
a[i]:=a[i]*-1
else a[i]:=a[i]*1;
k:=k+1;
end;
if a[i]=1 then
writeln(i)
end.