返回列表 發帖

我有問題??

  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是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!/ r) k# t: D! A4 _8 G
) \2 K4 D; i0 S4 m7 i$ o
public class TQC104 {3 @/ q1 \, s  a# b2 b' }. H9 N
        private static final boolean Expression = false;2 t  R# ?4 S  o- b8 y! d9 \1 J

0 t( S2 \6 |+ D5 ~) Q        public static void main(String args [] )
/ U9 G; a  g' W$ c: P0 I      {
2 H7 X, ]9 P6 F% `) B            int a[]={0,1,2,3,4,5,6,7,8,9};' Y! I: U5 D1 ]/ M( `
        boolean check=false;
* o* o: s' t) T! g' J' j" m& h            int i, j, c1, c2, c3, c4, c5, c6, c7, c8;5 j3 Z1 d8 _+ i/ d3 p8 m. i
            do! }$ E7 g, H  m, J- S. j1 W
            {
8 m- N1 A& t& L( s; e. b; G            for( i=1 ; i<a.length ; i++)
* |4 q- p0 O. h: R# e4 [       {6 b4 X+ ?  }$ w+ `1 o3 r! Y, i/ E
         j=(int)(Math.random()*9)+1;/ {* b  {) x+ c4 }& p- A
         a[0] = a[i];: O, Z3 C% I9 Q
         a[i] = a[j];
: t' ~8 A* c7 O/ J$ V- g# V         a[j] = a[0];4 Y( F: U- z  Z, r+ x# y5 ^
       }* g: j+ c1 V  V5 k8 f3 G1 w; y
        c1 = a[1] + a[2] + a[3];
* f6 I# V. u" w  W3 W: e  q4 q# H. V, c        c2 = a[4] + a[5] + a[6];
3 \1 l% N& B1 S2 d% J" X6 T+ g6 v        c3 = a[7] + a[8] + a[9];" }/ `- D( [; R& b3 p+ x. |) \. b* S  G
        c4 = a[1] + a[4] + a[7];( a1 _8 f8 w' i0 S5 t" l8 ?. i
        c5 = a[2] + a[5] + a[8];
2 S) ?* h2 i" v$ ^2 a. D2 p        c6 = a[3] + a[6] + a[9];
3 Y1 b3 s. o; f! L  {        c7 = a[1] + a[5] + a[9];
9 g# v# w# ^5 o4 U$ a. k$ M        c8 = a[3] + a[5] + a[7];
! _5 v* a% D# ?- }" Q9 }$ }        if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)$ j4 `4 X7 w$ r/ z$ i& G
       {6 y# Y% o. {9 y
        check = true;
5 S9 t# @+ t0 K$ h$ |       }
0 a* w4 t  T. W; A4 T            }while(Expression);
. ^! k6 _- h: G5 U       2 l! l% V1 r) l0 z! |: s3 `- @
          System.out.println("answer:");8 M7 h6 [+ L/ N( {9 Z2 J7 ?9 J
          System.out.println(a[1] + " " + a[2] + " " + a[3]);
$ J, r3 c# H, `( x5 i0 x: `, B          System.out.println(a[4] + " " + a[5] + " " + a[6]);1 ^3 E+ ?7 t, }4 S- O# N
          System.out.println(a[7] + " " + a[8] + " " + a[9]);1 V& y( G' Z) e! l# |
         System.out.println("不論橫向縱向及對角線加起來的和都是:15");) j' E5 \* N3 Y6 j  G$ ^7 u
    }* e- {: O$ V5 J! @& d1 W! Y! o
}

TOP

返回列表