Re: [承上面]67個if的美學果然不適合小弟...
※ 引述《JazzChen (PhoenixJazz)》之銘言:
: //random number
: int[] D = new int[4];
: D[0] = (int) (Math.random()*10);
: do{
: D[1]=(int) (Math.random()*10);
: } while(D[0] == D[1]);
: do{
: D[2]=(int) (Math.random()*10);
: } while(D[0] == D[2] || D[1] == D[2]);
: do{
: D[3]=(int) (Math.random()*10);
: } while(D[0] == D[3] || D[1] == D[3] || D[2] == D[3]);
想像有一個裝著十個號碼牌的籃子
每次從籃子中抽出一張號碼牌不放回
抽四次就可以得到四個不重複的數字
: //判斷A & B
: int[] R = new int[4];
: int a = 0;
: int b = 0;
: int g = sc.nextInt();//假設前面已宣告過sc了
: for(int i=3; i>=0; i--) {
: R[i] = g%10;
: g = g/10;
: } //把輸入的值設為陣列
: for(int i=0; i<4; i++) //判斷A
: if (D[i] == R[i]) a++;
: for(int i=0; i<4; i++) //判斷B
: for(int j=0; j<4; j++)
: if (i!=j && D[i] == R[j]) b++;
建議判斷A、B用字元陣列陣列比較理想
例如答案是 0123 ,這樣的答案會不存在
況且沒有處理使用者輸入相同數字的情況
例如輸入 1111 ,如果有 1 ,就會得到 1A3B
: //輸出輸入便不寫了,偷懶一下
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.169.143.192
→
10/17 15:07, , 1F
10/17 15:07, 1F
→
10/17 15:15, , 2F
10/17 15:15, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 4 之 8 篇):