#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void)
{
int num1, num2, num3, num4;
int user, user1, user2, user3, user4;
int hit, blow, count;
//当たりの数値を決める
srand(time(NULL));
num1=rand()%10;
while (1) {
num2=rand()%10;
if (num2!=num1) {
break;
}
}
while (1) {
num3=rand()%10;
if (num3!=num1 && num3!=num2) {
break;
}
}
while (1) {
num4=rand()%10;
if (num4!=num1 && num4!=num2 && num4!=num3) {
break;
}
}
//printf("%d%d%d%d\n",num4,num3,num2,num1); //動作確認用(本番は使わない)
//ゲーム開始
count=1;
printf("重複しない4つの数字:");
while(1) {
while (1) {
scanf("%d",&user);
user4=user/1000;
user3=(user/100)%10;
user2=(user/10)%10;
user1=user%10;
if (user1!=user2 && user1!=user3 && user2!=user3 && user1!=user4 && user2!=user4 && user3!=user4) {
break;
}
printf("重複してます!重複しない4つの数字:");
}
//当たったら終了
if (user1==num1 && user2==num2 && user3==num3 && user4==num4) {
break;
}
//はずれたらヒット数とブロー数を表示
hit=0;
blow=0;
if (user1==num1) {
hit++;
}
if (user2==num2) {
hit++;
}
if (user3==num3) {
hit++;
}
if (user4==num4) {
hit++;
}
if (user1==num2 || user1==num3 || user1==num4) {
blow++;
}
if (user2==num1 || user2==num3 || user2==num4) {
blow++;
}
if (user3==num1 || user3==num2 || user3==num4) {
blow++;
}
if (user4==num1 || user4==num2 || user4==num3) {
blow++;
}
printf("%dヒット%dブロ−\n",hit,blow);
printf("次の数値:");
count++;
}
printf("%d回で当たりました!\n",count);
return 0;
}