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

Методичні вказівки

до лабораторних робіт

з дисципліни

“Технології програмування”

для студентів професійного напрямку

6.170101 «Безпека інформаційних і комунікаційних систем»

всіх форм навчання

Частина 1

 

 


Методичні вказівки до лабораторних робіт з дисципліни “Технології програмування” для студентів професійного напрямку 6.170101 «Безпека інформаційних і комунікаційних систем» всіх форм навчання. Частина 1 /Укл.: Г.В. Неласа – Запоріжжя: ЗНТУ, 2013. – 42 с.

 

Укладачі: Г.В. Неласа, доцент, канд. техн. наук

 

Рецензент: Г.В. Табунщик, доцент, канд. техн. наук

 

Відповідальний

за випуск: Г.В. Неласа, доцент, канд. техн. наук

 

Затверджено

на засіданні кафедри

захисту інформації

 

Протокол №

від “___” _______ 2013


ЗМІСТ

 

ВСТУП...................................................................................... 4

Лабораторна робота №1 Програмування лінійних та розгалужених обчислювальних процесів 5

Лабораторна робота №2 Програмування задач циклічної структури 11

Лабораторна робота №3 Перетворення та будування матриць. Робота з покажчиками та динамічними масивами.......................................................................................... 15

Лабораторна робота №4 Програмування задач з використанням функцій 22

Лабораторна робота №5 Програмування задач по обробці послідовності символів 26

Лабораторна робота № 6 Структури. Робота з типизованими файлами 33

Література............................................................................... 38

Додаток А Титульний аркуш................................................. 39

Додаток Б. Основні типи даних. Модифікатори................... 40

Додаток В. Схема компіляції програми................................ 41

Додаток Д. Таблиця символів................................................ 42


ВСТУП

 

Дисципліна “Технології програмування” є базовою для подальшого вивчення більшості спеціальних дисциплін спеціальності “Безпека інформаційних і комунікаційних систем .

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

Особливу увагу треба приділяти правильному оформленню звітів з лабораторних робіт. Звіт повинен містити: титульний аркуш (приклад титульного аркушу наведено в додатку А); мету, варіант i завдання роботи; лаконічний опис теоретичних відомостей; блок-схеми алгоритмів вирішення задач; текст програми, що обов'язково містить коментарі; вхiднi та вихiднi дані програми; змістовний аналіз отриманих результатів та висновки.

Звіт виконують на білому папері формату A4 (210 x 297 мм). Текст розміщують тільки з однієї сторони листа. Поля сторінки з усіх боків – 20 мм. Для набору тексту звіту використовують редактор MS Word: шрифт Times New Roman, 14 пунктів. Міжрядковий інтервал: полуторний – для тексту звіту, одинарний – для листингів програм і роздруківок скріншотів.

Індивідуальні завдання на лабораторні роботи взяти із [1] відповідно до варіанту. Ім’я файлу програми складається з трьох частин: номер лабораторної роботи, номер варіанту і номер завдання.(Наприклад:L1_18_456a – лабораторна робота № 1, 18 варіант, завдання 456а).


Лабораторна робота №1 Програмування лінійних та розгалужених обчислювальних процесів

Мета роботи

Одержати знання та навички, необхідні для програмування лінійних та розгалужених процесів; придбати та закріпити, на прикладі створення програм, елементарні знання з алгоритмічної мови програмування С++.

Завдання на лабораторну роботу

1. Ознайомитися зі змістом теоретичних відомостей даних методичних вказівок.

2. Скласти та виконати на ПЕОМ програми з таблиці 1.1 відповідно до варіанту.

3. Оформити звіт та захистити роботу.

 

Таблиця 1.1 – Індивідуальні завдання до лабораторної роботи №1

