2014-01-17 79 views
-8

這是我的代碼。 請檢查它在哪裏給運行時異常。 我寫了一段代碼來解決這個問題。我不斷地得到NZEC(運行時錯誤),但我找不到任何異常的代碼部分,因爲它只涉及簡單的算術計算(應該沒有機會除以零)。Java中的NZEC運行時錯誤

代碼的邏輯並不重要,我只是想知道異常可能隱藏在哪裏。

任何人都可以發現任何錯誤?謝謝。

import java.io.BufferedReader; 
import java.io.File; // headers 
import java.io.FileNotFoundException; 
import java.io.IOException; 
import java.io.InputStreamReader; 
import java.math.BigInteger; 
import java.util.Arrays; 
import java.util.Scanner; 
import java.util.Vector; 
import java.math.BigInteger; 

public class Mkequal // class 
{ 
    public static void main(String[] args) throws IOException // main class 
    { 
     BufferedReader br = new BufferedReader(new InputStreamReader(System. in)); 
     Scanner sc = new Scanner(System. in); 
     int t = Integer.parseInt(br.readLine()); 
     while (t-- > 0) // while loop 
     { 
      int sum = 0; 
      int n = Integer.parseInt(br.readLine()); //number of elements in array 
      int arr[] = new int[n]; 
      for (int i = 0; i < n; i++) 
       arr[i] = sc.nextInt(); 
      for (int i = 0; i < n; i++) 
       sum += arr[i]; 
      if (sum % n == 0) //if divisible by n,print n 
       System.out.println(n); 
      else 
       System.out.println(n - 1); 

     } 
    } 
} 

回答

0

你很可能是在程序中創建了太多的內存。 必須創建while循環外陣列(ARR),並操縱它的循環內..

0

也許,int t = Integer.parseInt(br.readLine());原因NumberFormatExceptionInteger.parseInt

但是你shold使用IDE的控制檯(例如,這裏是Eclipse's console)查看堆棧跟蹤 - 它會將您指向發生異常的實際行