Board logo

標題: 我有問題?? [打印本頁]

作者: 許逸瑋    時間: 2012-8-30 22:17     標題: 我有問題??

  1. public class TQC104 {
  2.         private static final boolean Expression = false;

  3.         public static void main(String args [] )
  4.       {
  5.             int a[]={0,1,2,3,4,5,6,7,8,9};
  6.         boolean check=false;
  7.             int i, j, c1, c2, c3, c4, c5, c6, c7, c8;
  8.             do
  9.             {
  10.             for( i=1 ; i<a.length ; i++)
  11.        {
  12.          j=(int)(Math.random()*9)+1;
  13.          a[0] = a[i];
  14.          a[i] = a[j];
  15.          a[j] = a[0];
  16.        }
  17.         c1 = a[1] + a[2] + a[3];
  18.         c2 = a[4] + a[5] + a[6];
  19.         c3 = a[7] + a[8] + a[9];
  20.         c4 = a[1] + a[4] + a[7];
  21.         c5 = a[2] + a[5] + a[8];
  22.         c6 = a[3] + a[6] + a[9];
  23.         c7 = a[1] + a[5] + a[9];
  24.         c8 = a[3] + a[5] + a[7];
  25.         if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)
  26.        {
  27.         check = true;
  28.        }while(Expression);
  29.        {
  30.   System.out.println("answer:");
  31.   System.out.println(a[1] + " " + a[2] + " " + a[3]);
  32.   System.out.println(a[4] + " " + a[5] + " " + a[6]);
  33.   System.out.println(a[7] + " " + a[8] + " " + a[9]);
  34. System.out.println("不論橫向縱向及對角線加起來的和都是:15");
  35.        }
  36.       }
  37.     }
  38. }
複製代碼

作者: ray    時間: 2012-9-1 22:14

我後來發現你的程式不是陣列的問題,因為你是從0放到9共10個整數,所以你用1到9是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!
4 B, V2 J! B* B6 i, m+ J0 G6 M0 l( B6 d: Y# F
public class TQC104 {
$ _$ `6 ~4 L+ `( [0 z( K7 }% o" ]) t7 o        private static final boolean Expression = false;
2 p3 F2 x* k- _- }% t. @
- x! H3 E6 M6 `- k: n' W        public static void main(String args [] )8 a2 T* v2 |; B' z4 j
      {7 `3 ^" z$ v' r0 J) _9 X
            int a[]={0,1,2,3,4,5,6,7,8,9};
8 N) d8 u1 t) B2 C& G9 C        boolean check=false;
7 W$ t4 b! g# W* E4 {+ P            int i, j, c1, c2, c3, c4, c5, c6, c7, c8;
% F7 J! d2 O! _5 S" K8 e            do) Q3 y# }! n& ^5 Q$ K3 r6 d$ C
            {- ]( w0 K* f+ _) `2 v' K5 f" r
            for( i=1 ; i<a.length ; i++), w  q/ R6 e$ O& |: D4 ~! w
       {
& b: M4 r3 ~2 D- Y1 O* I         j=(int)(Math.random()*9)+1;8 @! z3 j6 T( V7 C* S) N! u8 s
         a[0] = a[i];$ r' Z2 s% Z8 n. {5 ^
         a[i] = a[j];
* k4 K: l# U4 Q         a[j] = a[0];  X* @( @* j' H; @7 I
       }+ D* A# B9 ]7 Q5 C4 g  Y2 I
        c1 = a[1] + a[2] + a[3];
: T4 k* P( j1 F        c2 = a[4] + a[5] + a[6];. z: e4 B1 B. Q0 M" e
        c3 = a[7] + a[8] + a[9];: M, r" F( F% X- y
        c4 = a[1] + a[4] + a[7];
' S  |# a" A$ [+ _* ]) Q8 I* r        c5 = a[2] + a[5] + a[8];) R# ^2 S; d- F) X$ ~
        c6 = a[3] + a[6] + a[9];7 \% P6 @6 m9 l. m$ V3 _
        c7 = a[1] + a[5] + a[9];
% {% d4 O6 M; B  I        c8 = a[3] + a[5] + a[7];
( ^# j. d. t' G; G2 h( l' n        if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)# E$ O6 O4 X" C- `' ^
       {
$ ^3 W4 u& l: Q- N" R/ q        check = true;
- t! B. p/ s# G+ K+ X       }
6 ?5 K/ X; I$ C$ U7 ^            }while(Expression);
/ M1 l" }: y& |0 I+ N       / ]  k7 q. g5 \2 n
          System.out.println("answer:");) e6 t: h& c/ Q! v% v/ b( Q
          System.out.println(a[1] + " " + a[2] + " " + a[3]);) N$ N/ B  r) w; ]
          System.out.println(a[4] + " " + a[5] + " " + a[6]);
, c: v# [& w( W& m* U3 B4 C          System.out.println(a[7] + " " + a[8] + " " + a[9]);/ ?2 [' R/ J& u' x, q2 @* O
         System.out.println("不論橫向縱向及對角線加起來的和都是:15");2 Q+ O$ `" o0 R9 m* Z) t6 m: e
    }, V" M4 B  w- N, _. c
}




歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/) Powered by Discuz! 7.2