본문 바로가기
#개인연구 및 공부#/[python]

(2020.11.07)파이썬 300제 문제풀기 [No.111 - 120] - 분기문 2

by 착한해커 2020. 11. 7.

파이썬 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("틀렸습니다!")

 

출력)

내가 좋아하는 과일은?: 사과
정답이에요!


내가 좋아하는 과일은?: 오렌지
틀렸습니다!

 

댓글