Итог - Простые вычисления
Часть раздела Основы путешествия по Dart на Coddy — урок 21 из 94.
Задание
ЛегкоВы разрабатываете простой калькулятор очков для игры, который отслеживает прогресс игрока через разные уровни. Тщательно следуйте этим шагам, чтобы создать вашу программу:
Шаг 1: Инициализация переменных
- Создайте целочисленную переменную с именем
playerScoreи установите её значение в 100 - Создайте целочисленную переменную с именем
currentLevelи установите её значение в 5
Шаг 2: Расчёт игровой статистики
Вычислите и сохраните эти значения в новых переменных:
- Бонус за уровень: Умножьте текущий уровень на 20 и сохраните результат в переменной с именем
levelBonus - Доступные усиления: Каждое усиление стоит 25 очков. Используйте целочисленное деление (
~/), чтобы определить, сколько полных усилений игрок может купить на текущий счёт. Сохраните это вpowerUps - Оставшиеся очки: Используйте оператор модуло (
%), чтобы найти, сколько очков осталось после покупки всех возможных усилений. Сохраните это вremainingPoints
Шаг 3: Обновление очков и уровня игрока
- Добавьте бонус за уровень к очкам игрока, используя оператор
+= - Увеличьте текущий уровень на 1, используя префиксный оператор инкремента (
++currentLevel), и сохраните новое значение в переменной с именемnewLevel - Вычтите 15 очков из очков игрока, используя оператор
-= - Удвойте очки игрока, умножив их на 2 с помощью оператора
*=
Шаг 4: Отображение результатов
Операторы print уже предоставлены в коде. Не изменяйте их. Ваша задача — заполнить недостающие объявления переменных и расчёты выше так, чтобы вывод точно совпадал.
Примечание: Один из предоставленных операторов print отображает playerScore / 1.5, который выполняет обычное (нецелочисленное) деление и производит десятичный результат. Это ожидаемо — вывод для этой строки будет 246.66666666666666.
Важно: Убедитесь, что ваши расчёты выполнены в точном порядке, указанном выше, поскольку каждый шаг влияет на следующий.
Попробуйте сами
void main() {
// Инициализировать счет игрока и уровень
int playerScore = ?;
int currentLevel = ?;
// Вычислить бонус уровня, усиления и оставшиеся очки
int levelBonus = ?;
int powerUps = ?;
int remainingPoints = ?;
// Добавить бонус уровня к счету с использованием сокращения присваивания
?;
// Увеличить уровень и сохранить новый уровень
int newLevel = ?;
// Уменьшить счет на 15 с использованием сокращения присваивания
playerScore ?;
// Вычислить итоговый счет (умножить на 2)
playerScore ?;
// Вывести результаты
print('Initial score: 100');
print('Level bonus: $levelBonus');
print('Available power-ups: $powerUps');
print('Remaining points: $remainingPoints');
print('New level: $newLevel');
print('Score after bonus and penalty: ${playerScore / 1.5}');
print('Final score with multiplier: $playerScore');
}Все уроки раздела Основы
4Операторы, часть 2
Операторы сравненияЛогический ANDЛогический ORЛогический NOTОператоры проверки типаПовторение - Сравнения7Работа со строками
Конкатенация строкИнтерполяция строкМногострочные строкиСвойства строкОсновные методы строк10Коллекции - Основы словарей
Что такое словари?Создание словаряДоступ к значениям по ключуПары ключ-значениеПолучение размера словаряПолучение ключейПолучение значенийПроверка существования ключа2Переменные и основные типы данных
Что такое переменные?СтрокиЦелые числа (int)Вещественные числа (double)Булевы значения (bool)Вывод типов с 'var'Финальные переменныеКонстантные переменныеСоглашения об именованииОсновы null-безопасностиПовторение - Объявление переменных8Поток управления - Циклы
Цикл 'for'Цикл 'while'Цикл 'do-while'Использование 'break' в циклахИспользование 'continue' в циклахИтог - Повторение кода3Операторы. Часть 1
Арифметические операторыЦелочисленное делениеОператор модуляИнкремент и декрементСокращённые присваиванияИтог - Простые вычисления6Управление потоком - Принятие решений
Оператор 'if'Оператор 'else'Оператор 'else if'Повторение - Простые решенияВложенные операторы 'if'Оператор 'switch'9Коллекции - Основы списков
Что такое списки?Создание спискаДоступ по индексуПолучение длины спискаДобавление элементовУдаление элементовПроверка, пуст ли списокИтерация по списку12Расширенные функции
Необязательные позиционные параметрыИменованные параметрыОбязательные именованные параметрыЗначения параметров по умолчаниюПовторение - Параметры функций15Проект: Простой калькулятор
НастройкаОбъявление числа