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

Комбіновані операції присвоювання

  1. Вирази відношень

У С++ є можливість реалізувати операції відношень, яких у мові шість. Вони працюють з об’єктами класу sting. Кожне порівняння виразу повертає бульові ( типу bool) значення true, коли порівняння істинна, і false – у протилежному випадку. Ці операції використовуються у перевірочних умовах циклів. Ці шість операцій відношень вичерпують можливості для порівняння чисел у мові С++. От деякі приклади використання відношень у циклах:

for (x = 20; x > 5; x--) //продовжити, поки х більш ніж 5

for (x = 1; y ! = x; ++x) //продовжити, поки х не рівно x

for (x = 1; y ! = x; ++x) //продовжити, поки х не рівно x

Операції відношень мають більш низький пріоритет, ніж арифметичні операції.

3. Операції відношень

ЛЕКЦІЯ 13.

  1. Цикл while

Цикл while – це цикл for, у якому вилучені ініціалізація і оновлення, а мається тільки перевірочна умова і тіло циклу:

while (перевірочна умова)

тіло циклу

Спочатку програма виконує вираз перевірочної умови у дужках. Коли вираз оцінюється як вірний, то програма виконує оператори тіла ціклу. Після завершення операторів тіла, програма повертається до перевірочної умови і заново оцінює його. Коли умова повертає true або не нуль, програма знову виконує оператори тіла. Цей цикл продовжується до тих пір, поки перевірочна умова не повертає false. Коли ви у процесі роботи циклу захочете перервати його роботу, то у тілі циклу повинно здійснитися дія, яка змініть вираз перевірочної умови. Цикли for і while є циклами з вхідною умовою, тобто умова оцінюється на початку циклу. Коли умова хибна, то програма ніколи не зробить виконання операторів тіла циклу.

Після досягнення нульового символу цикл завершується. Оскільки рядок містить маркер кінця, програма не потребує явної інформації про довжину рядка. Ця техніка проходу по символам рядка до нульового символу є стандартним методом обробки рядків в С++.

  1. Яка різниця між циклами for і while?

Цикл for з лічильником застосовують тоді, коли необхідно розташувати інформацію у одному місці – початкове значення, кінцеве значення і метод оновлення лічильника. Цикл while застосовують коли програмісти не знають точно скільки разів повинен виконуватися цикл.

Іноді виникає потреба пристановити виконання програми на деякій час, щоб не пропустити важливу інформацію непоміченою. Цикл while зручніше для створення такого ефекту.

  1. Цикл do while.

Цикл do while відрізняється від циклів for та while тим, що це цикл з перевіркою на виході із циклу. Це визначає, що цикл спочатку виконує оператори тіла перший раз, а потім перевіряє умову циклу, щоб визначити, потрібно продовжувати цикл чи ні. Коли умова оцінюється як false, цикл переривається; у протилежному випадку виконується повторний цикл з наступною перевіркою умови.

  1. Цикли і текстовий ввід.

Об’єкт cin підтримує три різні режими одно символьного вводу, кожні які зі своїм власним інтерфейсом. Один спосіб заклечається в використанні деякого спеціального символу, який іноді має назву сигнального символу (sentinel character) в якості сигналу останову. Наприклад, наступна програма зупиняє читання вводу, коли вона зустрічає символ #. Програма рахує кількість прочитаних символів і відображає їх. Це виконує операційна система. У даному випадку це буде виконувати і операційна система, і текстова програма, яка відображає ввід. По завершенню програми видається звіт про загальну кількість символів, що оброблені.

  1. Клас istram.

Клас istram (визначений у iostream), до якого відноситься об’єкт cin, включає функцію-член, котра відповідає цієї вимоги. Зокрема, функція cin.get (ch) читає із вводу наступний символ, навіть коли це пробіл, та присвоює його змінної ch. Замінив cin << ch викликом цієї функції, можна виправити недоліки програми.

ЛЕКЦІЯ 14.

  1. Що визначає кінець файлу? Коли метод cin виявляє EOF?

Коли ввід поступає із файлу, то можна використовувати EOF (end-of-file), який визначає кінець файлу. Засоби вводу С++ взаємодіють з операційною системою для виявлення моменту досягнення кінця файлу і надає цю інформацію програмі. Коли метод cin виявляє EOF, він установлює прапорець в об’єкті cin, який визначає умову EOF. Коли встановлений цій прапорець, cin не читає ніякого вводу, і останні виклики cin не мають ніякого ефекту. Для файлового вводу це має сенс, оскільки не можна читати нічого за кінцем файлу. Однак, при клавіатурнім введенні це можете емулювати EOF для перерву циклу, який пізніше можна продовжити ввід інформації. Метод cin.cltar () очищує прапорець EOF і дозволяє продовжувати ввід. Слід розуміти, що EOF не представляє символ, що вводиться. Це просто сигнал про те, що символів більше не має. У наступній програмі представлений підхід cin.get (), який скорочує код за рахунок символьного вводу з перевірочною умовою циклу while.