Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Завдання: Тернарний Оператор | Поглиблені теми
C++ Умовні оператори

bookЗавдання: Тернарний Оператор

Тернарний оператор — це потужний інструмент, який часто використовується для швидкого прийняття рішень у коді та може значно підвищити читабельність коду за умови правильного використання.

ternary.h

ternary.h

copy
1
condition ? expression_if_true : expression_if_false;

Умова перевіряється. Якщо умова дорівнює true, виконується вираз перед :, інакше — вираз після :.

Тернарний оператор фактично є альтернативою оператору if-else, забезпечуючи читабельність і зручність коду.

if_else.h

if_else.h

ternary.h

ternary.h

copy
123456789
int variable; if (condition) { variable = 25; } else { variable = 10; }

Як видно, використання тернарного оператора дозволяє зекономити місце в коді та підвищити читабельність і ефективність. Однак важливо зберігати баланс і підтримувати зручність супроводу та зрозумілість коду.

Тернарні оператори також можна вкладати для обробки складніших умов. Але не варто потрапляти у пастку надмірного використання тернарних операторів.

nested_ternary.h

nested_ternary.h

copy
12345678910
std::string eligibility = age < 18 ? "Too young" : (isStudent ? (hasJob ? "Eligible for student discount" : "Eligible for student perks") : (hasJob ? "Eligible for job-related benefits" : "Not eligible"));

Дуже складно зрозуміти, що відбувається. Тому краще обмежуватися одним тернарним оператором з максимально одним рівнем вкладеності одночасно.

Завдання

Swipe to start coding

Ви створюєте оцінювач успішності студента. Програма повинна обчислити середній бал за трьома тестами та визначити категорію успішності за допомогою тернарного оператора.

  1. У функції evaluatePerformance обчисліть середнє арифметичне трьох балів (score1, score2, score3), додавши їх і поділивши на 3.0.
  2. Використайте тернарний оператор для визначення категорії успішності на основі середнього балу:
    • Якщо середній бал 85 або вище -> "Excellent".
    • Якщо середній бал 70 або вище, але менше 85 -> "Good".
    • Якщо середній бал 50 або вище, але менше 70 -> "Average".
    • В іншому випадку -> "Fail".
  3. Поверніть категорію успішності з функції.

Приклад

evaluatePerformance(90, 87, 92)"Excellent"
evaluatePerformance(75, 70, 72)"Good"
evaluatePerformance(55, 60, 50)"Average"
evaluatePerformance(40, 45, 30)"Fail"

Рішення

solution.cpp

solution.cpp

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 1
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Suggested prompts:

Can you give an example of a ternary operator in code?

What are some common mistakes when using ternary operators?

When should I use an if-else statement instead of a ternary operator?

close

Awesome!

Completion rate improved to 7.69

bookЗавдання: Тернарний Оператор

Свайпніть щоб показати меню

Тернарний оператор — це потужний інструмент, який часто використовується для швидкого прийняття рішень у коді та може значно підвищити читабельність коду за умови правильного використання.

ternary.h

ternary.h

copy
1
condition ? expression_if_true : expression_if_false;

Умова перевіряється. Якщо умова дорівнює true, виконується вираз перед :, інакше — вираз після :.

Тернарний оператор фактично є альтернативою оператору if-else, забезпечуючи читабельність і зручність коду.

if_else.h

if_else.h

ternary.h

ternary.h

copy
123456789
int variable; if (condition) { variable = 25; } else { variable = 10; }

Як видно, використання тернарного оператора дозволяє зекономити місце в коді та підвищити читабельність і ефективність. Однак важливо зберігати баланс і підтримувати зручність супроводу та зрозумілість коду.

Тернарні оператори також можна вкладати для обробки складніших умов. Але не варто потрапляти у пастку надмірного використання тернарних операторів.

nested_ternary.h

nested_ternary.h

copy
12345678910
std::string eligibility = age < 18 ? "Too young" : (isStudent ? (hasJob ? "Eligible for student discount" : "Eligible for student perks") : (hasJob ? "Eligible for job-related benefits" : "Not eligible"));

Дуже складно зрозуміти, що відбувається. Тому краще обмежуватися одним тернарним оператором з максимально одним рівнем вкладеності одночасно.

Завдання

Swipe to start coding

Ви створюєте оцінювач успішності студента. Програма повинна обчислити середній бал за трьома тестами та визначити категорію успішності за допомогою тернарного оператора.

  1. У функції evaluatePerformance обчисліть середнє арифметичне трьох балів (score1, score2, score3), додавши їх і поділивши на 3.0.
  2. Використайте тернарний оператор для визначення категорії успішності на основі середнього балу:
    • Якщо середній бал 85 або вище -> "Excellent".
    • Якщо середній бал 70 або вище, але менше 85 -> "Good".
    • Якщо середній бал 50 або вище, але менше 70 -> "Average".
    • В іншому випадку -> "Fail".
  3. Поверніть категорію успішності з функції.

Приклад

evaluatePerformance(90, 87, 92)"Excellent"
evaluatePerformance(75, 70, 72)"Good"
evaluatePerformance(55, 60, 50)"Average"
evaluatePerformance(40, 45, 30)"Fail"

Рішення

solution.cpp

solution.cpp

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 1
single

single

some-alt