Задание А: Магазин напитков
Элементы: ListBox, Button, TextBox, Label, ComboBox
Суть задания:
Создать мини-магазин, где пользователь выбирает напитки, добавляет в корзину и оформляет заказ.
Техническое задание:
1. Ассортимент (фиксированный список):
• Вода — 50 руб.
• Сок — 120 руб.
• Кофе — 150 руб.
• Чай — 80 руб.
• Лимонад — 100 руб.
2. Элементы на форме:
• ListBox — список доступных напитков (отображать "Название — ХХ руб.")
• TextBox — поле для ввода количества (по умолчанию 1)
• Button "Добавить в корзину" — добавляет выбранный напиток в указанном количестве
• ListBox — корзина (отображать "Название x количество = сумма руб.")
• Label — итоговая сумма корзины
• ComboBox — способ оплаты ("Наличные", "Карта", "QR-код")
• Button "Оформить заказ" — подсчитывает итог и выводит чек в MessageBox
• Button "Очистить корзину" — очищает второй ListBox и обнуляет сумму
3. Логика работы:
• Нельзя добавить в корзину, если ничего не выбрано в списке товаров
• Количество должно быть больше 0 (если введено 0 или буквы — показывать ошибку)
• При добавлении в корзину не удалять товары из доступных
• При оформлении заказа показывать: "Заказ на сумму X руб. Оплата: [способ]. Спасибо!"
• После оформления корзина не очищается автоматически (пользователь сам решает)
4. Дополнительная фишка (простая):
• Если сумма больше 500 рублей — добавлять скидку 10% в чеке
Задание Б: Калькулятор чаевых
Элементы: Button, Label, TextBox, Slider, RadioButton
Суть задания:
Создать программу, которая помогает рассчитать сумму счёта с учётом чаевых и разделить на количество гостей.
Техническое задание:
1. Элементы на форме:
• TextBox — сумма счёта (в рублях)
• Slider — процент чаевых (от 0 до 30, шаг 1)
• Label — показывает текущий процент (рядом со слайдером)
• RadioButton — варианты качества обслуживания:
o Плохо (0%)
o Нормально (10%)
o Хорошо (15%)
o Отлично (20%)
• TextBox — количество гостей (по умолчанию 1)
• Label — итоговая сумма (счёт + чаевые)
• Label — сумма на каждого гостя
• Button "Рассчитать" — выполняет все вычисления
• Button "Очистить" — сбрасывает все поля
2. Логика работы:
• Пользователь вводит сумму счёта (только число, проверка на пустое поле)
• Выбирает процент чаевых (или слайдером, или RadioButton — они должны синхронизироваться)
• Указывает количество гостей
• При нажатии "Рассчитать":
o Сумма чаевых = счёт × (процент / 100)
o Общая сумма = счёт + чаевые
o Сумма на гостя = общая сумма / количество гостей
o Все результаты выводятся в Label с округлением до 2 знаков
• Если поле "сумма счёта" пустое или не число — показывать ошибку
• Количество гостей должно быть больше 0
3. Взаимодействие слайдера и RadioButton (важная часть):
• При изменении слайдера — снимать выделение со всех RadioButton
• При выборе RadioButton — устанавливать слайдер в соответствующее значение
Дополнительно
Добавить CheckBox "Округлить до целых" — округляет сумму на каждого гостя в большую сторону
1. Добавить ProgressBar, которая показывает процент чаевых визуально
2. При сумме счёта больше 5000 рублей — добавлять скидку 5% (и отображать в итоге)