我後來發現你的程式不是陣列的問題,因為你是從0放到9共10個整數,所以你用1到9是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!' n- C6 I$ [) g2 i$ i, r, Z# @1 b
+ d, }- F+ z2 N- L& u8 X; Opublic class TQC104 {! X% e( J! Z% p- [
private static final boolean Expression = false;- c: W: ?3 q% \. H
( L7 b! D- \. X6 J
public static void main(String args [] )
) o8 g' p. x4 \3 H {
5 T6 x" b9 ]6 j& c0 g, e int a[]={0,1,2,3,4,5,6,7,8,9};, N& B6 R6 K: t8 a% w- @, s3 X& G/ G$ I
boolean check=false;5 w2 r1 H. |( n8 o2 c2 g9 i2 a
int i, j, c1, c2, c3, c4, c5, c6, c7, c8;
) ]+ ~" Z K v/ I$ P& y do
6 K9 _! Z; Y& a2 N; R7 n0 k3 F {) r8 [4 z0 {3 }' G
for( i=1 ; i<a.length ; i++)
( ?: j; d; b( d6 ]( m0 K {. T' h. W- Z2 V6 t0 s
j=(int)(Math.random()*9)+1;
$ G9 j, } q D: t9 b a[0] = a[i];: c- k- w6 J! u0 G: W/ P
a[i] = a[j];2 H; u% L+ a% L! n% ~4 E
a[j] = a[0];
s& Q2 n9 c! l i+ X }
+ y6 }1 ]) d1 X* q c1 = a[1] + a[2] + a[3];
+ G" F+ z* H5 y5 Q+ D c2 = a[4] + a[5] + a[6];
9 i3 {4 h/ x! b2 e, r c3 = a[7] + a[8] + a[9];
, J1 t* G0 i) `! w9 ?9 T- S$ a: g c4 = a[1] + a[4] + a[7];
/ i& f9 C& q. B# W) I/ p. i( v c5 = a[2] + a[5] + a[8];; m# @8 d- g3 x1 B f& \
c6 = a[3] + a[6] + a[9];4 }9 l) m4 g2 r& o, _/ K0 _. ]
c7 = a[1] + a[5] + a[9];' O/ |3 p9 @5 G7 |
c8 = a[3] + a[5] + a[7];
# ~8 E3 Q7 n) o& w0 z3 R+ Q) B$ c if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)2 \% I2 ]/ X6 H4 }
{
/ c8 A1 m7 b! A7 j! A0 S/ ]" b, z check = true;
3 \0 y9 X5 |' t! c }5 @* z0 `4 s K
}while(Expression);
2 y, R; w9 l& \9 S& p
7 n/ T& ]- h* \ System.out.println("answer:");
5 g2 t! u3 D4 m6 ~0 t5 j1 p5 J System.out.println(a[1] + " " + a[2] + " " + a[3]);
0 e7 x! p/ G, F System.out.println(a[4] + " " + a[5] + " " + a[6]);
6 x/ ]- d) w V* H; I% r0 E System.out.println(a[7] + " " + a[8] + " " + a[9]);
, n ?! d2 A7 I: G System.out.println("不論橫向縱向及對角線加起來的和都是:15");
H) M5 |- q: }" Y0 x4 O& Y( \ }
, p* s1 q2 m) a5 C: I y} |