Re: [借擺一下] [C]偷來的反猜數字

看板cksh82nd304作者 (丸)時間19年前 (2005/01/12 02:17), 編輯推噓5(500)
留言5則, 4人參與, 最新討論串2/2 (看更多)
靠...我來報到了^^ ※ 引述《kurotanshi (富貴險中求啊... Q_Q)》之銘言: : #include <stdio.h> : #include <stdlib.h> : #include <time.h> : int way[4]; : int way2[4]; : void fen(int i){ : way[0] = i / 1000; : way[1] = i / 100 - 10 * way[0]; : way[3] = i % 10; : way[2] = (i % 100) / 10; : } : void fen2(int i){ : way2[0] = i / 1000; : way2[1] = i / 100 - 10 * way2[0]; : way2[2] = (i % 100) / 10; : way2[3] = i % 10; : } : int main(void){ : int num[9999]; : int i,j = 0 , k = 0; : int a,b; : int guess; : srand(time(0)); : for (i = 0 ; i < 9999 ; i ++){ : fen(i); : if (way[0] == way[1] || way[1] == way[2] || way[2] == way[3] || : way[0] == way[2] || way[1] == way[3] || way[0] == way[3]) : continue; : num[j++] = i; : } : i = 0; : do { : if (!i){ : do { : guess = rand() % 10000; : fen(guess); : } while(way[0] == way[1] || way[1] == way[2] || way[2] == way[3] : || : way[0] == way[2] || way[1] == way[3] || way[0] == : way[3]); : if (guess < 1000) printf("0"); : printf("%d\n",guess); : printf("?A?B(Ex:1A2B):"); : scanf("%dA%dB",&a,&b); : i ++; : } : else { : k = 0; : for (j = 0 ; num[j] ; j++ ){ : int aa = 0 ,bb = 0; : fen2(guess); : fen(num[j]); : if (way[0] == way2[0]) aa ++; : if (way[1] == way2[1]) aa ++; : if (way[2] == way2[2]) aa ++; : if (way[3] == way2[3]) aa ++; : if (way[0] == way2[1] || way[0] == way2[2] || way[0] == : way2[3]) bb++; : if (way[1] == way2[0] || way[1] == way2[2] || way[1] == : way2[3]) bb++; : if (way[2] == way2[1] || way[2] == way2[0] || way[2] == : way2[3]) bb++; : if (way[3] == way2[1] || way[3] == way2[2] || way[3] == : way2[0]) bb++; : if (aa == a && bb == b){ : num[k++] = num[j]; : } : } : num[k] = 0; : j = rand() % k; : guess = num[j]; : if (guess < 1000) printf("0"); : printf("%d\n",guess); : printf("?A?B(Ex:1A2B):"); : scanf("%dA%dB",&a,&b); : i ++; : } : } while (a != 4); : return 0; : } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.117.199.145

140.119.41.135 01/12, , 1F
你是誰阿 要不要留一下埃低自界表說
140.119.41.135 01/12, 1F

218.184.186.29 01/12, , 2F
應該是新凱吧
218.184.186.29 01/12, 2F

210.85.184.112 01/12, , 3F
去自我介紹啦 pulsar1 ???哪為阿
210.85.184.112 01/12, 3F

218.167.80.149 01/12, , 4F
有個'丸'字 是丸新凱吧?(為啥叫丸新凱)
218.167.80.149 01/12, 4F

210.85.184.112 01/12, , 5F
八成在裝可愛吧!!!哈哈~~~~~
210.85.184.112 01/12, 5F
文章代碼(AID): #11v1XMJw (cksh82nd304)
文章代碼(AID): #11v1XMJw (cksh82nd304)