Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

ПОМОГИТЕ ПОЖАЛУЙСТА РЕШИТЬ ЗАДАЧУ ПО ПИТОНУ ПРОГРАММИРОВАНИЮ СРОЧНО

Илья Осипенко Ученик (74), на голосовании 10 месяцев назад
Задача: Разработать автоматизированную программу подсчета стоимости
заказа в ресторане с пользовательским вводом.

Условия: Как минимум 7 позиций в основном меню, 3 позиции в напитках, 3
позиции в десертах. В стоимость блюда входят его ингредиенты, работа повара,
наценка.

Необходимо: Создать все необходимые переменные, структуры данных,
правильно их назвав. Организовать ввод данных. Вывести на экран “чек”. В чеке
должна быть персональная скидка, “благодарстиве за выбор нашей компании”
и т.д.
Голосование за лучший ответ
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (264357) 11 месяцев назад
Псевдокод

 # Инициализация переменных и структур данных 
menu = {
'main_courses': {
'dish_1': {'name': 'Стейк', 'price': 15.99},
'dish_2': {'name': 'Паста', 'price': 10.99},
'dish_3': {'name': 'Рыба', 'price': 12.99},
# ... еще несколько блюд
},
'drinks': {
'drink_1': {'name': 'Кола', 'price': 2.99},
'drink_2': {'name': 'Сок', 'price': 1.99},
'drink_3': {'name': 'Чай', 'price': 1.49},
# ... еще несколько напитков
},
'desserts': {
'dessert_1': {'name': 'Торт', 'price': 7.99},
'dessert_2': {'name': 'Мороженое', 'price': 4.99},
'dessert_3': {'name': 'Пудинг', 'price': 3.99},
# ... еще несколько десертов
}
}

order = [] # Заказ пользователя

# Ввод данных пользователя
print("Добро пожаловать в наш ресторан!")

while True:
print("Меню:")
# Выводим пункты меню
# ...

choice = input("Выберите позицию из меню (или 'закончить' для завершения заказа): ")

if choice.lower() == 'закончить':
break

# Проверяем, существует ли выбранная позиция в меню
if choice in menu['main_courses'] or choice in menu['drinks'] or choice in menu['desserts']:
quantity = int(input("Укажите количество: "))
order.append({'item': choice, 'quantity': quantity})
else:
print("Некорректный выбор. Пожалуйста, выберите из меню.")

# Рассчет стоимости заказа
total_cost = 0
for item in order:
category, item_key = None, None

if item['item'] in menu['main_courses']:
category = 'main_courses'
item_key = item['item']
elif item['item'] in menu['drinks']:
category = 'drinks'
item_key = item['item']
elif item['item'] in menu['desserts']:
category = 'desserts'
item_key = item['item']

total_cost += menu[category][item_key]['price'] * item['quantity']

# Применение скидки
discount = 0.1 # 10% скидка (может быть настроено по вашему выбору)

total_cost_with_discount = total_cost * (1 - discount)

# Вывод чека
print("\nЧек:")
for item in order:
print(f"{menu[category][item['item']]['name']} x{item['quantity']}: ${menu[category][item['item']]['price'] * item['quantity']:.2f}")

print(f"\nИтого: ${total_cost:.2f}")
print(f"Скидка {discount * 100}%: ${total_cost - total_cost_with_discount:.2f}")
print(f"Итого со скидкой: ${total_cost_with_discount:.2f}")

# Благодарность за заказ
print("\nСпасибо за выбор нашей компании! Приходите еще!")
Похожие вопросы