https://www.acmicpc.net/problem/1264
1264번: 모음의 개수
입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 영어 대소문자, ',', '.', '!', '?', 공백으로 이루어진 문장이 주어진다. 각 줄은 최대 255글자로 이루어져 있다. 입력의 끝에는 한 줄
www.acmicpc.net
사고과정)
1. 우선 반복문을 이용해 계속 문자열을 입력받고, 반복문의 조건에 != '#'을 하면 되겠다.
2. 저 모음들을 어떻게 처리할 것인가. 첫번째 방법은 저것들 배열에 넣고 주어진 문자열 vs 모음 배열 비교하기
두번째 방법은 그냥 조건문 이용해서 하기. 이번엔 갯수가 10개라 그냥 조건문 썼음.
주의) 문자열을 공백까지 받아야하기에, getline함수를 사용했다.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string input;
while (getline(std::cin, input), input[0] != '#')
{
int num = 0;
for (int i = 0; i < input.length(); i++)
{
switch (input[i])
{
case 'a':
case 'A':
case 'e':
case 'E':
case 'i':
case 'I':
case 'o':
case 'O':
case 'u':
case 'U':
num++; break;
}
}
cout << num << endl;
}
return 0;
}
'백준 문제풀이 > 브론즈2' 카테고리의 다른 글
백준 10809번 - 알파벳 찾기 (0) | 2021.11.25 |
---|---|
백준 1173 - 운동 (0) | 2021.11.10 |
백준 1152번 - 단어의 갯수 (0) | 2021.10.20 |
백준 1159번 - 농구 경기 (0) | 2021.10.20 |
백준 1100번 - 하얀 칸 (0) | 2021.10.20 |