본문 바로가기
프로그램

[파이썬] 문제 : 7글자 입력받아 회문 검사

by 오디세이99 2022. 12. 11.
728x90
반응형

def check(w):
    flag = True                    # 회문 판별 변수, 초깃값은 True
    for i in range(len(w) // 2):   # 문자열의 중간을 기준으로 앞,뒤를 비교하기 때문에 단어 길이의 절반 사용
        if w[i] != w[-(i+1)]:      # 왼쪽 문자와 오른쪽 문자를 비교하여 문자가 다르면. 리스트에서 w[-1]은 뒤에서 첫번째의 의미
            flag = False           # 회문이 아님
            break
    return flag

ww = input('단어 입력: ')

ww = ww.lower()                    # 모두 소문자로 변경. 대소문자 구분하지 않도록 함
 
if len(ww) == 7:                   # 7글자인지 확인
    if check(ww) == True:         # 회문 판별 함수 사용해 확인
        print('Palindrome')
    else:
        print('Not a Palindrome')
else:
    print('Error: 문자열이 일곱 글자가 아닙니다.')

결과

단어 입력: e@q3q@E
Palindrome
728x90
반응형

댓글