№ варіанта Номери задач № варіанта Номери задач
2, 67г, 53, 31к 23в, 44, 60г, 59з
11а, 67в, 29, 34а 23г, 43, 60в, 68а
11б, 67б, 33а, 32д 24, 76е, 60б, 67д
11в, 67а, 57а, 32е 25а, 41, 60а, 68б
11г, 66, 42, 32г 25б, 40, 57а, 72а
11д, 65, 59а, 32в 28, 39, 51, 74
11е, 64, 59б, 32б 30, 38, 50, 73
11ж, 63, 59в, 31л 31а, 36, 46, 76а
16, 62, 59г, 33а 31б, 35б, 45, 76б
17, 61, 59д, 57г 31в, 35а, 44, 76в
21, 47б, 59е, 57в 31г, 34б, 43, 76г
22, 47а, 59ж, 57б 31е, 33в, 41, 76д
23а, 46, 60е, 67д 31ж, 33б, 11е, 59і
23б, 45, 60д, 58а 32а, 20, 35б, 59к

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

Загальна структура програми на мові С++ наведена на рис. 1.1.

 

 
 


заголовочні файли

глобальні об’яви

функція main ()

{тіло програми }

розроблені функції

Рисунок 1.1 – Загальна структура програми на мові С

Програма зберігається у файлі з розширенням .срр, заголовочні файли у файлах з розширенням .h.

Оголошення змінних

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

Змінна оголошується наступним чином:

тип ім’я_змінної;

Тип змінних визначає об’єм оперативної пам’яті, що буде виділено під змінну, діапазон допустимих значень та можливі операції над змінною. Типи даних, що використовуються у мовах С та С++ наведені у додатку Б.

Наприклад: int a;

float b, c, d;

В залежності від місця об’явлення змінної, вона може бути глобальною, або локальною.

#include <заголовочний файл>

int a; // глобальна зміна

int main () // ім’я основної функції

{

float b; // локальна зміна

return 0;

}

Основні конструкції операторів мови С++

Для виконання розрахунків в мовах С та С++ використовується оператор присвоєння “=”:

ім’я_змінної = вираз;

Наприклад:

int a=0; //Присвоєння а значення 0

a=((a+7)/236)*(769-a*9);

Математичні операції виконуються відповідно до пріоритету цих операцій.

В мові С++ додатково використовуються операції присвоєння, що наведені у таблиці 1.2.

 

Таблиця 1.2 – Операції присвоєння

Оператор Опис Приклад
= Оператор присвоєння int a=5;
+= Пара операторів вказує компілятору присвоїти змінній суму існуючого значення змінної та вказанного числа int a=0; a+=5; //a=a+5;
-= Присвоєння змінній її значення, яке буде зменшене на вказане число int a=0; a-=5; //a=a-5;
/= Присвоєння змінній її значення, яке буде поділене на вказане число s/=2*a; //s=s/2*a;
*= Присвоєння змінній її значення, яке буде помножене на вказане число s*=i; //s=s*i;

 

Введення/виведення даних

Для введення даних з клавіатури використовують операцію „>>”

cin >> a;

де cin – стандартна консоль введення, а – ім’я змінної.

Для виведення даних використовують операцію „<<”

cout << a << “\n”;

де cout – стандартна консоль виведення, а – ім’я змінної, “\n” – стрічний літерал, що позначає перехід на інший рядок.

Функції введення/виведення мови С наведені у додатку Д.

Умовний оператор if

Повна форма оператора if наступна:

if (умова) оператор1;

else оператор2;

або

if (умова) {оператор1;

……

операторN;}

else {група операторів}

де умова – це логічна операція (&&, ||, :)або операції порівняння (==, !=, >, <, >=, <=), або інший вираз, результатом якого є логічний тип.

Якщо значення умови «true», то виконується оператор1 (ним може бути складовий оператор – блок), наступний після умови. Якщо ж умова приймає значення «false», то виконується оператор2, що є наступним після else. Наприклад:

int a=5, b=6;

if (a>b) cout<<a;

else cout<<b;