Практические задания - Урок 4: Логика

Инструкция: Решите все задания по порядку. Создайте отдельный файл .dart для каждой задачи или решите все в одном файле, разделяя задачи комментариями.

Задача № 1: Таблица истинности

Уровень сложности:

Составьте таблицу истинности для логического выражения (A && B) || !C

Практика

Составьте таблицу истинности для всех значений

Напишите результат для логического выражения
(A && B) || !C

A B C ( A && B ) || !C
0 0 0 1

Задача № 2: Просмотр фильма

Уровень сложности:

Есть три логические переменные:

Составьте логическое выражение для переменной canWatchMovie, которое будет определять, можно ли посмотреть фильм.

Подсказка: Подумайте, при каких условиях человек может посмотреть фильм. Обычно это когда у него есть время, он не слишком устал и ему нравятся фильмы.

Задача № 3: Время работы Кванториума

Уровень сложности: ⭐⭐

Есть переменная time в которой указано время (в часах от 0 до 23).

Составьте логическое выражение, которое проверяет условие времени работы Кванториума.

Условия работы:

Примеры
Время 10 утра → true (работает)
Время 13 часов → false (обед, не работает)  
Время 23 часа → false (ночь, не работает)

Задача № 4: Вход в подземелье

Уровень сложности: ⭐⭐

Чтобы войти в древнее подземелье, персонаж должен быть минимум 10-го уровня и иметь при себе "Ключ от подземелья". Спросите пользователя уровень (int) и наличие ключа (y/n). Выведите, может ли персонаж войти.

Задача № 5: Использование заклинания

Уровень сложности: ⭐⭐

Чтобы использовать мощное заклинание "Огненный шар", у мага должно быть достаточно маны (больше 50) или на нём должен быть эффект "Вдохновение". Запросите количество маны (int) и наличие эффекта (y/n).

Задача № 6: Защита от яда

Уровень сложности:

Персонаж защищён от яда, если на нём надет "Амулет противоядия". Спросите пользователя, надет ли амулет (y/n). Инвертируйте значение с помощью !, чтобы узнать, отравлен ли персонаж.

Задача № 7: Условия для критического удара

Уровень сложности: ⭐⭐⭐

Персонаж наносит критический удар, если он атакует со спины и (у него высокий показатель ловкости (больше 20) или он находится в состоянии невидимости). Спросите пользователя три параметра.

Задача № 8: Открытие магического замка

Уровень сложности: ⭐⭐⭐

Магический замок откроется, если игрок — "маг" XOR у него есть "универсальный ключ" (только одно из условий). Запросите у пользователя обе характеристики (y/n).

Подсказка: Используйте оператор неравенства != для имитации исключающего ИЛИ. Замок откроется только если выполнено ровно одно условие из двух.