IT/솔루션) Power Java

Power JAVA 10장 ) 배열 - Programming_2

돔찌 2019. 5. 12. 17:48

<2016. 10. 3. 19:02>

 

Power JAVA 10장 ) 배열 - Programming_2

 

/* 
 * 입력값들의 분포를 시각적으로 볼 수 있는 히스토그램을 만드는 프로그램을 작성하시오.
 * 이 프로그램은 1과 100사이의 정수 10개를 읽어야 하고 1-10,11-20 등의 범위에 드는 값들의 횟수를 아래와 같이 출력하여야 한다.
 */
import java.util.*;
class Range {
	private int count=0;
	void Up() {
		count++;
	}
	int get() {
		return count;
	}
}
public class Programming_2 {
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		Range[] ranges = new Range[10];
		for (int i=0; i < ranges.length; i++)
		   ranges[i] = new Range();
		int num;
		for (int i=0; i<10; i++) {
			System.out.printf("%d번째 숫자를 입력하시오 :  ",i+1);
			num = input.nextInt();
			if (num < 1 || num > 100) {
				System.out.println("유효값을 벗어났습니다. 다시 입력해주세요.");
				i--;
			} else {
				num /= 10;
				ranges[num].Up();
			}
		}
		for (int i=0; i < 10; i++ ) {
			System.out.printf("%d ~ %d : ",i+1,(i+1)*10);
			for ( int j=0; j<ranges[i].get(); j++) {
				System.out.print("*");
			}
			System.out.println();
		}
	}
}