ヌメロンの対戦相手
前http://okwave.jp/qa/q7834519.html
で質問してとりあえず1人でやるのはできたんですが
1人だとおもしろくないのでコンピュータの対戦相手
をつくりたいと思いました。
でもプログラムがさっぱりわかりません。
どんなプログラムにすればいいでしょうか?
もうひとつは一応答えをつくるところはかぶる数字がでる
確立はかなり低いと思うんですが確率が0%ではないので0%にする方法も
教えていただければ幸いです
#include <time.h>
#include <stdlib.h>
#include <windows.h>
#include<stdio.h>
int kotae,kotae1,kotae2,kotae3;//答え、答え1桁目、答え2桁目、答え3桁目
int yosou,yosou1,yosou2,yosou3;//予想、予想1桁目、予想2桁目、予想3桁目
int Ekaunnta;//イートカウンタ
int Bkaunnta;//バイトカウンタ
int i=0;
int z=0;
int kota(void);
int guess(void);
int yoso(void);
int main(){
printf("==========================================================\n");
printf(" ヌメロン \n");
printf(" コンピュータの数字を当ててください \n");
printf("==========================================================-\n");
kota();
while(i==0){
yoso();
guess();
if(yosou==kotae){
i=1;
printf("正解!!");
}
}
rewind(stdin);
getchar();
}
int kota(void){//答えを作る関数
srand((unsigned)time(NULL));
kotae1=rand() %9+1;
kotae2=rand() %9+1;
kotae3=rand() %9+1;
while(z<1000){
if(kotae1==kotae2){
kotae1=rand() %9+1;
}
if(kotae1==kotae3){
kotae1=rand() %9+1;
}
if(kotae2==kotae3){
kotae2=rand() %9+1;
}
z++;
}
kotae=kotae1+kotae2*10+kotae3*100;
return 0;
}
int guess(void){//イート バイトを判定する関数
//----------イート判定---------
if(yosou1==kotae1){
Ekaunnta=Ekaunnta+1;
}
if(yosou2==kotae2){
Ekaunnta=Ekaunnta+1;
}
if(yosou3==kotae3){
Ekaunnta=Ekaunnta+1;
}
//--------------ここまで-------
//--------------バイト判定------
if(yosou1==kotae2){
Bkaunnta=Bkaunnta+1;
}
if(yosou1==kotae3){
Bkaunnta=Bkaunnta+1;
}
if(yosou2==kotae1){
Bkaunnta=Bkaunnta+1;
}
if(yosou2==kotae3){
Bkaunnta=Bkaunnta+1;
}
if(yosou3==kotae1){
Bkaunnta=Bkaunnta+1;
}
if(yosou3==kotae2){
Bkaunnta=Bkaunnta+1;
}
//------------ここまで---------
printf("%dE ",Ekaunnta);
printf("%dB\n",Bkaunnta);
Ekaunnta=0;
Bkaunnta=0;
return 0;
}
int yoso(void){//予想を入力
printf("あなたの予想3桁目:");
scanf("%d",&yosou3);
printf("あなたの予想2桁目:");
scanf("%d",&yosou2);
printf("あなたの予想1桁目:");
scanf("%d",&yosou1);
yosou=yosou1+yosou2*10+yosou3*100;
printf("あなたの予想:%d\n",yosou);
return 0;
}
とりあえずプログラムはこんな感じです。
かなりわかりにくいとは思いますが回答よろしくお願いします。
お礼
ありがとうございました