mojo's Blog
명품 JAVA Programming 제 6장 Open Challenge 본문
영문자 히스토그램 만들기
텍스트를 키보드로 입력받아 알파벳이 아닌 문자는 제외하고 영문자 히스토그램을 만든다.
대문자와 소문자는 모두 같은 것으로 간주하고, 세미콜론(;)만 있는 라인을 만나면 입력의 끝으로 해석한다.
풀이 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();
}
}
'Java' 카테고리의 다른 글
Generic class, method (0) | 2021.07.20 |
---|---|
vector와 HashMap, Collections 클래스의 활용 (0) | 2021.07.20 |
Math 클래스 메소드 활용 (0) | 2021.07.20 |
StringBuffer 클래스 (0) | 2021.07.20 |
String 관련 메소드 (0) | 2021.07.20 |
Comments