返回列表 發帖

我有問題??

  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是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!7 W3 M! ]( P- P- @* u
$ r% |" @/ R7 |- k3 D
public class TQC104 {' c1 h2 B; k- F7 g8 `3 y
        private static final boolean Expression = false;: U; F' M0 T" o& _3 f6 Y

" G/ P3 t( |; `; s1 c3 O4 s+ Q        public static void main(String args [] )  \9 [1 m, `/ E3 a1 _1 r6 f* Y
      {
9 l6 L9 `2 W$ f- B            int a[]={0,1,2,3,4,5,6,7,8,9};
/ K5 y% J6 |. E1 K  W% C        boolean check=false;
6 K/ ]; L6 u0 s* r# f) e8 a            int i, j, c1, c2, c3, c4, c5, c6, c7, c8;
) h+ e& D& I- g' v+ A            do
% y# {' E% h1 |$ N" K1 W! |6 _            {
0 a% B8 l( `4 z            for( i=1 ; i<a.length ; i++)1 f/ {* p5 u3 c/ v! q9 F! g
       {
8 W0 q, p( r% r, j* N         j=(int)(Math.random()*9)+1;' J, ]; y0 l' C" D$ f
         a[0] = a[i];
/ i2 J& X3 T. c) b2 u         a[i] = a[j];
# ^8 E8 a4 C3 ?         a[j] = a[0];
. C% t" T6 }+ B8 F9 [       }
6 C0 K5 ]. M1 e8 {% p        c1 = a[1] + a[2] + a[3];
% |0 R/ b5 o8 @9 U, Y% V        c2 = a[4] + a[5] + a[6];+ e9 P' k9 ?9 z) x
        c3 = a[7] + a[8] + a[9];! H+ \! E$ [( U) k8 g8 L
        c4 = a[1] + a[4] + a[7];
4 g4 F, E5 \1 R; j9 y7 d* @        c5 = a[2] + a[5] + a[8];" y3 T$ `# w& l& j( ~. c
        c6 = a[3] + a[6] + a[9];1 L- p4 \: O% {7 P
        c7 = a[1] + a[5] + a[9];- o1 T6 T  C8 e" t& t
        c8 = a[3] + a[5] + a[7];
4 t/ i/ ?3 O& p1 f4 I) E  P5 v( }        if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)2 I3 m- r, h* w  i) {9 l) D
       {* Q! G1 x3 F3 C1 ^3 q8 m
        check = true;4 R, Z! I8 `2 B1 A
       }5 j( y! \. _7 j8 J' w: Z
            }while(Expression);: C, r6 [/ u3 }, o9 e( S
       & v/ S* A7 B2 Z! W9 \0 Y
          System.out.println("answer:");- r: }& |# D& }& [; h% J$ b: V7 P
          System.out.println(a[1] + " " + a[2] + " " + a[3]);  F5 p( R: l- ?
          System.out.println(a[4] + " " + a[5] + " " + a[6]);5 ?" c* x6 D0 B) R4 l
          System.out.println(a[7] + " " + a[8] + " " + a[9]);
; B9 ?! Y' r+ L% B' |8 F         System.out.println("不論橫向縱向及對角線加起來的和都是:15");
4 z& [/ N* l, w, p4 h    }
1 D1 {! W5 o/ n0 ^}

TOP

返回列表