Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Блок із 1-го або більш операторівСодержание книги
Поиск на нашем сайте }
while працює доти, поки вираз не буде дорівнює 0. Якщо блок складається з 1-го оператора, фігурні дужки можна не ставити. Приклад 1. Програма запитує в користувача, чи продовжувати роботу.
#include <iostream.h>
Void main() { char ans; cout << «Продовжити (Y/N)?»; cin >> ans; while((ans!=’Y’)&&(ans!=’y’)&&(ans!=’N’) &&(ans!=’n’)) { cout << «\nНе правильно натиснута клавіша\n»; cout << «Продовжити (Y/N)?»; cin >> ans; } }
Приклад 2. Підрахувати число символів у слові.
#include <iostream.h>
Void main() { char name[15]; int count = 0; cin >> name; while (name[count]!= 0) count++; cout << count; } Цикл може бути організований за допомогою do … while Синтаксис:
do { блок з одного або більш операторів; } while (<вираз>);
Цикл має мінімум одну ітерацію. Цикл продовжується доти, поки вираз істинний, тобто не дорівнює 0. Якщо блок складається з одного оператора, фігурні дужки можна не ставити. Приклад, аналогічний прикладу 1:
#include <iostream.h>
Void main() { char ans; do { cout <<”\n Будете продовжувати введення (Y/N)?”; cin >> ans; } while ((ans!=’Y’)&&(ans!=’y’)&&(ans! =’N’) &&(ans! =’n’)); }
У С++ передбачена можливість дострокового виходу з програми до її нормального завершення за допомогою функції exit(). Синтаксис: exit(status) -передається значення операційній системі через оточення errorlevel - може перевірятися в командних файлах. Для виходу з циклу використовується оператор break; він забезпечує вихід із поточного циклу.
Організація циклів із використанням оператора for Оператор for. Формат:
for ([початкове вираз]; [контрольне вираз]; [лічильник]) { блок з одного або більш операторів; }
Якщо в блоці один оператор – фігурні дужки можна не ставити. Початкове вираз визначається один раз. Якщо контрольний вираз не дорівнює 0, то він є істинним і виконується блок. Цикл припиняє роботу, якщо контрольний вираз дорівнює 0. Вираз лічильник обчислюється при кожному повторенні циклу. Приклади:
for(i = 10; i! = 0; i--) або for(i = 10; i; i--)
char i; for(i = ’1’; i <= ’Z’; i++)
for(;;) //- порожньо - вічний цикл { cout << “12”; }
int i = 1; for(;i <= 100;) { cout << i; i++; }
int i; for(i = 1; i <= 10; i++) cout << i << ’\n’; Результат: … Вкладені цикли: for(i = 1; i <= 3; i++) { for(j = 1; j <= 3; j++) { cout << j << ’\n’; } //У цьому фрагменті фігурні дужки } //можна не ставити
Результат: Додатково використовуються оператори:
break; continue;
Оператор break завершує цикл достроково. Приклад:
int num; char i; cout << “Виведення 20 чисел \n”; for(num = 1; num <= 20; num++) { cout << num << ’\n’; cout << “Будете виводити наступне число (Y/N)?”; cin >> i; if((i == ’N’) || (i == ’n’)) break; }
Оператор continue повертає управління до початку циклу. Приклад: Тільки малі літери при введенні перетворяться в прописні і будуть виводитись на екран.
#include <iostream.h>
Void main() { char m; int i; for(i = 1; i <= 5; i++) { cin >> m; if((m < ’a’) || (m > ’z’)) continue; m-= 32; cout << m << ’\n’; } } Оператори switch і goto Оператор switch замінює короткий оператор, що розгалужується if… else Синтаксис:
Switch (вираз) { case <конст_вираз 1>: блок операторів С++; case <конст_вираз 2>: блок операторів С++; ... case < конст_вираз n>: блок операторів С++; [default: блок операторів С++;] }
Після обчислення виразу в заголовку оператора, його результат послідовно порівнюється з константами-вираженнями <конст_вираз 1>... <конст_вираз n> починаючи із самого верхнього, поки не буде встановлена їхня відповідність. Тоді виконуються оператори усередині відповідного case, і після цього управління переходить на такий константний вираз без перевірок. Саме тому наприкінці кожної послідовності операторів повинен бути присутнім оператор break, що забезпечує вихід з оператора switch. Гілка, яка має назву default (по умовчанню) може бути відсутня. Якщо вона є, то послідовність операторів, що знаходиться за словом default, виконується тільки тоді, коли порівняння з жодної зі стоячих вище константних виразів не є істинним. Приклад:
Switch (t) { case 1: cout << “\nСообщение 1”; break; case 2: cout << “\nСообщение 2”; break; ... default: cout << “\n Зрадливий код”; }
Якщо break не ставиться наприкінці блока операторів, і ми потрапляємо за умовою в блок, то здійснюється «провал донизу». Приклад:
Switch (num) { case 1: cout << "1"; case 2: cout << "22"; case 3: cout << "333"; }
Якщо num = 1, то результат буде:
Без використання break можуть бути оригінальні рішення. Приклад:
Switch (num) { case 1: case 2: case 3: cout << “Номер від 1 до 3”; break; case 4: cout << “Номер 4”; break; default: cout << “Помилковий номер”; }
У загальному випадку < виразом> може бути будь-яке вираз, константа або змінна типу int, char або long int. Константи-вираження - це константи типу int, char або long int. Оператор switch зручно використовувати при реалізації меню.
Оператор goto – рідко зустрічається, краще цим оператором не користуватися. Приклад використання:
goto tt; // Перехід на мітку tt. c= 12; ... tt:...
ТЕМА 5: СТВОРЕННЯ ФУНКЦІЙ ПЛАН 1. Створення функцій. 2. Видимість змінних. 3. Передача значень. 4. Повертаємі значення і прототипи функцій.
Створення функцій Не варто робити один великий модуль програми. У залежності від можливості окремі “шматки” програми необхідно виділити у вигляді окремих функцій. Функція, написана на C++, звичайно має такі властивості: – Кожна функція повинна мати ім’я, яке починається з букви або знака підкреслення “ _ ”. Ім’я функції може складатися з цифр, букв і знаків підкреслення. – За ім’ям кожної функції повинна стояти пара круглих дужок. Це дозволяє відокремлювати функції від змінних. – Тіло кожної функції, що починається відразу ж після круглих дужок, повинно бути замкнуте у фігурні дужки. Це означає, що тіло кожної функції складає блок з одного або декількох операторів. Виклик функції схожий на з’їзд з автомагістралі. Головна дорога – функція main(). Підключення функції рівнозначно з’їзду на об’їзну дорогу. Після повернення з функції (оператор return) управління передається основній функції main(), тобто здійснюється повернення на основну автомагістраль.
Приклад: У програмі користувач одержує звіт одного з відділів: бухгалтерського, інженерного або відділу управління.
#include <iostream.h>
void bux_otd(void) { //код створення звіту бухгалтерського відділу … return; }
void ing_otd(void) { // код створення звіту інженерного відділу … return; }
void up_otd(void) { // код створення звіту відділу управління … return; }
Void main() { int choice; do { cout << “Вибір коду відділу \n”; cout << “\t1. Бух. відділ \n”; cout << “\t2. Інж. відділ \n”; cout << “\t3. Відділ управління \n”; cin >> choice; } while ((choice < 1) || (choice > 3)); switch (choice); { case 1: bux_otd(); break; case 2: ing_otd(); break; case 3: up_otd(); break; } } Видимість змінних
|
||
|
Последнее изменение этой страницы: 2017-02-10; просмотров: 202; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.128 (0.006 с.) |