Итог - Простые вычисления
Часть раздела Основы путешествия по 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Проект: Простой калькулятор
НастройкаОбъявление числаПотренируйтесь самостоятельно: Онлайн-компилятор Dart