AとBのじゃんけんを入力して得点を得るプログラムを作りたいです。
グーが1点、チョキが2点、パーが5点です。
点数を表示させることまではできたのですが、出た点数を足していくにはどうしたらよいですか?
片方の点数の合計が21点になるまでか、10回じゃんけんをするまでプログラムを続けたいです。
*以前同じような質問をしましたが、ごちゃごちゃしてしまったので再度掲載しました。
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main(void) { int a = 0; int b = 0; int kaisuu; for (kaisuu = 0; (a < 21) || (b < 21);kaisuu++) { printf("Game input%d: ", kaisuu+1); scanf("%d %d", &a, &b); if ((a == 1 || a == 2 || a == 3) && (b == 1 || b == 2 || b == 3)) { } else { printf("Invalid input (Rock: 1, Scissors: 2, Paper: 3),please try again:"); } switch (a) { case 1: printf("A: Rock,"); break; case 2: printf("A: Scissors,"); break; case 3: printf("A: Paper,"); break; } switch (b) { case 1: printf(" B: Rock;"); break; case 2: printf(" B: Scissors;"); break; case 3: printf(" B: Paper;"); break; } if (a == b) { printf("Draw (points: A 0, B 0)\n"); } else if (a == 1 && b == 2) { printf(" A wins and gets 1 points.\n"); printf("Winner: A (points: A 1, B 0)\n"); } else if (a == 2 && b == 3) { printf(" A wins and gets 2 points.\n"); printf("Winner: A (points: A 2, B 0)\n"); } else if (a == 3 && b == 1) { printf(" A wins and gets 5 points.\n"); printf("Winner: A (points: A 5, B 0)\n"); } else if (a == 1 && b == 3) { printf(" B wins and gets 1 points.\n"); printf("Winner: B (points: A 0, B 5)\n"); } else if (a == 2 && b == 1) { printf(" B wins and gets 1 points.\n"); printf("Winner: B (points: A 0, B 1)\n"); } else if (a == 3 && b == 2) { printf(" B wins and gets 2 points.\n"); printf("Winner: B (points: A 0, B 2)\n"); } } return(0); }
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/04/29 04:04
2018/04/29 09:49