- •1.Технологія створення прикладної програми.
- •2.Алгоритм. Властивості алгоритмів. Форми подання алгоритмів.
- •3.Базові структури алгоритмів. Лінійні, розгалужені та циклічні. Способи представлення алгоритмів.
- •4.Основні поняття та елементи мови pascal: Алфавіт мови. Типи даних. Арифметичні та логічні вирази.
- •5.Стандартні функції. Структура програми. Введення, виведення інформації.
- •6.Оператор присвоєння. Директиви розділу опису програми.
- •7.Системи програмування. Інструментальна система програмування turbo pascal. Створення редагування та виконання програм на еом.
- •10.Програма розгалужених типів. Оператор case…of.
- •11.Оператори для запису циклічних алгоритмів: while, repeat…until, For..
- •8.Програмування лінійних алгоритмів. Опис даних різних типів. Організація введення та виведення даних стандартних типів.
- •9.Програмування розгалужених алгоритмів. Оператори goto…, if…, then… else…
- •12.Програмування циклічних алгоритмів. Ітераційні цикли. Вкладені цикли.
- •13.Структурні типи даних. Одновимірні, двовимірні масиви.
- •14.Опис нестандартних простих типів даних: інтервального та перелічуваного, структурних типів даних. Рядки. Типізовані сталі. Підпрограми для опрацювання рядків.
- •15.Структурний підхід до розробки прикладних програм. Підпрограми. Процедури і функції.
- •16.Рекурсія. Фактичні та формальні параметри. Глобальні та локальні змінні.
- •17.Записи. Програмування задач з даними типу Record.
- •18.Організація масивів із записів.
- •19.Файлова система на pascal, Процедури для роботи з файлами.
- •20.Створення та читання файлу. Модуль system. Програмування задач з використанням файлів.
- •21.Поняття множини. Операції над множинами. Організація множин.
- •22.Поняття модуля. Бібліотека стандартних модулів. Структура модуля.
- •23.Керування екраном, клавіатурою звуком. Модуль crt. Основні процедури та функції.
- •24.Графічні засоби turbo pascal. Модуль graph. Ініціалізація графічного режиму. Основні процедури та функції.
- •25.Вказівний тип. Створення динамічних об’єктів. Операції над змінними вказівного типу та покажчиками. Знищення динамічних об’єктів.
- •26.Організація динамічних структур даних. Динамічні рядки символів. Дії з динамічними рядками. Списки. Алгоритм введення, вилучення та пошуку елементів.
- •27.Організація динамічних структур даних. Двонапрямлені списки. Циклічні списки.
- •28.Поняття черги і стека. Алгоритм введення та вилучення елементів.
- •29.Графи і дерева.
- •30.Технології програмування.
12.Програмування циклічних алгоритмів. Ітераційні цикли. Вкладені цикли.
В практиці програмування обчислювальних задач досить часто не задано кінцеве значення параметру циклу, але вказана точність обчислення результату, тому організацію циклу із заданою точністю називають ітерацією, а цикл ітераційним. Ітераційні цикли викоритовують: для обчислення суми елементів постідовності ряду із заданою точністю, знаходження наближеного корня, транцедентних рівнянь (методом ітерації); наближений метод обчислення розв'язків системи рівнянь та диференціальних рівнянь.
Вкладені цикли: при організації циклів використовують цикли послідовно, або вкладено. Привила побудови вкладених циклів: 1)цикли не можуть перетинатись, можуть бути лише вкладеними; 2)цикл відкритий останім закривається першим; 3)цикл відкритий першим закривається останім.
13.Структурні типи даних. Одновимірні, двовимірні масиви.
Структурні типи даних – це масиви, рядки, записи, файли та множини.
Рядок – це скінченна послідовність довільних символів (тобто елементів типу char).
Файл – сукупність даних, які розташ. на зовн. носії.
Запис – структурний тип даних, призначений для зберігання в ОЗУ та опрацювання даних, що скл. з полів – даних різних типів. Запис опис. у розділі type.
Множина - структурний тип даних, ел. якого скл. з скінченного набору до 255 даних одного типу, значення яких записують через кому в квадратних дужках. (а=[1,2,3,4])
Масив – це скінчений набір елементів одного (базового) типу, які зберігаються в послідовно розташованих комірках оперативної пам'яті і мають спільну назву. Масив має ідентифікатор, розмір та розмірність. Розмір – к-ть ел. в одновимірному масиві. Розмірність – к-ть індексів одного елемента масиву. Номер індекса задається в квадратних дужках. Описати масив можна у розділі опису типів type, у розділі const, або у розділі оголошення змінних var.
type masiv = array[1..10] of <назва базового типу>.
var <ідент.змінної> : masiv (ідент. типу масиву)
або:
var p: array[<розмір>] of <назва базового типу>.
або у розділі констант:
const n: masiv = (1.2,1.3,4);
Доступ до елементу массиву здійснюється через ім'я масиву і номер елемента(індекс). Двовимірний масив – прямокутна таблиця даних. Елементи двовимірного масиву визначаються іменем масиву та двома індексами: перший індекс означає номер рядка, а другий номер – стовпця, на перетині яких стоїть елемент. Вивід елементів массиву здійснюється в циклі
14.Опис нестандартних простих типів даних: інтервального та перелічуваного, структурних типів даних. Рядки. Типізовані сталі. Підпрограми для опрацювання рядків.
До нестандартнич простих типів даних належать інтервальний, перелічуваний та рядковий типи.
Користувач може визначати свої власні типи даних у розділі type так:
type <ім’я типу 1>=<опис типу 1>;
…
<ім’я типу n>=<опис типу n>
Перелічуваний тип утворюється з ідентифікаторів (імен користувача) шляхом їх об’єднання у список, який записується у круглих дужках:
type <ім’я типу>=(<значення 1>,<значення 2>,...,<значення n>);
Дані цього типу не можна вводит из клавіатури чи виводити і даними цього типу не можуть бути числові чи символьні значення.
Інтервальний (діапазонний) тип – це звуження деякого базового упорядкованого типу. Описується так: type <ім’я типу> = <значення 1>..<значення 2>; Приклад:
type week = (mon, tue, wed, the, fri,sat, sun);
workdays = mon .. fri;
months = 1 .. 12;
var day1,day2: week;
day 3: workdays;
month: months;
Рядковий тип даних – string. Змінні цього типу можна описати як константу( const n=’no’), тип(type t = string[7]), або змінну(var s: string); .
Типізовані сталі дають змогу огол. змінну і відразу надавати їй значення:
const <ім’я сталої 1>: <тип1> = <значення 1>
…
<ім’я сталої n>: <тип n> = <значення n>
приклад: const symbol: char = ‘r’;
n: integer = 5;
Якщо у звичайних сталих значення у програмі змінити не можна, то у типізованих сталих – можна.
Структурні типи даних – це масиви, рядки, записи, файли та множини.
Масив – це скінчений набір елементів одного (базового) типу, які зберігаються в послідовно розташованих комірках оперативної пам'яті і мають спільну назву.
Запис – структурний тип даних, призначений для зберігання в ОЗУ та опрацювання даних, що скл. з полів – даних різних типів. Запис опис. у розділі type.
Файл – сукупність даних, які розташ. на зовн. носії.
Множина - структурний тип даних, ел. якого скл. з скінченного набору до 255 даних одного типу, значення яких записують через кому в квадратних дужках. (а=[1,2,3,4])
Рядок – це скінченна послідовність довільних символів (тобто елементів типу char). Для рядків існує поняття загальної(яка визн. об'ємом ОЗУ, що булла надана рядку під час його оголошення, зазнач. в квадратних дужках) і поточної(визн. к-тю у ньому символів) довжини. Макс. значення загальної довжини рядка – 255 символів. Змінну типу рядок оголошують за допомогою слова string так:
var <змінна>:string[n];
Підпрограми для опрацювання рядків: Функції: length(<рядок>) – визначає кількість символів у рядку;
copy(s,m,n) – s – рядок, з якого копіюють, m – позиція, з якої почин. копіювання, n – к-ть символів, що копіюють; concat(r1,r2,…,rn) – з’єднує рядки r1, r2,…rn в один рядок; pos(r1,r2) – визначає номер символу, з якого починається входження підрядка r1 у рядок r2; Процедури: insert(r1,<змінна>,n) – вставляє рядок r1 у рядок, заданий змінною, починаючи з позиції n; delete(<змінна>,m,n) – вилучає n символів з рядка, заданого змінною, починаючи з позиції m; str(<число>, <змінна>) – переводить числове дане в дане типу рядок; val(r1,s1,code) - r1 – рядок, який переведеться у число, s1 – змінна, в яку число буде записане, code – містить 0, якщо перетворення успішне, і містить номер першого помилкового символу, якщо перетворення не вдалося.
