Перейти до змісту

ЛР3. Числові типи, перетворення та умовний оператор

Коротко про роботу

Система формує статистику партії та вибирає тарифне значення за одним порогом. Варіант визначає STUDENT_X.

Відкрити робочий зошит Як виконувати лабораторні

1. Умова

Система формує статистику партії та вибирає тарифне значення за одним порогом.

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

2. Що треба знати

Робота виконується після Л1–Л2. Потрібні поняття:

  1. основні числові типи
  2. цілочисельне ділення
  3. static_cast
  4. умовний оператор ?:

Межа матеріалу

Використовуйте поняття, вивчені до Л1–Л2. Не замінюйте ?: великим вкладеним виразом. Для цієї роботи потрібний один простий вибір значення.

3. Варіант, вхідні дані та результат

У зошиті заповніть STUDENT_NAME, STUDENT_GROUP і STUDENT_X від 1 до 30.

Вхідні дані

Поле Тип Зміст
total_items int кількість елементів
groups int кількість груп
measured_total double сума вимірювань
measured_count int кількість вимірювань
metric double контрольний показник
threshold double поріг
low_rate double значення нижче порога
high_rate double значення від порога

Поля результату

Поле Зміст
integer_quotient результат цілочисельного ділення
fractional_quotient дробовий результат
mean_measurement середнє вимірювання
selected_rate значення, вибране через ?:

Назви полів результату не змінюйте. Перша комірка лише показує значення варіанта і не оголошує предметні змінні. Перед розв’язанням кожного завдання самостійно оголосіть потрібні вхідні змінні з показаними значеннями. Власні та результуючі змінні також оголошуйте звичайно, як у лекційних прикладах. Обчислення виконуйте у блоці { ... }; код над блоком використовуйте лише там, де це позначено. Наприкінці блока вже є службовий рядок самоперевірки для контрольних полів — його не потрібно писати або змінювати. Формат std::cout обирайте за змістом завдання: спеціального формату для самоперевірки немає.

4. Терміни і правила

Терміни

  • явне перетворення типу — запис static_cast<T>(value), який явно задає потрібний тип обчислення.
  • умовний оператор ?: — вираз condition ? value_if_true : value_if_false, що вибирає одне з двох значень.

Правила

  1. integer_quotient отримайте зі звичайного ділення двох цілих total_items і groups.
  2. fractional_quotient описує те саме відношення як дробове число.
  3. mean_measurement — середнє значення measured_total для measured_count вимірювань.
  4. selected_rate дорівнює low_rate, коли metric < threshold; інакше використовується high_rate.

5. Завдання

Завдання 1

Обчисліть integer_quotient через int / int і fractional_quotient як дробовий результат. Виведіть обидва значення.

Завдання 2

Обчисліть mean_measurement без втрати дробової частини. Використайте явне перетворення типу.

Завдання 3

Обчисліть selected_rate через ?: за умовою metric < threshold. Перевірте значення нижче порога та на порозі.

6. Перевірка і здача

  1. Запустіть самоперевірку та виправте помилки.
  2. Перезапустіть ядро і виконайте роботу ще раз від початку.
  3. Збережіть .ipynb і PDF з кодом та результатами.

Назва PDF: LR03_Прізвище_Група_VNN.pdf.