Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторні роботи.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
432.64 Кб
Скачать

Лабораторна робота №3

Тема: Типи даних. Оператори.

Мета: отримання практичних навичок у роботі з умовним оператором, оператором варіантів.

Контрольні запитання:

  1. Перелічити всі ситуації, коли в програмах на C++ використовується складений оператор.

  2. Чи еквівалентні наступні фрагменти програми:

if (e1) if (e2) S1; else S2;

if (e1) { if (e2) S1; else S2; }

if (e1) { if (e2) S1; } else S2;

if (e1) if (e2) S1; else ; else S2;

if (e1) if (e2) S1; else S2; else ;

Зауваження: тут e1 і e2 - вирази припустимого в цьому випадку типу; S1 і S2 - довільні оператори.

  1. Чи Вірні наступні твердження:

a) «будь-який вираз в C++ може бути перетворений в оператор додаванням до нього крапки з коми ( ; ) »

b) «порожній оператор у C++ - це відсутність яких-небудь символів у тому місці конструкції, де по синтаксису може знаходитися оператор»

c) «складений оператор ( блок ) у C++ - це сукупність операторів, укладена у фігурні дужки { }»

d) «оператор присвоювання в C++ - це вираз виду

змінна = вираз»

e) «тип вираз в умовному операторі if , в умові завершення циклу в операторах циклу може бути скалярним (тобто будь-яким цілочисельним, будь-яким дійсним або покажчиком )»

f) «у блоці опис/оголошення і оператори можуть розташовуватися в будь-якому порядку; єдина вимога - використання не повинне передувати опису/оголошенню»

g) «кожна гілка в операторі switch повинна бути позначена однією чи кількома різними цілочисельними константами чи константними виразами»

h) «якщо в операторі switch немає гілки default, то значення виразу вибору повинне збігатися з однієї з констант гілок case»

i) «в операторі switch вітки case і вітку default можна розташовувати в будь-якому порядку»

  1. чи Вірно твердження: « дія оператора continue; у приведених нижче прикладах еквівалентно дії оператора go to next; ».

  1. switch ( E ) { case C1: S;

case C2: S; continue;

case C3: S; }

next:; ...

  1. switch ( E ) { case C1: S;

case C2: S; continue;

case C3: next: S; }

  1. next: switch ( E ) { case C1: S;

case C2: S; continue;

case C3: S; }

Зауваження: тут E, E1, E2, E3 - вираз припустимого в цьому випадку типу ; S - довільний оператор; C1, C2 C3 - константи відповідного типу.

  1. чи Вірно твердження: « дія оператора break; у приведених нижче прикладах еквівалентна дії оператора go to next; ».

a) switch ( E ) { case C1: S;

case C2: S; break;

case C3: S; }

next:; ...

b) switch ( E ) { case C1: S;

case C2: S; break; S;

case C3: next: S; }

Зауваження: тут E, E1, E2, E3 - вираз припустимого в цьому випадку типу; S - довільний оператор; C1, C2 C3 - константи придатного типу.

Завдання:

  1. Дано ціле число. Знайти "найменший" тип, якого достатньо для збереження числа. Використати константи границь типів, визначені у файлі limits.h

  2. З клавіатури вводиться вираз вигляду c op c ( c-цифра, op- знак операції). Обчислити значення виразу. Використати оператор варіантів.

Завдання для індивідуального виконання:

  1. Задано координати точки (x, y) на площині, визначити чи потрапляє точка у заштриховану область на малюнку, який відповідає Вашому варіанту. Належність точки границі розуміти як належність області.

В аріант 1 Варіант 2

Варіант 3 Варіант 4

Варіант 5 Варіант 6

Варіант 7 Варіант 8

Варіант 9 Варіант 10

Варіант 11 Варіант 12

Варіант 13 Варіант 14

Варіант 15 Варіант 16