import java.util.Scanner;
public class open {
int alphabet[] = new int[26];
String readString() {
System.out.println("영문 텍스트를 입력하고 세미콜론을 입력하세요.");
StringBuffer sb = new StringBuffer(); //키 입력을 받을 스트링 버퍼 생성
Scanner scanner = new Scanner(System.in);
while(true) {
String line = scanner.nextLine();
if(line.length() == 1 &&line.charAt(0)==';') { //';'만 있는 라인이면
break;
}
sb.append(line); //읽은 라인 문자열을 스트링 버퍼에 추가한다
}
return sb.toString(); //스트링버퍼의 문자열을 스트링으로 리턴
}
private void countAlphabet(String text) {
String s = text.toString();
s = s.toUpperCase();
for(int i=0;i<s.length();i++) {
char c = s.charAt(i);
if(c>='A'&&c<='Z') {
int index = c-'A';
alphabet[index]++;
}
}
}
private void drawHistogram() {
// TODO Auto-generated method stub
System.out.println("\n히스토그램을 그립니다.");
for(int i=0;i<alphabet.length;i++) {
System.out.print((char)('A'+i));
for(int j=0;j<alphabet[i];j++) {
System.out.print('-');
}
System.out.println();
}
}
void run() {
String s = readString();
countAlphabet(s);
drawHistogram();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
open op = new open();
op.run();
}
}
결과
영문 텍스트를 입력하고 세미콜론을 입력하세요.
baby
;
히스토그램을 그립니다.
A-
B--
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y-
Z
'명품JAVA프로그래밍 > 6장 모듈과 패키지 개념' 카테고리의 다른 글
[명품JAVA프로그래밍] 6장 실습문제 5번 (0) | 2022.01.23 |
---|---|
[명품JAVA프로그래밍] 6장 실습문제 4번 (0) | 2022.01.23 |
[명품JAVA프로그래밍] 6장 실습문제 3번 (0) | 2022.01.23 |
[명품JAVA프로그래밍] 6장 실습문제 2번 (0) | 2022.01.23 |
[명품JAVA프로그래밍] 6장 실습문제 1번 (0) | 2022.01.23 |