返回列表 發帖

我有問題??

  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 x6 b! E& z- x/ O; V9 S5 g
$ u9 @' r4 k3 D9 c5 E
public class TQC104 {
: d' H5 V+ d5 A( g/ p) H. B        private static final boolean Expression = false;
& g$ N- V9 v+ k
1 X# U5 G, A+ b" a8 q        public static void main(String args [] )
* I+ z9 d5 ^$ a8 Z) P      {
  Z8 c. O+ j& Y* Y( Y            int a[]={0,1,2,3,4,5,6,7,8,9};- v! r0 d) [' t, T
        boolean check=false;' A$ \& L5 I# I* V4 I1 R& H, t
            int i, j, c1, c2, c3, c4, c5, c6, c7, c8;
  R$ Z7 V- n# a. \9 G' X$ F            do
8 a! \) m  m* A% c3 W            {" }" J1 F1 l, w4 X) {
            for( i=1 ; i<a.length ; i++)$ U, x' Y( O# A% P" F
       {
4 U& i6 b& i/ m3 L! q/ H* f6 w/ R1 M         j=(int)(Math.random()*9)+1;( `" \4 c( E' H
         a[0] = a[i];' ?* C9 K* ]' G! J& r
         a[i] = a[j];& l9 g% l  k. O, B* f, t' s
         a[j] = a[0];
; L9 `" D- ^( y5 y       }; ^% R$ a' A/ H3 K  `
        c1 = a[1] + a[2] + a[3];1 K" q4 p* Z0 J% F/ m, p
        c2 = a[4] + a[5] + a[6];
& O: x) F0 S: K  A        c3 = a[7] + a[8] + a[9];$ L) X( j8 R+ q4 z3 f+ u
        c4 = a[1] + a[4] + a[7];
. |5 k  d+ e% q! x        c5 = a[2] + a[5] + a[8];" D# ?( W, Z0 n( A' @7 N# g8 M0 G
        c6 = a[3] + a[6] + a[9];; \( G6 W5 |5 F* i
        c7 = a[1] + a[5] + a[9];$ }$ w5 G* `, O
        c8 = a[3] + a[5] + a[7];
% N- Q% {' M6 F4 u2 T% _        if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)2 c8 w4 ^# |- E5 g* U9 c: P: W
       {
( k' i( ^* G/ o& N) B9 A        check = true;: R; j$ W; Z' |6 Q0 h+ n
       }
- @: d" V5 E5 I9 G3 |9 Y            }while(Expression);
: U  G- T$ r$ T/ I2 W# o7 J2 d% x       . {+ J- q' A' V) H2 g( r3 |1 E
          System.out.println("answer:");
& B9 R% h2 _8 I5 n$ V* i          System.out.println(a[1] + " " + a[2] + " " + a[3]);( b2 x1 x$ G& T3 k3 V$ U
          System.out.println(a[4] + " " + a[5] + " " + a[6]);
1 F' j/ R! p8 @2 R          System.out.println(a[7] + " " + a[8] + " " + a[9]);
6 @1 Y/ B# k( t- L         System.out.println("不論橫向縱向及對角線加起來的和都是:15");. d$ Y8 @% r% ]6 T% K# ?
    }5 J; R$ S( c$ {# @& f
}

TOP

返回列表