본문 바로가기
💻 개발블로그/파이썬 300제 문제

파이썬300제: 파이썬 분기문 111~120(20220125)

by August.J 2022. 1. 25.

🌞파이썬 111~120문제


#111

:: 사용자로부터 입력받은 문자열을 두 번 출력하기

  아래는 사용자가 "안녕하세요"를 입력한 경우의 출력 결과

>> 안녕하세요
안녕하세요안녕하세요

:: 풀이:

a=input('입력하세요:')

#풀이1:
print(a+a)

#풀이2:
print(a*2)

input으로 사용자의 입력값을 받아 출력한다.


#112

:: 사용자로부터 하나의 숫자를 입력받고, 입력 받은 숫자에 10을 더해 출력하기

>> 숫자를 입력하세요: 30
40
a=input('숫자를 입력하세요:')
print(int(a)+10)

input으로 사용자의 입력값을 받고 int로 묶어주고 10을 더한다.


#113

:: 사용자로부터 하나의 숫자를 입력 받고 짝수/홀수를 판별하기

a = input('숫자입력:')
a = int(a)
if a%2 == 0:
    print('짝수')
else:
    print('홀수')

input으로 사용자의 입력값을 받고, 입력값은 int타입으로 만들어준다.

조건문에서 2로 나누었을 때 나머지 값이 0이면 짝수 나머지는 홀수 출력


#114

사용자로부터 값을 입력받은 후 해당 값에 20을 더한 값을 출력하기.

단 사용자가 입력한 값과 20을 더한 계산 값이 255를 초과하는 경우 255를 출력해야 한다

>> 입력값: 200
출력값: 220
>> 입력값: 240
출력값: 255

:: 풀이1:

a = input('숫자입력:')
a = int(a)

if a+20 > 254:
    print(255)
else: 
    print(a+20)

:: 풀이2:

a = input('숫자입력:')
a = int(a) + 20

if a+20 > 254:
    print(255)
else: 
    print(a)

#115

사용자로부터 하나의 값을 입력받은 후 해당 값에 20을 뺀 값을 출력하기

단 출력 값의 범위는 0~255이다. 예를 들어 결괏값이 0보다 작은 값이되는 경우 0을 출력하고 255보다 큰 값이 되는 경우 255를 출력하기

>> 입력값: 200
출력값: 180
>> 입력값: 15
출력값: 0
a = input('숫자입력:')
a = int(a)-20

if a < 0:
    print(0)
elif a > 255:
    print(255)
else: print(a)

116

사용자로부터 입력 받은 시간이 정각인지 판별하기

>> 현재시간:02:00
정각 입니다.
>> 현재시간:03:10
정각이 아닙니다

:: 풀이:

a = input('현재시간:')

#풀이1:
if a.split(':')[1] == '00':
    print('정각입니다.')
else: print('정각이 아닙니다.')

#풀이2:
if a[-2:] =='00':
    print('정각입니다.')
else: print('정각이 아닙니다.')

풀이1에서는 사용자가 입력한 값을 ':'로 나눠주고 나눈값의 1번째(실질적으로 2번째값, ':'의 다음값)가 '00'과 같다면 '정각입니다'를 출력한다. 여기서 '00'은 숫자가 아니라 str값으로 인식해야한다.

 

풀이2에서는 -2부터의 값이 사용자의 입력값 마지막 두글자를 가르킨다. 그러므로 이 두 글자가 '00'과 같다면 '정각입니다'를 출력한다.


#117

사용자로 입력받은 단어가 아래 fruit 리스트에 포함되어 있는지 확인하기

포함되었다면 "정답입니다", 아닐 경우 "오답입니다" 출력하기

fruit = ["사과", "포도", "홍시"]


#풀이:
ans = input('좋아하는 과일은?')

if ans in fruit:
    print('정답입니다.')
else: print('오답입니다.')

if문에서 리스트안에 있다면을 표현하기 위해서 if ~ in list 사용


#118

투자 경고 종목 리스트가 있을 때 사용자로부터 종목명을 입력 받은 후 해당 종목이 투자 경고 종목이라면 '투자 경고 종목입니다'를 아니면 "투자 경고 종목이 아닙니다."를 출력하는 프로그램을 작성하기

warn_investment_list = ["Microsoft", "Google", "Naver", "Kakao", "SAMSUNG", "LG"]


#풀이
user = input('종목을 입력하세요:')

if user in warn_investment_list:
    print('투자 경고 종목입니다.')
else: print('투자 경고 종목이 아닙니다.')

#117과 동일한 방법의 문제이다🧐


#119

아래와 같이 fruit 딕셔너리가 정의되어 있다.

사용자가 입력한 값이 딕셔너리 키 (key) 값에 포함되었다면 "정답입니다"를 아닐 경우 "오답입니다" 출력하기

fruit = {"봄" : "딸기", "여름" : "토마토", "가을" : "사과"}


#풀이
user = input('제가 좋아하는 계절은:')

if user in fruit.keys():
    print('정답입니다.')
else: print('오답입니다')

정답에서는 in fruit으로 되어있으나, 키값만 정답으로 인식하려면 .keys()를 사용하면 된다.

이 때 과일명을 입력하면 오답이라고 나온다. 


#120

아래와 같이 fruit 딕셔너리가 정의되어 있다.

사용자가 입력한 값이 딕셔너리 값 (value)에 포함되었다면 "정답입니다"를 아닐 경우 "오답입니다" 출력하기

fruit = {"봄" : "딸기", "여름" : "토마토", "가을" : "사과"}


#풀이
user = input('제가 좋아하는 과일은:')

if user in fruit.values():
    print('정답입니다.')
else: print('오답입니다')

.values()를 사용해서 딕셔너리의 밸류값만 정답으로 인식할 수 있게 한다.