我後來發現你的程式不是陣列的問題,因為你是從0放到9共10個整數,所以你用1到9是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!7 ^1 r. T( s! {3 K
& R7 |- i( M, [# _public class TQC104 {9 p# q8 E7 t6 f5 b, u) A% C
private static final boolean Expression = false;
0 P9 x& M: J/ G; u' ]! O/ f
/ [# N; H$ j# f! Y0 L3 } public static void main(String args [] )2 l1 @# d' l+ b! [ }( E8 s
{
4 H0 q. ]( H/ p- H8 B int a[]={0,1,2,3,4,5,6,7,8,9};! P2 H. W. x; {: _
boolean check=false;
% @/ R2 ]* N: | int i, j, c1, c2, c3, c4, c5, c6, c7, c8;
) \( R- x1 I/ l& E0 i6 t' k do
) A3 d- m5 K |4 }! x2 q" {0 v {
! b5 a8 z0 Y, E3 i8 J for( i=1 ; i<a.length ; i++)' x J$ C5 @& J$ E; w8 ]
{4 P; E, e A' d5 j
j=(int)(Math.random()*9)+1;
8 \( u1 z# Q: r7 M8 g: l8 I. o! D a[0] = a[i];5 j& f) y! b: X; G
a[i] = a[j];9 k! t" `: m' V9 d M4 }) c8 k
a[j] = a[0];
* g- O0 t4 q2 ? S+ Q7 `8 O }
. v* c. l6 c: C7 _1 i+ K c1 = a[1] + a[2] + a[3];
( C3 {; |- t* |- e c2 = a[4] + a[5] + a[6];
4 c5 M# e4 `7 G' ] c3 = a[7] + a[8] + a[9];8 Z9 H; g- x( e6 x) S O' |& O
c4 = a[1] + a[4] + a[7];
7 m% D7 F, c+ f) R w) \3 F+ D# i c5 = a[2] + a[5] + a[8];7 ]8 J7 W" P6 W! ~ i4 l B) c+ x
c6 = a[3] + a[6] + a[9];
4 E( D7 A: j# R: u! d c7 = a[1] + a[5] + a[9];8 I, @/ x! c s% Z( @) }, e( v+ Z
c8 = a[3] + a[5] + a[7];/ H3 h/ a: V0 P6 o/ I
if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)) M5 G* W A( v1 K
{* m* {2 x& i6 ]
check = true;
( h% \! l$ o4 u8 V& s/ ?1 f! C }
% m5 o. G- s6 ?! B* R }while(Expression);
: m/ H( O6 I1 w2 A6 h9 R9 ] 9 P; P+ a# i$ t1 A( T$ c
System.out.println("answer:");
! ~* U, G' e) J; U2 f* T System.out.println(a[1] + " " + a[2] + " " + a[3]);
$ P) z" _; a) A5 G System.out.println(a[4] + " " + a[5] + " " + a[6]);
4 _; C' u5 c: L$ N. W System.out.println(a[7] + " " + a[8] + " " + a[9]);: m; G! ~$ D8 Y; k
System.out.println("不論橫向縱向及對角線加起來的和都是:15");4 L1 I9 E, Q& m+ a
}
8 z2 v( j. M. h4 V3 W& q} |