Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь 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; просмотров: 152; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.142.55.138 (0.008 с.) |