プログラミング初心者で最近delphiを始めたのですが、whileループが上手く動かせません・・。
じゃんけんのゲームで、あいこの場合は繰り返しにしたいのですが、
下のプログラムの間違っている点をどなたか教えてください。
program janken;
{$APPTYPE CONSOLE}
uses
SysUtils;
var you,com,loop:integer;
begin
{ TODO -oUser -cConsole Main : この下にコードを記述してください }
loop:=0;
randomize;
writeln('☆じゃんけんゲームです。☆');
writeln('');
writeln('最初はグ〜!じゃんけん・・・');
while loop<1 do
begin
writeln('');
writeln('(グー→0 チョキ→1 パー→2)');
readln(you);
com:=(Random(3));
writeln('');
case you of
0:begin
writeln('あなた→グー');
loop:=loop+1;
end;
1:begin
writeln('あなた→チョキ');
loop:=loop+1;
end;
2:begin
writeln('あなた→パー');
loop:=loop+1;
end;
end;
case com of
0:begin
writeln('コンピューター→グー');
loop:=loop+1;
end;
1:begin
writeln('コンピューター→チョキ');
loop:=loop+1;
end;
2:begin
writeln('コンピューター→パー');
loop:=loop+1;
end;
end;
writeln('');
if (com-you=1)or(com-you=-2)then
begin
writeln('あなたの勝ちです')
end
else
begin
if com=you then
writeln('あいこで〜・・・')
else
writeln('あなたの負けです');
loop:=loop+1;
end;
end;
readln;
end.
よろしくおねがいします。
loopでWhileの制御をしているからです。
勝ち負けの場合だけInc(loop)すれば続くと思います。
あ・・なんだか馬鹿なミスをしていましたね・・(^^;
ありがとうございました!
ツイート | ![]() |