Solved.ac - Python/Bronze IV
[파이썬/Python] 백준 1264번 모음의 개수
ImJay
2022. 12. 5. 19:56
반응형
[파이썬/Python] 백준 1264번 모음의 개수
1264번: 모음의 개수
입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 영어 대소문자, ',', '.', '!', '?', 공백으로 이루어진 문장이 주어진다. 각 줄은 최대 255글자로 이루어져 있다. 입력의 끝에는 한 줄
www.acmicpc.net
문제
영문 문장을 입력받아 모음의 개수를 세는 프로그램을 작성하시오. 모음은 'a', 'e', 'i', 'o', 'u'이며 대문자 또는 소문자이다.
코드
collection = ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U']
while True:
count = 0
sentence = input()
if sentence == '#':
break
for s in sentence:
if s in collection:
count += 1
print(count)
풀이
1. 모음으로 이루어진 리스트 collection 을 선언합니다.
collection = ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U']
2. 모음의 개수를 세줄 count 를 초기화하고, sentence 로 문장을 입력 받습니다.
무한 루프를 통해 계속 입력을 받고, 문장마다 개수를 초기화해야하기 때문에 count의 초기화도 반복문 안에서 선언합니다.
while True:
count = 0
sentence = input()
3. 문제에서 '#' 을 입력할 경우 입력의 끝으로 간주하도록 조건이 설정되어 있어 if break 문을 통해 이를 추가해줍니다.
while True:
count = 0
sentence = input()
if sentence == '#':
break
4. for in 문을 통해 sentence 에 담겨있는 문자들 중에서 문자를 하나씩 뽑아내 s 에 저장합니다.
if in 문을 통해 뽑은 문자 s 가 모음일 경우(collection) count 를 1 증가시켜 개수를 세줍니다.
while True:
count = 0
sentence = input()
if sentence == '#':
break
for s in sentence:
if s in collection:
count += 1
5. 마지막으로 모음의 개수를 출력해줍니다.
while True:
count = 0
sentence = input()
if sentence == '#':
break
for s in sentence:
if s in collection:
count += 1
print(count)

반응형