ДЗ_3 - maxred01/QA1825 GitHub Wiki
Задача 1: Система безопасности банка
Условие: Пользователь пытается снять деньги в банкомате.
- Проверьте ПИН-код (должен быть 4 цифры)
- Проверьте баланс (нельзя снять больше, чем есть)
- Проверьте лимит за день (не более 100 000 руб)
Если все условия выполнены, разрешите операцию. Выводите конкретные сообщения об ошибках.
Задача 2: Умный термостат
Условие: Система анализирует:
- Время суток (утро: 6-11, день: 12-17, вечер: 18-23, ночь: 0-5)
- Погоду на улице (холодно/тепло)
- Наличие людей дома (да/нет)
Правила:
- Если люди дома и холодно → 22°C
- Если люди дома и тепло → 20°C
- Если ночь → 18°C
- Если нет людей → 16°C
Задача 3: Валидатор пароля
Условие: Пароль должен содержать:
- Минимум 8 символов
- Хотя бы 1 цифру
- Хотя бы 1 букву в верхнем регистре
- Хотя бы 1 спецсимвол (!@#$%^&*)
Выведите список проблем, если пароль невалиден.
Задача 4: Конвертер дат
Условие: Пользователь вводит дату в формате:
- "ДД.ММ.ГГГГ" или "ДД/ММ/ГГГГ" Программа должна:
- Проверить корректность формата
- Преобразовать в ISO-формат (ГГГГ-ММ-ДД)
- Определить день недели
Задача 5: Калькулятор налогов
Условие: Рассчитайте налог по прогрессивной шкале:
- Доход ≤ 20 000 → 10%
- 20 000 < доход ≤ 50 000 → 20% на часть превышения
- Доход > 50 000 → 30% на превышение + фиксированный платеж 5000
Задача 6: Система рекомендаций фильмов
Условие: Рекомендуйте фильм на основе:
- Возраста пользователя
- Любимого жанра (комедия, фантастика, ужасы)
- Времени просмотра (утро/вечер)
Правила:
- Детям < 12 → только мультфильмы
- Утром → легкие жанры
- Вечером → любые жанры
Задача 7: Анализатор здоровья
Условие: На основе введенных данных:
- Возраст
- Вес (кг)
- Рост (м)
- Курение (да/нет)
Рассчитайте:
- ИМТ (вес / рост²)
- Риск для здоровья:
- ИМТ > 30 → высокий
- Курение и возраст > 40 → высокий
- Остальные → умеренный
Задача 8: Конвертер валют с комиссиями
Условие: Пользователь вводит:
- Сумму в рублях
- Целевую валюту (USD, EUR, CNY)
- Тип операции (покупка/продажа)
Курс и комиссии:
- USD: 90 руб (покупка), 88 руб (продажа), комиссия 1.5%
- EUR: 100 руб (покупка), 98 руб (продажа), комиссия 1%
Задача 9: Система контроля доступа
Условие: Проверьте доступ в зону:
- Сотрудник: доступ всегда
- Контрагент: только с 9:00 до 18:00 в будни
- Гость: только с сопровождающим
Дополнительные условия:
- Экстренная ситуация → доступ всем
- Проверка на запрещенный список
Задача 10: Генератор научных гипотез
Условие: На основе введенных параметров:
- Температура (°C)
- Давление (кПа)
- Наличие катализатора (да/нет)
Сгенерируйте гипотезу:
- t < 0 и давление > 100 → "Образование льда"
- t > 100 и катализатор → "Реакция синтеза"
- t > 200 и давление > 500 → "Плазменное состояние"
- Иначе → "Стабильное состояние"