
- •Основи програмування та алгоритмічні мови
- •III етап. Опис алгоритму
- •V етап. Налагодження програми
- •Vі етап. Експлуатація програми
- •1. Визначення алгоритму
- •2. Властивості алгоритму
- •3. Форми запису алгоритму
- •4. Типи алгоритмів
- •1. Історія створення мови Паскаль
- •2. Структура програми
- •3. Елементи мови
- •4. Типи даних
- •5. Прості типи даних
- •6. Стандартні функції мови Паскаль
- •1. Складові інтерфейсу середовища програмування
- •2. Створення та виконання найпростішої програми
- •3. Налагодження програм
- •4. Перетворення програм
- •1. Процедури введенні-виведення
- •2. Процедури управління розташуванням інформації на екрані
- •3. Процедури роботи з кольором
- •4. Програми лінійної структури
- •1. Види циклів
- •5. Вкладені цикли
- •6. Пряма передача управління в операторах циклу
- •1. Поняття масиву
- •2. Опис масивів
- •3. Введення - виведення елементів масиву
- •4. Операції над масивами
- •1. Пошук мінімального (максимального) елемента у масиві
- •2. Бінарний пошук
- •3. Алгоритми упорядкування масивів
- •3.1. Упорядкування вставлянням
- •3.2. Упорядкування вибором
- •3.3. Упорядкування обміном
- •1. Поняття підпрограми. Типи підпрограм
- •2. Процедури
- •3. Формальні і фактичні параметри. Глобальні та локальні змінні
- •4. Функції
- •1. Рекурсія
- •2. Випереджальне оголошення підпрограм
- •3. Інші директиви компілятору
- •1. Стандартні модулі
- •2. Модулі користувача
- •Implementation
- •1. Загальні принципи роботи з файлами
- •2. Текстові файли
- •3. Типізовані (двійкові) файли
- •4. Нетипізовані файли
- •5. Фізична модель операцій читання та запису інформації у текстовий файл
- •6. Директиви компілятору при роботі з файлами
- •8. Розв’язування задач з використанням файлів
- •1. Перелічуваний тип
- •2. Обмежений тип
- •1. Запис та його оголошення
- •2. Доступ до компонентів та операції над записами
- •3. Записи з варіантами
- •4. Вкладеність записів
- •1. Встановлення (ініціалізація) графічного режиму
- •2. Кроки створення графічних об'єктів
- •3. Стандартні прoцедури і функції модуля Graph для работи з кольорами
- •4. Прoцедури і функції для работи з пікселями
- •5. Процедури для роботи з колом, дугами
- •6. Процедури для роботи з прямокутниками
- •7. Процедури для роботи з графічними примітивами типу "лінія".
- •8. Методи створення рухомих графічних об'єктів засобами мови Паскаль
- •9. Особливості виведення текстових повідомлень в графічному режимі
1. Пошук мінімального (максимального) елемента у масиві
Необхідно знайти мінімальний елемент в масиві, його значення помістити у змінну Р, а індекс — у змінну К.
P := A[1]; K:= 1;
For i := 2 to N do begin if P <= A[i] then continue; P := A[i]; K := i; end;
2. Бінарний пошук
Алгоритм бінарного пошуку використовується для знаходження заданого елемента в упорядкованому масиві.
Якщо середній елемент масиву збігається з шуканим, то пошук завершено. Якщо ж середній елемент менше шуканого, то елементи ліворуч нього менші шуканого. Їх можна не брати до уваги і продовжити пошук у правій частині масиву. Якщо середній елемент більше шуканого, то слід продовжити пошук у лівій частині масиву. Так продовжують до тих пір, поки або елемент буде знайдено, або довжина зони пошуку стане рівною нулю. В останньому випадку шуканий елемент не буде знайдено.
Const MaxN =20;
Type TMas= array [1..MaxN] of real;
Var A: TMas; X: real; N, i, j,L,R: integer;
Begin
Write (‘Введіть кількість елементів масиву :’); Readln (N);
For i := 1 to N do begin Write (‘A[‘,i,’]=’); Readln (A[i]); end;
Writeln(‘Елементи масиву: ’);
For i := 1 to N do Write (A[i], ‘ ‘); Writeln;
L:=1; R:= N;
Repeat
i:= (L + R) div 2;
if A[i] < X then L := i +1; if A[j] >X then R:= i +1;
Until ( A[i] = X ) or ( L > R );
if A[i] = X then Writeln(‘Шуканий елемент’,X,’має номер’, i)
else Writeln(‘Шуканий елемент’,X,’у масиві не знайдено’);
End.
3. Алгоритми упорядкування масивів
Однією з найбільш поширених операцій обробки масивів є їх упорядкування, або сортування. Упорядкування масиву — це зміна порядку розташування його елементів за певним критерієм. Наприклад, числовий масив можна упорядкувати за зростанням значень його елементів або за їх спаданням, а масив рядків можна відсортувати в алфавітному порядку. Найчастіше сортування масиву здійснюється з метою полегшення подальшого пошуку.
Відомо багато методів сортування масиву, що відрізняються швидкодією й обсягом оперативної пам'яті, яка при цьому використовується. Серед цих методів можна вирізнити методи внутрішнього та зовнішнього сортування. Методи внутрішнього сортування не передбачають використання допоміжних масивів. Ці методи застосовують до масивів, що повністю розташовані в оперативній пам'яті. Методи зовнішнього сортування застосовують до великих масивів даних, які зберігаються на зовнішніх носіях.
Всі методи впорядкування можна поділити на:
прямі методи;
удосконалені методи.
Прямі методи, у свою чергу, поділяються на:
упорядкування вставлянням;
упорядкування вибором;
упорядкування обміном.
Удосконалені методи використовують ідеї для збільшення швидкості процесу впорядкування. Прямі методи на практиці використовуються рідко, тому що мають відносно низьку швидкодію. Однак, вони добре показують суть основаних на них удосконалених методів. При невеликій кількості елементів масиву деякі з прямих методів можуть навіть перевершити удосконалені методи.