Advertisement
Venerve

Untitled

Mar 23rd, 2019
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.52 KB | None | 0 0
  1. def main_menu(cash_check, vending_machine, inserted_money):
  2.     print("1.Insert a banknote \n"
  3.           "2.Show available products \n"
  4.           "3.Select a product \n"
  5.           "4.Get the change \n")
  6.     n = int(input("Input a figure of operation: "))
  7.     if n == 1:
  8.         inserting(cash_check, inserted_money)
  9.     if n == 2:
  10.         available_product_present(vending_machine)
  11.     if n == 3:
  12.         available_products_cash(cash_check, vending_machine, inserted_money)
  13.     if n == 4:
  14.         get_change(inserted_money, cash_check)
  15.  
  16.  
  17. def inserting(check_cash, money):
  18.     banknote = int(input("Please, insert a banknote "))
  19.     if banknote == 50:
  20.         check_cash.insert(FIFTY, 50)
  21.         money += 50
  22.     elif banknote == 100:
  23.         check_cash.insert(HUNDRED, 100)
  24.         money += 100
  25.     elif banknote == 200:
  26.         check_cash.insert(TWO_HUNDRED, 200)
  27.         money += 200
  28.     elif banknote == 500:
  29.         check_cash.insert(FIVE_HUNDRED, 500)
  30.         money += 500
  31.     else:
  32.         print("Invalid banknote. Please, try again")
  33.     return check_cash, money
  34.  
  35.  
  36. def available_product_present(vending_machine):
  37.     for it in range(len(vending_machine[NAME])):
  38.             if vending_machine[QUANTITY][it] > 0:
  39.                 print(vending_machine[NAME][it], end=' ')
  40.                 print(vending_machine[PRICE][it], end=' ')
  41.                 print(vending_machine[QUANTITY][it])
  42.  
  43.  
  44. # def is_change_available(sum, available_coins):
  45.  
  46.  
  47. def available_products_cash(banknotes_check, vending_machine, money):
  48.     if money == 0:
  49.         print("You haven't inserted a banknote. Try again")
  50.     else:
  51.         for item in range(len(vending_machine[PRICE])):
  52.             if money >= vending_machine[PRICE][item] and vending_machine[QUANTITY][item] > 0:
  53.                 print(f"Number of {vending_machine[NAME][item]} is {item}")
  54.             choice = int(input("Please, input the number of chosen product: "))
  55.             if choice != " ":
  56.                 print(vending_machine[NAME][choice], vending_machine[PRICE][choice], vending_machine[QUANTITY][choice],
  57.                       end=' ')
  58.                 vending_machineending_machine[QUANTITY][choice] -= 1
  59.                 money -= vending_machine[PRICE][choice]
  60.  
  61.     return banknotes_check, vending_machine, money
  62.  
  63.  
  64. def get_change(money, banknotes_check, check_change, checking):
  65.     for i in range(len(banknotes_check)):
  66.         money += banknotes_check[i]
  67.     if money == 0:
  68.         print("You haven't inserted a banknote. Try again")
  69.     else:
  70.         for i in range(len(check_change)):
  71.             if check_change[i] != 0:
  72.                 checking.append(True)
  73.         if checking == [True, True, True, True]:
  74.             print(f"Ten-coin - {money // 10}, five-coin - {money % 10 // 5}, two-coin {money % 5 // 2}, one-coin {money % 1}")
  75.             money = 0
  76.             banknotes_check = [0, 0, 0, 0]
  77.         elif check_change[TEN] == 0:
  78.             print(
  79.                 f"There are not left ten-coins, five-coin - {money % 10 // 5}, two-coin {money % 5 // 2}, one-coin "
  80.                 f"{money % 1}")
  81.             money = 0
  82.             banknotes_check = [0, 0, 0, 0]
  83.     return money, banknotes_check
  84.  
  85.  
  86. machine = [["Milkshake", "TikTak", "Oreo", "Mars", "It"], [90, 50, 120, 75, 300], [15, 15, 15, 15, 15]]
  87. NAME, PRICE, QUANTITY = range(3)
  88. cash = [0, 0, 0, 0]
  89. FIFTY, HUNDRED, TWO_HUNDRED, FIVE_HUNDRED = range(4)
  90. change = [400, 400, 400, 400]
  91. TEN, FIVE, TWO, ONE = range(4)
  92. sum_of_money = 0
  93.  
  94. while True:
  95.     main_menu(cash, machine, sum_of_money)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement