#include <stdio.h>
#include <stdlib.h>
void te( int i) ;
int main( ) {
int win, lose, draw;
win = lose = draw = 0 ;
int jibun, aite;
srand ( 0 ) ;
while ( 1 ) {
aite = rand ( ) % 3 ;
printf ( "\n じゃんけん... 1:グー 2:チョキ 3:パー\n " ) ;
do {
scanf ( "%d" , & jibun) ;
} while ( jibun < 1 || 3 < jibun) ;
printf ( "ポイ!\n " ) ;
printf ( "自分 : " ) ;
te( jibun - 1 ) ;
printf ( "\n 相手 : " ) ;
te( aite) ;
switch ( ( 3 + jibun - aite) % 3 ) {
case 0 :
printf ( "\n 勝ち!\n " ) ;
break ;
case 1 :
printf ( "\n 引き分け!\n " ) ;
break ;
case 2 :
printf ( "\n 負け!\n " ) ;
break ;
}
printf ( "続ける? 1:うん ow:いいや\n " ) ;
scanf ( "%d" , & jibun) ;
if ( jibun ! = 1 ) break ;
}
return 0 ;
}
void te( int i) {
switch ( i) {
case 0 :
printf ( "グー" ) ;
break ;
case 1 :
printf ( "チョキ" ) ;
break ;
case 2 :
printf ( "パー" ) ;
break ;
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCnZvaWQgdGUoaW50IGkpOwoKCmludCBtYWluKCkgewoJaW50IHdpbiwgbG9zZSwgZHJhdzsKCXdpbiA9IGxvc2UgPSBkcmF3ID0gMDsKCWludCBqaWJ1biwgYWl0ZTsKCglzcmFuZCgwKTsKCgl3aGlsZSgxKSB7CgkJYWl0ZSA9IHJhbmQoKSAlIDM7CgkJcHJpbnRmKCJcbuOBmOOCg+OCk+OBkeOCky4uLiAxOuOCsOODvCAyOuODgeODp+OCreOAgDM644OR44O8XG4iKTsKCQlkbyB7CgkJCXNjYW5mKCIlZCIsICZqaWJ1bik7CgkJfSB3aGlsZShqaWJ1biA8IDEgfHwgMyA8IGppYnVuKTsKCQkKCQlwcmludGYoIuODneOCpO+8gVxuIik7CgkJcHJpbnRmKCLoh6rliIYgOiAiKTsKCQl0ZShqaWJ1biAtIDEpOwoJCXByaW50ZigiXG7nm7jmiYsgOiAiKTsKCQl0ZShhaXRlKTsKCgkJc3dpdGNoKCgzICsgamlidW4gLSBhaXRlKSAlIDMpIHsKCQljYXNlIDA6CgkJCXByaW50ZigiXG7li53jgaHvvIFcbiIpOwoJCQlicmVhazsKCQljYXNlIDE6CgkJCXByaW50ZigiXG7lvJXjgY3liIbjgZHvvIFcbiIpOwoJCQlicmVhazsKCQljYXNlIDI6CgkJCXByaW50ZigiXG7osqDjgZHvvIFcbiIpOwoJCQlicmVhazsKCQl9CgkJcHJpbnRmKCLntprjgZHjgovvvJ8gMTrjgYbjgpMgb3c644GE44GE44KEXG4iKTsKCQlzY2FuZigiJWQiLCAmamlidW4pOwoJCWlmKGppYnVuICE9IDEpIGJyZWFrOwoJfQoJcmV0dXJuIDA7Cn0KCnZvaWQgdGUoaW50IGkpIHsKCXN3aXRjaChpKSB7CgljYXNlIDA6CgkJcHJpbnRmKCLjgrDjg7wiKTsKCQlicmVhazsKCWNhc2UgMToKCQlwcmludGYoIuODgeODp+OCrSIpOwoJCWJyZWFrOwoJY2FzZSAyOgoJCXByaW50Zigi44OR44O8Iik7CgkJYnJlYWs7Cgl9Cn0=
compilation info
prog.cpp: In function ‘int main()’:
prog.cpp:18: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result
prog.cpp:39: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result
stdout
じゃんけん... 1:グー 2:チョキ 3:パー
ポイ!
自分 : グー
相手 : チョキ
勝ち!
続ける? 1:うん ow:いいや
じゃんけん... 1:グー 2:チョキ 3:パー
ポイ!
自分 : チョキ
相手 : チョキ
引き分け!
続ける? 1:うん ow:いいや
じゃんけん... 1:グー 2:チョキ 3:パー
ポイ!
自分 : パー
相手 : グー
勝ち!
続ける? 1:うん ow:いいや
じゃんけん... 1:グー 2:チョキ 3:パー
ポイ!
自分 : グー
相手 : チョキ
勝ち!
続ける? 1:うん ow:いいや
じゃんけん... 1:グー 2:チョキ 3:パー
ポイ!
自分 : チョキ
相手 : パー
勝ち!
続ける? 1:うん ow:いいや