/* janken.c
Function: じゃんけんゲーム
Author: Ken
Date: 02/05/25
URL: http://blue.ribbon.to/~kenweb/
mail: kenweb@s8.xrea.com
*/
#include <stdio.h>
#include <stdlib.h> /*乱数を発生させる関数が入っている*/
#include <time.h> /*乱数初期化時に必要*/
int main()
{
int user=0,cpu=0,win=0,lose=0,cont=0,hantei=0,aiko=0; /*変数宣言*/
fprintf(stdout,"じゃんけんゲーム!\n\n");
while(1) /*じゃんけんプログラムループ内*/
{
if ((hantei==-2||hantei==1)&&win>=2) fprintf(stdout,"只今あなたの%d連勝中です\n",win);
if ((hantei==2||hantei==-1)&&lose>=2) fprintf(stdout,"只今あなたの%d連敗中です\n",lose);
user=0;
srand((unsigned)time(NULL)); /*←乱数初期化*/ /*CPUの入力(乱数)*/
while(user>3||user==0)
{
cpu=rand() % 3; /*←乱数の発生*/
if (aiko==1) fprintf(stdout,"あいこでしょ! (1:グー 2:チョキ 3:パー)\n");
else fprintf(stdout,"\nじゃんけんぽい! (1:グー 2:チョキ 3:パー)\n");
fscanf(stdin,"%d",&user); /*ユーザーの入力*/
aiko=0;
}
user = user-1;
fprintf(stdout,"あなた:"); /*出力*/
if (user==0) fprintf(stdout,"グー\n");
else if (user==1) fprintf(stdout,"チョキ\n");
else if (user==2) fprintf(stdout,"パー\n");
fprintf(stdout,"CPU:");
if (cpu==0) fprintf(stdout,"グー\n");
else if (cpu==1) fprintf(stdout,"チョキ\n");
else if (cpu==2) fprintf(stdout,"パー\n");
hantei=cpu-user; /*勝ち負け判定*/
if(hantei==1||hantei==-2)
{
fprintf(stdout,"あなたの勝ちです!!\n\n");
win=win+1;
lose=0;
}
else if(hantei==2||hantei==-1)
{
fprintf(stdout,"残念。あなたの負けです。\n\n" );
win=0;
lose=lose+1;
}
else if(hantei==0) aiko=1;
if (hantei>=1||hantei<=-1) /*ゲーム再開*/
{
fprintf(stdout,"まだ続けますか? (YES:1 NO:0)\n");
fscanf(stdin,"%d",&cont);
system("cls") ;
if (cont==0) break;
}
}
return(0);
}