2차원 배열과 while문으로 지역별 매상 평균 구하기
package While2DArray;
public class SalesEvidence {
/**
* 지역별 전월 매상 금액(만원)의 실적은 다음과 같다.
지역 데스크탑 노트북 프린터 디지털 카메라
경기도 2,700 3,650 500 750
강원도 2,650 3,800 1,870 900
경상도 1,800 2,700 1,800 700
전라도 1,950 2,900 523 1,900
제주도 1,355 2,375 500 300
이 표를 토대로 지역별 총 매상 금액과 평균 매상 금액을
계산하는 프로그램 입니다.
*/
public static void main(String[] args) {
String name[] = {"경기도","강원도","경상도","전라도","제주도"};
String course[] = {"데스크탑","노트북","프린터","디지털카메라"};
/*각 지역을 세로 열 요소로, 그리고 각 상품을 가로 행 요소로 하여
지역별/상품별 매상 금액을 입력하는 2차원 배열을 정의합니다.*/
int salesValue[][]={{2700,3650,500,750},
{2650,3800,1870,900},
{1800,2770,1800,700},
{1950,2900,523,1900},
{1355,2375,500,300}};
int numOfAreas = 0; // 지역수
/*각 지역마다 상품별 매상 금액의 합계를 구하기 위해
배열의 행을 while문으로 반복 처리하도록 지정합니다.*/
while (numOfAreas < 5){
int average = 0; // 각 지역의 평균
int sum = 0; // 각 지역의 총 매상
int numOfProducts = 0; // 상품 종류의 수
/*1. 배열의 각 행의 합계를 구하기 위해
while문을 사용하여 4개 상품의 매상 금액을 합계할 때까지
반복을 지정합니다.
2. 지역별로 각 상품의 매상 금액을 입력한 배열로부터
금액을 가져오기 위해 지역의 위치와 상품의 위치를
인덱스로 지정합니다.*/
while (numOfProducts <4){
//조건식(마지막 상품에 이를 때까지)
sum += salesValue[numOfAreas][numOfProducts];
/*sum : 합계
salesValue : 매상금액의 배열
(지역위치와 상품위치를 인덱스로 지정)
numOfAreas : 지역요소 인덱스
numOfProducts : 상품요소 인덱스*/
numOfProducts++;/*상품 위치를 나타내는 인덱스를
1씩 증가*/
}
average = sum / 4;
System.out.println(name[numOfAreas] + "지역");
System.out.println(" 총매상: " + sum + "만원, 평균: "
+ average + "만원");
numOfAreas++;
}
}
}
댓글
댓글 쓰기