- •Програмування та алгоритмічні мови
- •Візуальне проектування програмних засобів.
- •Середовище візуального програмування. Форма. Інспектор об’єктів. Редактор коду. Палітра компонентів.
- •Поняття і структура програми та проекту.
- •Типи даних та їх представлення у комп’ютері.
- •Оператори вибору.
- •Робота з одновимірними та багатовимірними масивами.
- •Алгоритми обробки масивів. Упорядкування і пошук даних.
- •Символьні рядки. Обробка текстових даних.
- •Робота із записами.
- •Файли. Поняття фізичного і логічного файлу. Методи доступу до файлів.
- •Типи файлів.
- •Процедури і функції для роботи з файлами.
- •Поняття підпрограми. Структура підпрограм.
- •Параметри в підпрограмах. Глобальні та локальні змінні.
- •Структура програми, що містить процедури
- •Рекурсивні підпрограми.
- •Динамічні структури даних. Незв’язані динамічні дані. Динамічні структури даних.
- •Змінні-вказівники.
- •Динамічні структури даних. Зв’язані динамічні дані. Списки, стеки, черги, дерева.
- •Об’єктно-зорієнтоване програмування. Класи і об’єкти. Основні поняття.
- •Опис класів і об’єктів.
- •Наслідування
- •Методи. Конструктори і деструктори.
- •Приклад
- •Властивості об’єктів. Характеристики об'єктів
- •Поняття успадкування. Наслідування
- •Принцип успадкування
- •Поліморфізм. Віртуальні та динамічні методи.
- •Характеристики
- •Структура опису класу.
- •Класи загального призначення.
-
Поняття підпрограми. Структура підпрограм.
Підпрограми призначені для реалізації окремих частин деякої складної задачі. Вони дають змогу реалізувати концепцію структурного програмування, суть якого полягає у розкладанні складної задачі на послідовність простих підзадач і у для алгоритмів розв'язування кожної задачі відповідних підпрограм.
В двох словах: підпрограми існують, щоб полегшувати життя програмісту.
Розрізняють 2 типи підпрограм:
підпрограми-процедури
підпрограми-функції
Підпрограми поділяються на:
стандартні
підпрограми користувача
Підпрограми користувача - це поіменована група команд, яку створюють і описують в основній прогрвамів розділах procedure або function. До підпрограми можна звернутись з будь-якого місця програми і будь-яку кількість раз.
В мові Паскаль використовується два види підпрограм - процедури та функції. Вони відрізняються між собою структурою та способом виклику.
При проектуванні програми визначається, які частини алгоритму треба реалізувати як процедури, а де знадобиться функція. В головній частині програми підпрограми розташовуються після розділу опису даних перед оператором Begin, а викликаються при потребі в процесі виконання головної програми або іншої підпрограми.
Структура процедури має вигляд:
Procedure ім’я (список формальних параметрів);
Розділ локальних даних
Begin
... {розділ виконавчих операторів}
End;
Перший рядок складає заголовок процедури, ім’я процедури вибирає програміст так як і ім'я змінної. В списку формальних параметрів описуються через ; параметри та інформація про їх тип. Деякі параметри призначені для передачі даних в процедуру, інші для повернення результатів з процедури до тієї програмної одиниці, яка її викликала.
В розділі локальних даних (який взагалі може бути відсутнім) описують ті дані, які використову ються тільки для «службових» цілей в самій процедурі (параметри циклів, робочі змінні та маси ви, тощо).
Всередині підпрограми записують послідовність операторів, які реалізують потрібний алгоритм. При цьому вони працюють з формальними параметрами, локальними та глобальними даними.
Зв'язок між окремими частинами програми здійснюється через списки формальних параметрів та за допомогою глобальних змінних.
Глобальні дані описуються в головній програмі вони не являються фактичними параметрами при виклику підпрограм, не описані в підпрограмах, а використовуються в одній з них і в головній програмі.
Результати роботи підпрограми можуть бути передані до головної програми через формальні параметри та глобальні дані.
Приклад. Програма обчислення суми десяткових цифр.
Програма:
Const N=5;
Var X:Array [1..N] of Integer;
SumX, Kill,I : Integer;
Procedure Sum(A:Integer; Var ISum:Integer);
Begin
ISum:=0;
While A<>0 do
Begin
Kill:=Kill+1;
ISum:=ISum+Abs(A) mod 10;
A:=A div 10;
End;
End;
Begin
Writeln(‘Введіть масив’);
For I:=1 to N do Read(X[i]);
Kill:=0;
For I:=1 to N do
Begin
Sum(X[I], SumX);
Writeln(X[I]:6, SumX:4);
End;
Writeln(‘Загальна кількість цифр’, Kill);
End.
Підпрограми-функції використовуються для реалізації алгоритму та повернення в головну програму одного результату в вигляді імені функції.
Ім'я функції вибирається довільно (як ім'я змінної).
Структура функції:
Function ім'я(список формальних параметрів): тип імені;
{локальні дані}
Begin
...
ім'я := ...;
...
End;
Типом функції може бути скалярний тип, тобто: цілий, дійсний, логічний, символьний та рядковий тип String.
Відносно формальних параметрів, локальних та глобальних даних в функції діють такі ж самі обмеження та вимоги, що і в процедурах.
В виконавчій частині підпрограми-функції повинен бути хоча б один оператор в якому імені функції: призначається значення.
Звернення до функції виконується з якого-небудь арифметичного виразу так, як і до стандартних функцій тину sin(x), ln(x), тощо. Результат роботи функції передається в місце її виклику.
Приклад. Використання функції для обчислення степені.
Програма:
Var x,y,z : Real ;
Function Step(a:real; b:real):real;
Begin
If a<=0 then
Begin
Writeln( 'перевірте дані');
Halt(0);
End;
If b=0 then Step:=1
else Step:=exp(b*ln(a));
End;
Begin
Readln(x:y);
Z:=Step(x,y)+Step(y,x);
Writeln(x,y,z);
End.