Java
명품 JAVA Programming 제 6장 Open Challenge
_mojo_
2021. 7. 20. 00:58
영문자 히스토그램 만들기
텍스트를 키보드로 입력받아 알파벳이 아닌 문자는 제외하고 영문자 히스토그램을 만든다.
대문자와 소문자는 모두 같은 것으로 간주하고, 세미콜론(;)만 있는 라인을 만나면 입력의 끝으로 해석한다.
풀이 code
import java.util.*;
public class Main {
static char []ch;
static void set_Histogram() {
ch=new char[26];
for(int i=0;i<ch.length;i++) {
ch[i]=0;
}
}
static void input_String() {
Scanner scanner = new Scanner(System.in);
while(true) {
String sentence=scanner.nextLine();
if(sentence.length()==1 && sentence.charAt(0)==';') {
break;
}
for(int i=0;i<sentence.length();i++) {
if(sentence.charAt(i)>='A' && sentence.charAt(i)<='Z') {
ch[sentence.charAt(i)-'A']++;
}
if(sentence.charAt(i)>='a' && sentence.charAt(i)<='z') {
ch[sentence.charAt(i)-'a']++;
}
}
}
scanner.close();
}
static void show_Histogram() {
for(int i=0;i<ch.length;i++) {
System.out.print((char)('A'+i));
for(int j=0;j<ch[i];j++) {
System.out.print("-");
}
System.out.println();
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scanner=new Scanner(System.in);
System.out.println("영문 텍스트를 입력하고 세미콜론을 입력하세요.");
set_Histogram();
input_String();
show_Histogram();
scanner.close();
}
}