카테고리 없음
문자열의 모음 수를 세는 Java 프로그램 쉽게 이해하기
코딩하는 욤욤이
2024. 11. 25. 02:25
반응형
문자열의 모음 수를 세는 Java 프로그램
이 프로그램의 목표는 주어진 문자열에 포함된 모음(a, e, i, o, u)의 개수를 계산하는 것입니다. 프로그래밍을 쉽게 이해할 수 있도록, 개념부터 코드의 흐름까지 차근차근 설명드리겠습니다.
1. 문제 이해하기
- 문제: 입력받은 문자열에서 몇 개의 모음이 들어있는지 세어야 합니다.
- 모음: 영어 알파벳 중 a, e, i, o, u는 모음입니다. 대문자(A, E, I, O, U)도 포함됩니다.
- 예시:
- 문자열: hello world
- 모음: e, o, o
- 개수: 3
- 문자열: hello world
2. 어떻게 해결할까요? (알고리즘 설계)
- 문자열 입력받기: 사용자가 문자열을 입력하면 프로그램이 이를 읽습니다.
- 문자 하나씩 확인하기: 문자열의 각 문자를 하나씩 검사합니다.
- 모음인지 확인: 문자가 a, e, i, o, u인지 확인합니다. 대문자(A, E, I, O, U)도 포함합니다.
- 모음이면 개수 증가: 모음을 발견할 때마다 카운트를 하나 증가시킵니다.
- 결과 출력: 모음의 총 개수를 사용자에게 보여줍니다.
3. Java 코드 작성
import java.util.Scanner; // 사용자 입력을 받기 위해 Scanner 클래스 사용
public class VowelCounter {
public static void main(String[] args) {
// 1. 사용자로부터 문자열 입력받기
Scanner scanner = new Scanner(System.in); // Scanner 객체 생성
System.out.println("문자열을 입력하세요: ");
String input = scanner.nextLine(); // 문자열 입력받기
// 2. 모음 개수를 저장할 변수 선언
int vowelCount = 0; // 모음 개수 초기값은 0
// 3. 문자열의 각 문자를 하나씩 검사
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i); // i번째 문자를 가져옴
// 4. 해당 문자가 모음인지 확인 (대소문자 모두 체크)
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' ||
c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U') {
vowelCount++; // 모음이면 개수 증가
}
}
// 5. 결과 출력
System.out.println("모음의 개수는: " + vowelCount + "개입니다.");
}
}
4. 코드 해설
1. 입력받기
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
- Scanner는 사용자가 입력한 값을 읽는 도구입니다.
- scanner.nextLine()은 사용자가 입력한 문자열 전체를 가져옵니다.
2. 반복문으로 문자열 탐색
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i);
}
- for 문은 문자열의 길이(input.length())만큼 반복합니다.
- input.charAt(i)는 문자열에서 i번째 문자를 가져옵니다.
3. 모음 확인
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' ||
c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U') {
vowelCount++;
}
- if 조건문으로 현재 문자가 모음인지 확인합니다.
- ||는 "또는"을 의미합니다. 예를 들어 c == 'a' || c == 'e'는 "c가 'a'이거나 'e'이면 참"이라는 뜻입니다.
- 대문자와 소문자를 모두 비교하여 체크합니다.
4. 결과 출력
System.out.println("모음의 개수는: " + vowelCount + "개입니다.");
모음 개수를 출력합니다. +를 사용해 문자열과 숫자를 합칩니다.
5. 프로그램 실행 예시
입력 예시 1
문자열을 입력하세요: hello world
출력 결과 1
모음의 개수는: 3개입니다.
입력 예시 2
문자열을 입력하세요: JAVA Programming
출력 결과 2
모음의 개수는: 5개입니다.
6. 핵심 개념 정리
- 문자열(String): 문자들이 모여서 만들어진 데이터입니다.
- 반복문(for): 일정한 작업을 반복 실행합니다.
- 조건문(if): 특정 조건을 만족할 때 실행됩니다.
- 문자(char): 문자열의 한 글자를 나타냅니다.
- 배열처럼 다루기: 문자열도 각 문자에 순서대로 접근할 수 있습니다.
7. 확장 가능성
- 사용자가 입력한 문자열에 숫자나 특수문자가 포함되어도 문제없이 작동합니다.
- 모음을 다른 언어(예: 한국어 모음 ㅏ, ㅑ, ㅓ, ㅕ)로 확장할 수도 있습니다.
이 프로그램은 간단하지만 문자열 처리의 기본 원리를 배우는 데 매우 유용합니다. 😊
반응형