Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
програмування.docx
Скачиваний:
42
Добавлен:
05.03.2016
Размер:
1.55 Mб
Скачать

10. Оператор переходу goto на мові Сі.

Оператор goto (перехід на задану мітку) в мові С++ є поганим засобом. Його використання призводить до значних ускладнень логіки програми .

Існує лише один випадок, коли програмісти-професіонали допускають використання goto, — це вихід з вкладеного набору циклів при виявленні помилок (break дає можливість виходу лише з одного циклу).

Його можна представити в такій формі: goto мітка;

Мітка - це будь-який ідентифікатор.

Наприклад: goto a2;

Оператор goto вказує, що виконання програми необхідно продовжити, починаючи з інструкції, перед якою записана мітка. У програмі обов'язково повинна бути рядок, де вказана мітка, поставлено двокрапка і записана інструкція, до якої повинен виконуватись перехід.

Наприклад: a2: k = 5;

Мітки у програмі описувати не потрібно. Застосування оператора безумовного переходу в мові СІ є небажаним, оскільки він порушує структурну наочність програми.

Приклад

Програма для підрахунку середньої оцінки учня.

#include <iostream.h>

int main()

{

int total=0,

gradeCounter,

grade,

average;

gradeCounter=1;

while (gradeCounter <= 10)

{

cout << “Введіть оцінку:”;

cin >> grade;

total=total+grade;

gradeCounter=gradeCounter+1;

}

average=total/10;

cout << “Середня оцінка дорівнює” << average << endl;

return 0;}

11. Поняття та робота з масивами на мові с.

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

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

В переважній більшості мов програмування масив є стандартною вбудованою структурою даних.

Масив — це скінчений набір елементів одного (базового) типу, які зберігаються в послідовно розташованих комірках оперативної пам’яті і мають спільну назву.

Розмір (кількість елементів) масиву найчастіше задають у вигляді діапазону або назви деякого перерахованого типу даних.

Кожен елемент масиву харатеризується іменем та номером (індесом).

Оголошення масиву:

тип змінна[кількість]

double a[100] Кожен елемент масиву може бути застосованний як однотипна проста величина. Для цього потрібно вказати імя та [№]. № завжди починається з 0. Типова програма вводу елементів масиву: # defin n 100 {double a[n] int i,m do {cout <<”Кількість елементів=”; cin >>m;} while (m>n||m<1) for (i=o;i<m;i++) {cout <<”a[”<<i<<”]”; cin >>a[i]} for (i=o;i<m;i++) {cout <<”a[”<<i<<”]=”; cout<<a[i]<<endl}; getch();}

12. Приклад програми з використанням одно та двовимірних масивів на мові Сі.

Масив - це впорядкований набір однотипових елементів. Впорядкованість означає, що елементи масиву розташовані в певному порядку, тобто, проіндексовані. Одно типовість означає належність елементів масиву одному типу даних. Це дозволяє використовувати опрацювання масивів за допомогою операторів циклу. Розглянемо опрацювання масивів на прикладі одновимірного масиву.

Масив визначається наступним чином:

тип імя[кількість]

double a[100]

Визначення масиву починається зарезервованим словом array (масив), за яким слідує тип індексу, укладений у квадратні дужки. Після типу індексу іде зарезервоване слово of, за яким указується тип компонентів масиву. В ролі типу індексу може виступати будь-який скалярний обмежений тип, окрім real та integer. Разом з тим типом індексу може виступати діапазон типу integer. В ролі типу компонентів може виступати довільний тип, крім файлового. Розглянемо спочатку одновимірні масиви, тобто масиви, в яких типом компонентів є скалярний тип даних.

ПРИКЛАД:

# defin n 100 {double a[n] int i,m do {cout <<”Кількість елементів=”; cin >>m;} while (m>n||m<1) for (i=o;i<m;i++) {cout <<”a[”<<i<<”]”; cin >>a[i]} for (i=o;i<m;i++) {cout <<”a[”<<i<<”]=”; cout<<a[i]<<endl}; getch();}

Для опрацювання елементу масиву необхідно вказати ім’я масиву та індекс його елементу. Так, запис a[1] означає, що опрацьовується перший елемент масиву а; a[k] – опрацьовується k-тий елемент масиву а; a[2*k-1] – опрацьовується той елемент, індекс якого дорівнює виразу 2*k-1.

Розглянемо порядок визначення та опрацювання багатовимірних масивів на прикладі двовимірних числових масивів.

Як і для випадку одновимірних масивів, для багатовимірних масивів, як єдиного цілого, використовується лише операція присвоювання. Для решти операцій необхідно опрацьовувати масиви покомпонентно, причому тип компонентів може бути лише скалярним. Для опрацювання компонентів масиву необхідно вказати ім’я масиву та індекси цих компонентів.