返回列表 發帖

我又有狀況!!~

  1. public class TQC207 {

  2.         public static void main(String[] args) {
  3.        int sum = 0;
  4.        int odd = 0;
  5.        int max = 0;
  6.        int tmp = 0;
  7.        int nums = new int(args.length);
  8.        try
  9.        {
  10.                for(int i = 0; i < args.length; i++)
  11.                {
  12.                       tmp = Integer.parseInt(args[i]);
  13.                       nums [i] = tmp;
  14.                       sum += tmp;
  15.                       if(tmp % 2 != 0)
  16.                       {
  17.                             odd++;
  18.                       }
  19.                       max = Math.max(tmp,max);
  20.                }
  21.                System.out.println("最大值" + max );
  22.                System.out.println("奇數" + odd );
  23.                System.out.println("總和" + sum );
  24.        }
  25.        catch(Exception e)
  26.        {
  27.             System.out.println("輸入錯誤");   
  28.        }
  29.       
  30.         }

  31. }
複製代碼
錯誤訊息如下
8 s( U+ g; p' z4 J. BException in thread "main" java.lang.Error: Unresolved compilation problem: + y. F! b! |' x5 X% i6 B" S0 O# }
        Syntax error on token "int", invalid ClassType3 ^& o: j, B( p9 [+ l
! e, w' I8 F, N6 j& X
        at TQC207.main(TQC207.java:9)

加入偶數判斷式~~有錯誤嗎?我看起來沒問題啊!!

TOP

加入偶數判斷式~~
/ I; w, U4 g$ g5 @! ppublic class TQC207 {
( a, V1 V, i  e* J" p; h) Q) z3 `
+ K. J# T' A+ U; \        public static void main(String[] args) {
# z1 r( I# [  j                int sum = 0;0 [6 O7 c& }$ K* J& e& N2 e; U
                int odd = 0;
* v7 j0 L, R2 D  s4 A) L* w- V; Z                int max = 0;
) r+ ]# |2 z8 F* A& C: R4 A. }0 Z                int tmp = 0;& U( u4 N; I  U. ^9 r2 [/ p
                int even = 0;7 Q+ U/ \5 U' x9 w9 s* s2 g
                int[] nums = new int[args.length];
5 {0 X3 m" h  _9 X1 O$ [                System.out.println("請輸入需要判斷的數: (數字間須留空白!!)");8 b* {7 i& M* N) ~
                try {, B- E2 U0 [, T: @! m( g
                        for (int i = 0; i < args.length; i++) {, G* ]! t" X0 X3 w6 N6 F
                                tmp = Integer.parseInt(args[i]);* i% w( s/ `0 t
                                nums[i] = tmp;
" m8 m* v2 |& o, V                                sum += tmp;
+ C3 K6 g/ o& F                                if (tmp % 2 == 0) {
2 ?) J, b4 `( v                                        even++;9 V, g% \, }- G2 L2 @: ?! e2 D, Q& h7 ^
                                }8 r9 o  m9 g1 h( c6 G
                                if (tmp % 2 != 0) {. E* C( ~7 r1 y) D0 t# X) D
                                        odd++;
, f9 Z7 H! ?# l2 K7 d& J( B                                }
$ L' i$ d! L: y% ?) ]- h                                max = Math.max(tmp, max);( h' Y- h& ?4 F7 ~& U1 y
                        }
) r+ q; U4 c/ ^: {                        System.out.println("最大值" + max);
2 L* y3 w4 w, T/ {) S; H7 l5 q                        System.out.println("奇數" + odd);* z' r7 V! W( V# R
                        System.out.println("偶數" + even);
0 z  _1 C& e/ S6 H& m4 l% h0 D                        System.out.println("總和" + sum);
: k1 @4 @4 K% n5 v7 L                } catch (Exception e) {, p5 u4 _# k$ j
                        System.out.println("輸入錯誤");3 ~0 C8 W+ L5 u0 L
                }
1 j9 H& M1 E0 ^; x! k  n1 M: n7 e
% c4 Y# S9 v; t- k9 r        }
2 K1 J$ f3 t! T8 k* s6 @5 k$ p
}

TOP

那如果在nums後宣告也可以摟!!

TOP

oh~ i see
% n* X" r' i. {thanks!!

TOP

對啊,兩個錯:# ?) C3 d. s! _; F/ F! D
1.陣列是用中括號[]不是()" s* x/ w- C3 E/ X. w
2.既然是陣列,前面的宣告也要是陣列:int[]
( f6 O/ U% H7 H2 ?  r4 L/ o6 P. d這一行正確的寫法如下:( {9 W0 B8 J3 U4 n
int[] nums = new int[args.length];

TOP

錯再這一行!?+ b2 |  [2 f; p0 k. l
int nums = new int(args.length);

TOP

返回列表