返回列表 發帖

我有問題??

  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. }
複製代碼

我後來發現你的程式不是陣列的問題,因為你是從0放到9共10個整數,所以你用1到9是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!6 v0 g0 e( o8 `1 Y' e
# ?! a; Z  N, d; v: c4 E$ N
public class TQC104 {
3 C" d& ], F5 \! R6 N        private static final boolean Expression = false;4 T6 K7 T. K" j$ D/ O
# A  U: k2 ^# F& j
        public static void main(String args [] )
6 U1 ~4 {7 z+ c      {
  d* v9 }# g& }7 Z' c; k            int a[]={0,1,2,3,4,5,6,7,8,9};
/ u  s% T! K4 [9 I! X        boolean check=false;* t& z8 f5 C& O0 f
            int i, j, c1, c2, c3, c4, c5, c6, c7, c8;
4 q9 m* d" H" z            do2 S2 I! d. d' }# R. i
            {; P6 Q  W  u8 f% G% A: I
            for( i=1 ; i<a.length ; i++)# T) r  O, R6 W5 q
       {
2 Z0 h1 p* W2 ~: ?, v         j=(int)(Math.random()*9)+1;
; ^8 U/ z/ u( r; L, S! R, I         a[0] = a[i];% R; p! G* f( F$ p/ s3 {# h
         a[i] = a[j];
$ g3 y- l( W4 B  T0 e) J5 q3 o         a[j] = a[0];
/ ~: Y6 i; f9 u8 [3 O3 d       }
& v! B0 l3 E0 D) r        c1 = a[1] + a[2] + a[3];( e; w6 L: A; V. O0 p
        c2 = a[4] + a[5] + a[6];
! S1 G, E( }; W% x        c3 = a[7] + a[8] + a[9];; n" u# o$ \7 A) P# l' Q
        c4 = a[1] + a[4] + a[7];3 V9 C+ b3 g- C8 S2 v1 ~* t- r9 N
        c5 = a[2] + a[5] + a[8];
5 u/ k0 i  |  k5 k' w1 k3 i        c6 = a[3] + a[6] + a[9];
  u' t7 y3 j+ [1 x        c7 = a[1] + a[5] + a[9];
1 w9 @  o8 m4 E1 E/ K        c8 = a[3] + a[5] + a[7];4 ?) ?0 h6 v" W* ?
        if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)
( I) R% L1 V8 ^, \       {6 e/ D5 W! N6 |2 c
        check = true;3 D: o! l& C0 l' C1 X- p" {5 @
       }5 r+ O3 ^. z2 L; l
            }while(Expression);
! c8 P8 z3 {' Y9 b8 S       & M: ?' U) }" H0 t& J+ l. U
          System.out.println("answer:");# n7 a' i5 k' c1 O7 y# Z
          System.out.println(a[1] + " " + a[2] + " " + a[3]);/ V2 d" F6 v; h1 c6 e$ Q0 Q2 d
          System.out.println(a[4] + " " + a[5] + " " + a[6]);# U) Q& _' n+ J- _# Y& G
          System.out.println(a[7] + " " + a[8] + " " + a[9]);
7 \0 v. R% U4 s: L, o         System.out.println("不論橫向縱向及對角線加起來的和都是:15");) E. G2 u9 F& a( T7 T
    }5 L' I# x$ M: E; o* m6 y  v
}

TOP

返回列表