返回列表 發帖

我有問題??

  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是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!5 [, i- k/ o2 i: F" \
$ H" P- N6 r9 `% ]4 ]
public class TQC104 {7 u- E3 k8 M$ @# O2 Z7 z. g* ?
        private static final boolean Expression = false;1 s9 C' w0 `  P1 E* M+ Z# T
* \) C* `% [0 C& q% q
        public static void main(String args [] )
/ X6 e9 l/ Y$ `& w) v7 J/ _; B- ^      {9 S4 h- |0 }7 [$ C& i7 y6 n1 f
            int a[]={0,1,2,3,4,5,6,7,8,9};2 X0 v/ N) B$ t; w) z
        boolean check=false;. D( o$ N" p; R0 {
            int i, j, c1, c2, c3, c4, c5, c6, c7, c8;
; k) f" }$ n: E- [; c0 s            do- ]" s$ B% r, q. B
            {; a2 k# j6 Y  U9 b
            for( i=1 ; i<a.length ; i++)
$ o& {8 x2 l  N; [1 a       {
2 q$ u* @3 }3 e8 Z8 Z  W         j=(int)(Math.random()*9)+1;$ G! x" K- Q8 m+ q% ?/ \$ l
         a[0] = a[i];
9 r+ B, ?9 k8 W# j' a         a[i] = a[j];  P$ z2 m* c/ [! i" f
         a[j] = a[0];
  ?. b% Y) Z$ W  O/ Y, H0 v       }
8 s: n7 y; s# V8 m        c1 = a[1] + a[2] + a[3];
% E' Z% D* ?7 U, `        c2 = a[4] + a[5] + a[6];3 \3 d' O/ a3 V7 v
        c3 = a[7] + a[8] + a[9];
# V6 J% N- t+ Y  \: v6 ^        c4 = a[1] + a[4] + a[7];
2 B2 G5 U: P- c4 M& f7 ~1 P8 y. Y        c5 = a[2] + a[5] + a[8];1 |. k1 C: l, D
        c6 = a[3] + a[6] + a[9];
# \7 ~; Y  N. m! R3 S- L: }8 ^        c7 = a[1] + a[5] + a[9];
) e* z( H3 P4 p2 J/ c, X        c8 = a[3] + a[5] + a[7];$ Q; x4 ?; C( Y6 n8 j
        if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)
+ j& p2 h" b6 l; p( Y* X3 D       {
2 o4 N! X  D5 s/ Z: j+ A. z" c        check = true;
& Z7 X. B9 y  s% H8 `1 Z       }
5 ]- y- T) A! q( u5 B$ y            }while(Expression);5 D0 |- ^# ^  ~) r% m- w; s4 K
       ' [% f/ K$ I  q) o
          System.out.println("answer:");
9 i4 V1 r$ k: k3 H          System.out.println(a[1] + " " + a[2] + " " + a[3]);: s3 \$ o+ B/ O( r) c" k8 j) U9 W' x
          System.out.println(a[4] + " " + a[5] + " " + a[6]);. F1 M8 |% f: \! ?
          System.out.println(a[7] + " " + a[8] + " " + a[9]);" o, `* K+ l. g2 U
         System.out.println("不論橫向縱向及對角線加起來的和都是:15");" F# \7 I: G5 J- V
    }
: j$ R" D% i' k5 B0 H" B2 u  P}

TOP

返回列表