返回列表 發帖

我有問題??

  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是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!; K: D2 Y. |/ T3 K: e
' C9 y: \* f( Z4 X0 F) B$ D
public class TQC104 {# W2 n% C5 V4 ?$ d( J! j- T
        private static final boolean Expression = false;
6 u& A  L7 n$ H' M0 Q* u0 t$ m" F0 j2 p6 V4 ~7 C8 b: f5 N, g* g
        public static void main(String args [] )$ N1 r9 h2 @8 c0 Y# Q
      {1 y/ K6 Z& S( Z3 c* N7 X; e1 y
            int a[]={0,1,2,3,4,5,6,7,8,9};
( k. x5 b$ K; M0 d* Q" m# _4 q! V        boolean check=false;- ?5 p' A* @! V6 a9 l  T
            int i, j, c1, c2, c3, c4, c5, c6, c7, c8;
& a+ r5 B# \, w* y4 x            do
. N- G2 M- ^4 ]8 i! [3 `& T            {
( f  A% N8 K5 w& h, n            for( i=1 ; i<a.length ; i++)  O9 C" O- I7 J8 N
       {- H7 H9 E8 ~6 ?9 v7 T7 i+ Z6 N6 i
         j=(int)(Math.random()*9)+1;( p+ r& }- l# H* l
         a[0] = a[i];  X+ e& `2 X. _- S
         a[i] = a[j];) U) x; u) i  B* V( S# y
         a[j] = a[0];8 b* V% c0 v- W- S4 b! v+ R) u
       }
, b% `, A0 M9 J        c1 = a[1] + a[2] + a[3];- ?0 n4 N* ^1 x
        c2 = a[4] + a[5] + a[6];
, n2 E; O5 {, I' @& p- ?7 Y, e8 ^( n# j. l        c3 = a[7] + a[8] + a[9];  m9 \! r. ]! {9 \
        c4 = a[1] + a[4] + a[7];
- u, M9 m5 _. E: n# f& D        c5 = a[2] + a[5] + a[8];
, l. R) n9 ?5 k% ~4 A        c6 = a[3] + a[6] + a[9];
; M- A+ M4 p$ X4 o7 i% N        c7 = a[1] + a[5] + a[9];8 `  h# m" r+ r4 ?
        c8 = a[3] + a[5] + a[7];% O( o! r- M$ A3 T' e
        if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15). p" A. ~$ T' s
       {
3 w& R7 B; O: D( r/ G; U) |" K        check = true;
4 T# @4 P) \" \" J% O       }
3 M$ |, t# h5 p, a$ b4 U, R$ n            }while(Expression);
" Y6 B8 f' m( k; z8 L      
' `9 A2 P% K4 P          System.out.println("answer:");) A; n9 H. ]) }* p
          System.out.println(a[1] + " " + a[2] + " " + a[3]);& N# r% E8 b7 ]3 ^! r6 z8 E8 I* H
          System.out.println(a[4] + " " + a[5] + " " + a[6]);5 _, U7 O6 W/ x) |6 _: e
          System.out.println(a[7] + " " + a[8] + " " + a[9]);5 w7 @% H4 U: _
         System.out.println("不論橫向縱向及對角線加起來的和都是:15");* X5 p1 R, `7 [2 I% H( _
    }
) Z* S! a& l6 v3 R7 R$ `% y! d9 i9 \}

TOP

返回列表