Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы по Основам программирования. Список литературы. 1 курс.docx
Скачиваний:
47
Добавлен:
19.02.2016
Размер:
139.53 Кб
Скачать

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

  1. Що таке час існування та область дії об'єкта?

  2. У чому сутність мембранного ефекту?

  3. Які є стратегії розподілу пам'яті?

  4. Що таке глобальний дозвіл видимості імен?

  5. Як організована та використовується пам'ять типу “купа”?

  6. Як організована та використовується пам'ять типу “стек”?

  7. Як ініціалізуються об'єкти в залежності від використаної стратегії розподілу пам'яті?

  8. Наведіть приклад реалізації статичного розподілу пам̓яті

  9. Наведіть приклад реалізації динамічного розподілу пам̓яті в блоці

  10. Наведіть приклад реалізації динамічного розподілу пам̓яті в купі

  11. Наведіть приклади утворення сміття

Лабораторна робота 1.10

Дослідження структурних операторів

Мета лабораторної роботи - вивчити устрій структурних операторів та дослідити можливості та особливості застосування різноманітних форм структурних операторів.

Теоретичні відомості

Оператор

<оператори базису>::= <оператор опису>|<оператор привласнення>|

<структурний оператор>

<оператор>::=<оператор привласнення>|<структурний оператор>

Структурні оператори

а) Складений оператор

<складений оператор>::={{<оператор>}2}

б) Оператор вибору (умовна форма)

<оператор вибору>::=if (<вираз відношення>)<оператор>

<вираз відношення>::=<вираз><операция відношеня><вираз>

Наприклад:

if (flag == 1) // flag – змінна цілого типу

{

iA = iA + 10;

flag = 0;

}

в) Оператор вибору (альтернативна форма)

<оператор вибору>::=if (<вираз відношення>)<оператор>;else<оператор>

Наприклад:

if (flag == 1)

{

iA = iA * 10;

flag = 0;

};

else

{

iA = iA + 10;

flag = 1;

}

г) Оператор вибору (охоронна форма/перемикач)

<оператор вибору>::= switch (< вираз >){{ case<вариант вибору> }1

{default: <оператор>}01 }

<вариант вибору>::=<R - вираз>: <оператор> break;

Наприклад:

switch cB

{

case ‘A’: {iA = iA +10; break;}

case ‘B’: {iA = iA +20; break;}

case ‘C’: {iA = iA +30; break;}

default: iA = iA +100;

}

д) Оператор повторення (форма repeat-until / do-while)

<оператор повторення>::= do<оператор>while(<вираз відношення>)

Наприклад:

iMounth = 1;

do

{

iAccount = iAccount + iAccount/100;

iMounth = iMounth + 1;

}

while (iMounth<=12);

е) Оператор повторення (форма while-do)

<оператор повторення>::= while(<вираз відношення>)<оператор>

Наприклад:

iMounth = 1;

while (iMounth <= 12)

{

iAccount = iAccount + iAccount/100;

iMounth = iMounth + 1;

}

ж) Оператор повторення (форма for-step-do)

<оператор повторення>::= for ({< оператор привласнення >}01;

{<вираз відношення>}01;{< оператор привласнення >}01){<оператор>}01

Наприклад:

for (iMounth = 1; iMounth <= 12; iMounth = iMounth + 1)

{

iAccount = iAccount + iAccount / 100;

if (iMounth > 6)

iAccount = iAccount + iAccount * 0.05;

}

Правила написання програм

При написанні складених операторів розташовуйте операторні дужки та оператори, які входять у складений, в окремих рядках програми, розміщуючи вміст складеного оператора всередину операторних дужок.

При написанні операторів вибору розташовуйте частини “then” і “else” окремо, розміщуючи їхній вміст окремо, кожний оператор на окремому рядку програми.

Розташовуйте кожний оператор у варіанті вибору (охоронна форма) на окремому рядку.

При написанні операторів повторення (циклу) розташовуйте тіло циклу окремо від заголовку, а в тілі циклу кожний оператор розташовуйте на окремому рядку.

Не використовуйте, якщо не потрібно, дужок складеного оператора.

Не ставте однакових операторів у гілці операторів вибору.

Не використовуйте охоронну форму оператора вибору, замінюйте її альтернативною.

Не пишіть вироджених циклів, таких що не виконуються ані разу або можуть бути замінені явним повторенням (вибором).

Не вводьте у цикл операторів, не зв'язаних з повторенням.