返回列表 發帖

我有問題??

  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是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!* E5 C  C& t4 g) e7 P: F6 D5 {

' h# g4 ?: Q1 J0 H- E% opublic class TQC104 {
& E: v" Z  T  q2 c/ v        private static final boolean Expression = false;, [) }" E" G) |8 O: B% s8 c
: f2 g( j+ i9 z8 O* j
        public static void main(String args [] )2 V0 k; H2 ~- m; C6 y
      {- |5 ~+ T/ ^1 u2 J
            int a[]={0,1,2,3,4,5,6,7,8,9};2 j$ p" a3 n: m
        boolean check=false;
( J3 J' s$ X0 Y; M+ d            int i, j, c1, c2, c3, c4, c5, c6, c7, c8;
6 J) X3 E9 \( P) o            do; ?) g1 v) L( X/ y
            {
8 L) H. o$ U- Y$ [) L" p/ W6 `            for( i=1 ; i<a.length ; i++)8 h8 y; k. [% Q; i4 L2 [+ Q, y
       {" j5 o: y/ F/ h: Z1 W+ a
         j=(int)(Math.random()*9)+1;
5 Z# U& B2 R0 P+ h% A% ^. Y         a[0] = a[i];
: Q- X% E+ }6 B+ f         a[i] = a[j];' m! Z4 t# b" J; C6 G* N0 M4 f
         a[j] = a[0];
( c) `: f% @. _       }
. |9 P, a) v5 o! p- x$ z8 d# x  |9 {        c1 = a[1] + a[2] + a[3];
3 h1 K  m. \8 b' T9 U5 L        c2 = a[4] + a[5] + a[6];
8 l% _; n4 I8 j5 p; ]        c3 = a[7] + a[8] + a[9];0 o  V* ^; T! X: u! [" O
        c4 = a[1] + a[4] + a[7];( _7 O+ b( B6 Z5 U$ j
        c5 = a[2] + a[5] + a[8];% P$ E& ^' W  ~+ a- n1 t$ g
        c6 = a[3] + a[6] + a[9];9 V2 V- `7 T) Q' v+ R# S
        c7 = a[1] + a[5] + a[9];
" X* ]9 j& N# F2 ?        c8 = a[3] + a[5] + a[7];( b8 H7 G  ]! }* X  v' O
        if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)3 C# l: r  Q) T& _9 c$ f0 u9 k0 g
       {( U8 S+ I! J" o: U
        check = true;
. H4 M7 p/ h4 T( y0 h& L% N       }
) }7 ~2 g1 J7 h; F$ R+ B, G            }while(Expression);: c% j% A8 J. T0 D9 x
       $ j  X) y1 t2 o: I& u* N; L
          System.out.println("answer:");
9 L& q' w) @! U+ B          System.out.println(a[1] + " " + a[2] + " " + a[3]);# c( _4 j! `. h
          System.out.println(a[4] + " " + a[5] + " " + a[6]);6 e# D7 j1 j7 r  |
          System.out.println(a[7] + " " + a[8] + " " + a[9]);
4 j/ y8 s  n. z. C         System.out.println("不論橫向縱向及對角線加起來的和都是:15");  B3 K$ R) d3 W& b: A: e9 U
    }
2 u3 l% \# S" z2 X}

TOP

返回列表