返回列表 發帖

我有問題??

  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是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!6 B( x! @# J; t) C
( d6 S: n/ a6 ?+ q% Z: H
public class TQC104 {- S" q2 @. v# A* {
        private static final boolean Expression = false;
& I: j  `  b. I3 |& _! ?0 M6 G' \5 O! u+ Q7 R0 `  o' z; ~. r3 u3 N$ {
        public static void main(String args [] )
. x3 y% R0 h7 [, |+ e. y      {
* s9 J% j6 u0 X$ z% M3 m4 X9 i  e            int a[]={0,1,2,3,4,5,6,7,8,9};9 P, N8 r0 q0 f9 ?( _
        boolean check=false;
$ z- d0 E3 w0 D4 |) l) L            int i, j, c1, c2, c3, c4, c5, c6, c7, c8;2 V! o4 w+ u7 _1 f7 ^. k
            do4 |# }% A& z* v1 w$ B
            {9 z$ J2 r" N+ W3 A
            for( i=1 ; i<a.length ; i++)0 i, p/ K9 T( D
       {, Y% e& N, H1 M6 U6 s$ D. H4 i# _! I4 q$ Y
         j=(int)(Math.random()*9)+1;
9 a, m+ ]& g! E  b         a[0] = a[i];5 @+ E5 D6 e, p$ A6 l& f) z/ D
         a[i] = a[j];( |+ d" k( @) C
         a[j] = a[0];
6 N# E/ y; @' l$ Q) B& @5 I       }
: Y' R/ W3 ^1 a$ _( H        c1 = a[1] + a[2] + a[3];
! b9 t1 n/ K2 l# e        c2 = a[4] + a[5] + a[6];
2 S$ o% R7 Q  K" i" o- @        c3 = a[7] + a[8] + a[9];
3 W& k5 A! X5 T1 Y) R% h2 K        c4 = a[1] + a[4] + a[7];' i- `6 X8 T: ^1 V
        c5 = a[2] + a[5] + a[8];- }* J& ?/ [5 _5 q7 L
        c6 = a[3] + a[6] + a[9];
; o# e" r: S3 V  A% q/ F& z6 u        c7 = a[1] + a[5] + a[9];
5 g5 A: R4 v& l9 b0 ^. n        c8 = a[3] + a[5] + a[7];! G% o) W' J# y) x- V+ W
        if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)
' {3 y! |% [: T       {
% e- t2 K* c$ F$ L) D5 K  ?8 e) f        check = true;
5 y# W# c! ~8 [: i. g* @- [' j       }4 F1 x8 D# \3 a& z/ k
            }while(Expression);* F3 d1 f; H3 u) H) H
      
4 ]# O+ f; v1 L# Q2 B, h1 @! M          System.out.println("answer:");
* m5 g8 M, }0 @4 U5 a          System.out.println(a[1] + " " + a[2] + " " + a[3]);
2 q  q7 p1 H8 A7 ^* @+ S1 }          System.out.println(a[4] + " " + a[5] + " " + a[6]);, g. r0 y, {# F! C' N$ ?( l
          System.out.println(a[7] + " " + a[8] + " " + a[9]);
0 F3 p3 X: }" O1 u         System.out.println("不論橫向縱向及對角線加起來的和都是:15");
2 F) O* T. @- X, V    }
3 O5 T, r4 `8 `( a8 d! }}

TOP

返回列表