자판기 : 메뉴 3개이상
프로그램이 시작되면 메뉴를 보여준 뒤
메뉴를 선택하면 돈을 받자
딱 맞게 내는경우, 금액이 부족한경우, 금액이 남는경우
+ 받는 돈을 동전으로 제한. for문 사용 가능.
#변수선언
list_all = ""
list_list = ["", "", ""]
sol = 0
doc = 0
zi = 0
pri = 0
paym = 0
bal = 0
menu = ["솔의눈", "닥터페퍼", "지코"]
menu_dic = {"솔의눈":1000, "닥터페퍼":1700, "지코":1200}
menu_in = 0
menu_sum = []
coin = [10, 50, 100, 500]
#메뉴선택
print("메뉴판\n솔의눈 : 1000원\n닥터페퍼 : 1700원\n지코 : 1200원\n\n")
list_all = input("구매하실 품목의 이름을 입력하십시오\nEX) 솔의눈 지코\n")
list_list = list_all.split(" ")
#수량 선택
for i in range(len(list_list)):
if menu[i] in list_list:
menu_in = (int(input("%s 구매 수량을 입력하십시오\n"%menu[i])))
menu_sum.append(menu_dic.get(menu[i]) * menu_in)
else:
print("Error")
break
pri = sum(menu_sum)
#금액 결제
if pri > 0:
print("\n\n총 금액은 %d입니다"%pri)
pri_count = pri//10
for i in range(pri_count):
paym = int(input("동전을 넣어주세요.(10, 50 ,100, 500)"))
if paym not in coin:
print("Error")
break
pri = pri - paym
if pri > 0:
print("\n결제 금액이 부족합니다. %s원의 추가결제가 필요합니다."%pri)
elif pri == 0:
print("\n결제가 완료되었습니다.")
break
elif pri < 0:
print("\n결제금액이 초과되었습니다. %s원의 환불이 진행됩니다."%abs(pri))
break
else:
print("Error")
break
else:
print("올바른 값을 입력하십시오")
IP를 10진수로 받아서 2진수로 출력.
ip = input("IP를 입력해주세요(Ex:192.168.20.3):")
ip_li = ip.split(".") #옥텟별로 나눠서 리스트에 저장
ip_bin = []
for i in range(len(ip_li)):
ip_bin.append("")
for j in range(7, -1, -1):
if int(int(ip_li[i]) >= (2 ** j)): #2진수 변환 수식
ip_li[i] = str(int(ip_li[i]) - (2 ** j))
ip_bin[i] = ip_bin[i] + "1"
else:
ip_bin[i] = ip_bin[i] + "0"
print(".".join(ip_bin))
ip = input("IP를 입력해주세요(Ex:192.168.20.3):")
ip_list = ip.split(".") #옥텟별로 나눠서 리스트에 저장
bin_list = []
reject_list = []
for i in range(len(ip_list)):
bin_list.append(bin(int(ip_list[i]))) #리스트에 각각 바이너리 변환값 저장
for i in range(len(bin_list)):
reject_list.append((bin_list[i][2:])) # 리스트에 부호를 제거한 값을 추가.
for i in range(len(reject_list)):
if len(reject_list[i]) < 8:
reject_list[i] = "0"*(8-len(reject_list[i])) + reject_list[i] # 문자열 길이를 8로 맞춰줌.
#print(reject_list)
print("IP : %s의 2진수 주소 변환값입니다."%(ip))
print(reject_list[0], reject_list[1], reject_list[2], reject_list[3], sep=".") #리스트 값 사이에 .을 넣어 출력
'프로그래밍 및 코딩 > Python' 카테고리의 다른 글
while문 예제(1) (0) | 2024.08.09 |
---|---|
for문 예제(2) (0) | 2024.08.09 |
파일 입력 예시 (0) | 2024.08.05 |
반복문(1) (0) | 2024.08.02 |
파일 입출력 (0) | 2024.08.02 |