파이썬 300제[No.111 - 120]-분기문 2
if, if-else 를 활용한 조건 분기문 문제풀기
No.111 input() 사용하기1
문제) 사용자로부터 입력받은 문자열을 두 번 출력하라. 아래는 사용자가 "안녕하세요"를 입력한 경우의 출력 결과이다.
출력예시 :
>>안녕하세요
안녕하세요안녕하세요
입력) 분기문파트에서 느닷없이 input()문제가 나왔다. 일단 풀어본다. input()은 사용자로부터 입력받은 값을 저장해주는 기능을 한다.
user_input = input("입력값을 작성하세요:") # input()을 사용하여 외부문자열을 받을 변수를 생성
print(user_input * 2) # 외부 입력값에 대해 2번 출력되도록 * 연산자를 사용한다.
출력)
입력값을 작성하세요:안녕하세요
안녕하세요안녕하세요
No.112 input 사용하기 2
문제) 사용자로부터 하나의 숫자를 입력받고, 입력 받은 숫자에 10을 더해 출력하라.
출력예시 :
숫자를 입력하세요: 30
40
입력) 111번 문제와 동일하게 외부입력값을 처리하는 문제로 input() 을 활용하여 문제를 푼다.
user_number = input("숫자를 입력하세요: ") # input()을 사용하여 외부숫자를 받는다.
print(int(user_number) + 10) # 외부 입력값에 대해 10을 더한 상태여야 하므로 + 연산자를 사용한다.
# 외부 입력값은 숫자여야 하기 때문에 user_numver를 int()로 묶어서 출력한다
출력)
숫자를 입력하세요: 30
40
No.113 input() 사용하기 if문 사용하기 1
문제) 사용자로부터 하나의 숫자를 입력 받고 짝수/홀수를 판별하라.
출력예시:
>> 30
짝수
입력) 짝수를 판별해야 하므로 나머지가 0인 경우는 짝수, 그 이외 경우는 홀수로 판단하는 if-else문을 활용한다.
당연히 입력값을 받는 input()기능을 활용한다.
user_number = input("숫자를 입력하세요: ")
if int(user_number) % 2 == 0: # 입력받은 값 % 2를 하여 나머지가 0 인경우를 조건식으로 적용
print("짝수")
else:
print("홀수")
출력)
숫자를 입력하세요: 30
짝수
No.114 input() 사용하기 if문 사용하기 2
문제) 사용자로부터 값을 입력받은 후 해당 값에 20을 더한 값을 출력하라.
단 사용자가 입력한 값과 20을 더한 계산 값이 255를 초과하는 경우 255를 출력해야 한다.
출력예시:
>> 입력값: 200
출력값: 220
>> 입력값: 240
출력값: 255
입력) print()는 "" 또는 '' 문자 사이에 입력하면 문자열로 인식된다. " ' 또는 ' " 로는 사용할 수 없다.
user_number = input("숫자를 입력하세요: ")
if int(user_number) + 20 <= 255: # 범주가 적은 내용을 조건문으로 적용하고
print(int(user_number) + 20)
else: # 나머지 모든 부분을 255로 출력되도로한다.
print(255)
출력)
숫자를 입력하세요: 200
220
숫자를 입력하세요: 240
255
No.115 input() 사용하기 if문 사용하기 3
문제) 사용자로부터 하나의 값을 입력받은 후 해당 값에 20을 뺀 값을 출력하라. 단 출력 값의 범위는 0~255이다. 예를 들어 결괏값이 0보다 작은 값이되는 경우 0을 출력하고 255보다 큰 값이 되는 경우 255를 출력해야 한다.
>> 입력값: 200
출력값: 180
>> 입력값:15
출력값: 0
입력) 조건이 2개이다. 출력값이 255보다 큰경우 255를 출력하고, 0보다 작은겨우 0을 출력하고 그 이외 모든 값은 20일 뺀 값으로 출력하는 코드로 문제를 푼다.
user_number = input("숫자를 입력하세요: ")
if int(user_number) - 20 > 255: # 조건 1 255보다 큰 값인 경우
print(255)
elif int(user_number) - 20 < 0: # 조건 2 0보다 작은 경우
print(0)
else: # 위의 어느 조건에도 해당되지 않은 경우
print(int(user_number) - 20)
출력)
숫자를 입력하세요: 200
180
숫자를 입력하세요: 15
0
숫자를 입력하세요: 300
255
No.116 input() 사용하기 if문 사용하기 4
문제) 사용자로부터 입력 받은 시간이 정각인지 판별하라.
출력예시:
>> 현재시간:02:00
정각 입니다.
>> 현재시간:03:10
정각이 아닙니다
입력) 특별히 어려운 것은 없다. 사용자가 입력받은 값을 적고, 그 값이 :로 되어 있으므로 슬라이싱을 활용하여
문제를 푼다. 여기서 의문점, 숫자로 입력값을 적었는데 왜 문자열 "00"이랑 비교하지? 라는 의문이 생길 것이다. input()은 모든 입력값을 string 타입으로 변환하여 저장하기 때문에 "00"으로 비교해주어야 한다.
time = input("현재시간을 입력하세요: ")
# 숫자로 입력된다. 예를 들어 05:00라고 입력을 받고, 조건식을 -2: 로 주면 분 표시를 기준으로 값을 비교한다.
if time[-2:] == "00":
print("정각 입니다.") # == "00"이면 분이 정시이므로 정각이라고 출력
else:
print("정각이 아닙니다.")
출력)
현재시간을 입력하세요: 05:00
정각 입니다.
현재시간을 입력하세요: 05:10
정각이 아닙니다.
No.117 input()활용하고 리스트안에 값 추출하여 비교하기 1
문제) 사용자로 입력받은 단어가 아래 fruit 리스트에 포함되어 있는지를 확인하라. 포함되었다면 "정답입니다"를 아닐 경우 "오답입니다" 출력하라.
fruit = ["사과", "포도", "홍시"]
>> 좋아하는 과일은? 사과
정답입니다.
입력) input()과 if 비교변수1 in 비교변수2 구문을 활용하여 문제를 푼다.
fruit = ["사과", "포도", "홍시"]
fav_user = input("좋아하는 과일은?: ") # input() 지정
if fav_user in fruit: # fruit 리스트 속성값에 입력받은 과일명이 있는 경우를 비교
print("정답입니다!")
else:
print("다시 확인하세요")
출력)
좋아하는 과일은?: 사과
정답입니다!
좋아하는 과일은?: 파인애플
다시 확인하세요
No.118 input()활용하고 리스트안에 값 추출하여 비교하기 2
문제) 투자 경고 종목 리스트가 있을 때 사용자로부터 종목명을 입력 받은 후 해당 종목이 투자 경고 종목이라면 '투자 경고 종목입니다'를 아니면 "투자 경고 종목이 아닙니다."를 출력하는 프로그램을 작성하라.
warn_investment_list = ["Microsoft", "Google", "Naver", "Kakao", "SAMSUNG", "LG"]
입력) 리스트에 있는 항목과 사용자 입력값을 비교하는 문제이다. 117번을 참고하여 푼다.
warn_investment_list = ["Microsoft", "Google",
"Naver", "Kakao", "SAMSUNG", "LG"]
user_investment = input("투자종목을 입력해주세요: ") # input()으로 구성
if user_investment in warn_investment_list: # 사용자 입력값이 리스트에 있는지 비교 조건
print("투자 경고 종목입니다.")
else:
print("투자 경고 종목이 아닙니다.")
출력)
투자종목을 입력해주세요: Google
투자 경고 종목입니다.
투자종목을 입력해주세요: hyundai
투자 경고 종목이 아닙니다.
No.119 keys()활용하고 추출된 값 비교하기
문제) 아래와 같이 fruit 딕셔너리가 정의되어 있다. 사용자가 입력한 값이 딕셔너리 키 (key) 값에 포함되었다면 "정답입니다"를 아닐 경우 "오답입니다" 출력하라.
fruit = {"봄" : "딸기", "여름" : "토마토", "가을" : "사과"}
>> 제가좋아하는계절은: 봄
정답입니다.
입력) 딕셔너리인데 key값만 별도로 조건비교를 해야하므로 keys()기능을 사용해서 key값만 별도로 저장하여 비교한다.
season_fruit = {"봄": "딸기", "여름": "토마토", "가을": "사과"}
my_favor_season = input("내가 좋아하는 계절은?: ")
if my_favor_season in season_fruit.keys(): # keys()를 사용해 딕셔너리에 key값만 추출(리스트화)하여 비교
print("정답이에요!")
else:
print("틀렸습니다!")
출력)
내가 좋아하는 계절은?: 봄
정답이에요!
내가 좋아하는 계절은?: 겨울
틀렸습니다!
No.120 values()활용하고 추출된 값 비교하기
문제) 아래와 같이 fruit 딕셔너리가 정의되어 있다. 사용자가 입력한 값이 딕셔너리 값 (value)에 포함되었다면 "정답입니다"를 아닐 경우 "오답입니다" 출력하라.
fruit = {"봄" : "딸기", "여름" : "토마토", "가을" : "사과"}
>> 좋아하는과일은? 한라봉
오답입니다.
입력) 119번과 마찬가지지만 value 만 조건비교문을 만들어야 하므로, values()를 사용하여 조건비교한다.
season_fruit = {"봄": "딸기", "여름": "토마토", "가을": "사과"}
my_favor_fruit = input("내가 좋아하는 과일은?: ")
if my_favor_fruit in season_fruit.values(): # keys()를 사용해 딕셔너리에 key값만 추출(리스트화)하여 비교
print("정답이에요!")
else:
print("틀렸습니다!")
출력)
내가 좋아하는 과일은?: 사과
정답이에요!
내가 좋아하는 과일은?: 오렌지
틀렸습니다!
'#개인연구 및 공부# > [python]' 카테고리의 다른 글
(2020.11.06)파이썬 300제 문제풀기 [No.101 - 110] - 분기문 (0) | 2020.11.06 |
---|---|
(2020.11.05)파이썬 300제 문제풀기 [No.091 - 100] - 딕셔너리2 (0) | 2020.11.05 |
(2020.11.04)파이썬 300제 문제풀기 [No.081 - 090] - 딕셔너리 (0) | 2020.11.04 |
(2020.11.03)파이썬 300제 문제풀기 [No.071 - 080] - 튜플 (0) | 2020.11.03 |
(2020.11.02)파이썬 300제 문제풀기 [No.061 - 070] - 리스트 2 (0) | 2020.11.02 |
댓글