728x90
반응형
문제
상품의 가격과 할인율 (단위 : %)을 입력받고 [입력받을때 input().split()사용]
할인된 상품의 가격 리스트 출력하는 코드 작성해주세요
< 조건 >
1) 상품의 개수는 다양하게 입력되게 다양한 입력에도 잘 작동할 수 있는 유연한 코드를 작성해주세요.
2) 할인율 0이 입력되면, 디폴트 값인 10%가 적용되어야 합니다.
3) 할인율의 범위는 0 이상 100 미만입니다.만약 할인율이 100 이상이 될 경우, 에러를 출력하도록 해주세요.
4) 디폴트 인수 값을 활용하세요
코드
product_lst = [] # 입력 받은 값들을 저장하기 위한 리스트
dc_default = 10 # 디폴트 할인율 10% 지정
while True: # 조건 1. 상품 개수 다양하게 입력 가능
lst_tmp = input('가격과 할인율 입력(예:사과 100 5) (종료:enter) : ').split() # 입력 받기
if len(lst_tmp) == 0: # 공백 입력하면 입력 받는 거 종료
break
product = lst_tmp[0] # 입력 받은 첫번째는 상품명
price = int(lst_tmp[1]) # 가격
dc_tmp = int(lst_tmp[2]) # 할인율
if dc_tmp > 100: # 조건 3. 할인융 100 넘으연 에러 출력
print('할인율이 100% 이상입니다. 0~100 사이의 값을 입력하세요.')
if dc_tmp == 0: # 조건 2. 할인율 0 이면 디폴트값 10% 지정
dc = dc_default #
else:
dc = dc_tmp
product_lst.append([product, price, dc]) # 입력 받은 값들을 상품정보 리스트에 추가
for i in range(len(product_lst)): # 출력을 위해 입력 받은 상품수 만큼 반복
product = product_lst[i][0] # 2차원 리스트에서 각각의 정보 추출
price = product_lst[i][1]
dc = product_lst[i][2]
price_dc = price - (price*(dc/100)) # 할인율 계산.
print(f"{product}: {price}(dc:{dc}%) : {price_dc}") # 출력
728x90
반응형
'프로그램' 카테고리의 다른 글
[파이썬] 문제 : 사칙연산 랜덤 계산 (0) | 2023.11.08 |
---|---|
[파이썬] 문제 : 사진 보고 과일명 맞추기 (0) | 2023.11.07 |
[파이썬] 문제 : 입력 받은 문자열을 분리해서 데이터 만들기 (0) | 2023.11.05 |
[파이썬] 문제: (turtle) 1~4사분면에 다른 색으로 클릭시 원 그리기 (0) | 2023.11.05 |
[파이썬] 문제 : BMI 계산(상세 구분) (0) | 2023.11.03 |
댓글