Menu
Coddy logo textTech

Условный оператор

Часть раздела Основы путешествия по Dart на Coddy — урок 30 из 94.

Оператор условный (?:) предоставляет краткий способ записать операторы if-else в одну строку:

condition ? expressionIfTrue : expressionIfFalse

Пример:

void main() {
  int age = 20;
  String status = age >= 18 ? 'Adult' : 'Minor';
  
  print(status);
}

Вывод: Adult

Он работает с различными типами данных и идеален для простых условных присваиваний.

challenge icon

Задание

Легко

Создайте программу, которая использует условный оператор (?:) для определения, достаточно ли у игрока очков для повышения уровня в игре:

  1. Объявите целочисленную переменную playerScore со значением 750
  2. Объявите целочисленную переменную levelUpThreshold со значением 500
  3. Используйте условный оператор для создания строкового сообщения, которое говорит либо:
    • "Level up!" если очки игрока больше или равны порогу
    • "Keep trying!" если очки игрока меньше порога
  4. Сохраните это сообщение в строковой переменной с именем message
  5. Выведите очки игрока в формате: Player score: 750
  6. Выведите сообщение
  7. Обновите очки игрока до 450
  8. Используйте условный оператор снова для обновления сообщения на основе новых очков
  9. Выведите обновленные очки игрока в формате: Player score: 450
  10. Выведите обновленное сообщение

Ваш вывод должен точно соответствовать ожидаемому формату.

Шпаргалка

Оператор условного выражения (?:) предоставляет краткий способ записи конструкций if-else в одну строку:

condition ? expressionIfTrue : expressionIfFalse

Пример:

int age = 20;
String status = age >= 18 ? 'Adult' : 'Minor';

Он работает с различными типами данных и идеален для простых условных присваиваний.

Попробуйте сами

void main() {
  // Объявите свои переменные здесь
  int playerScore = _;
  int levelUpThreshold = _;
  
  // Используйте условный оператор для создания первого сообщения
  String message = playerScore >= levelUpThreshold ? _ : _;
  
  // Вывести счет игрока и сообщение
  print("Player score: $playerScore");
  print(message);
  
  // Обновить счет игрока
  playerScore = _;
  
  // Используйте условный оператор для обновления сообщения
  message = playerScore >= levelUpThreshold ? _ : _;
  
  // Вывести обновленный счет игрока и сообщение
  print("Player score: $playerScore");
  print(message);
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы