다차원 배열 (표)의 평균을 계산하도록 요청 받았습니다. 내가 제대로 모든 것을 구축 (적어도 난 그렇게 기분이) 생각 :다차원 배열의 평균을 계산하십시오.
import java.util.Scanner;
public class Exam {
static int NROWS = 5;
static int NCOL = 6;
static int[][] data = new int[NROWS][NCOL];
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
enterData(scan);
countAvg();
}
static void enterData(Scanner in) {
System.out.println("How many rows ? (up to " + NROWS + ")");
int rows = in.nextInt();
System.out.println("How many cols ? (up to " + NCOL + ")");
int cols = in.nextInt();
for (int i = 0; i < rows; i++) {
System.out.println("Row" + i + ": ");
for (int j = 0; j < cols; j++) {
System.out.print("Enter Data for Column " + j + ":");
data[i][j] = in.nextInt();
}
}
}
static void countAvg() {
int total = 0;
int count = 0;
for (int i = 0; i < NROWS; i++) {
for (int j = 0; j < NCOL; j++) {
total = total + data[i][j];
count = count++;
}
}
int avg = total/count;
System.out.println("the average is: " + avg);
}
}
하지만 시스템이 여전히 나에게이 메시지를 밀어 : 스레드 "주요"자바
예외. lang.ArithmeticException : Exam.main (Exam.java:9)에서 Exam.countAvg (Exam.java:33) 에 의해 제로 /
내가 뭘 잘못하고 있는지 이해하도록 도와주세요. 많은 감사합니다!
(AN
Optional.empty
을 반환하여) 비어있는 배열의 가능성을 허용하는 line'int avg = total/count;'그래서 여러분의 coun 여기서 t는 0입니다. 'count = count ++ '가 어떻게 작동하는지 모르겠다.'count ++'를 시도해보십시오. –예. 그건 분명히 당신 문제입니다. 나는 그것을 시험했다. 'count ='를 꺼내고'count ++; '를 사용하십시오 –
고맙습니다, 마이클! 이제 어떤 이유로 평균은 0으로 잘못 계산합니다. 어떻게 숨겨진 문제가 될 수 있다고 생각하니? –