- •Інформація та інформаційні процеси Поняття інформації.
- •Одиниці вимірювання інформації.
- •Подання інформації та типи комп'ютерів.
- •Способи пересилання інформації.
- •Будова комп'ютера
- •Пристрої введення-виведення інформації.
- •Процесор
- •Принципи функціонування комп'ютера Фізичні принципи
- •Програмний принцип
- •Поняття про середовища програмування
- •Загальна характеристика мови паскаль
- •Поняття інтегрованого середовища
- •Команда New
- •Команда Open
- •Основи алгоритмізації Алгоритми та їх властивості
- •Блок-схеми
- •Загальна характеристика Паскаль-програми
- •Структура Паскаль-програми
- •Елементи мови Паскаль
- •Прості типи даних
- •Стандартні типи даних
- •Дійсний тип
- •Логічний тип
- •Символьний тип
- •Конструйовані типи
- •Перелічуваний тип
- •Оператори надання значень змінним Оператор присвоєння
- •Уведення-виведення
- •Порядок виконання операцій
- •Складений оператор
- •Стиль запису програми
- •Структури керування
- •Структура послідовного виконання
- •Структура розгалуження
- •Умовний оператор
- •Оператор варіанта
- •Оператор безумовного переходу
- •Структура повторення
- •Цикл з параметром
- •Цикл з передумовою
- •Цикл з післяумовою
- •Ітераційні цикли
- •Обчислення суми знакозмінного ряду із заданою точністю
- •Процедури і функції
- •Процедури з параметрами. Параметри-значення
- •Одномірні масиви
- •Поняття масиву. Одномірний масив та його опис в програмі
- •Обчислення скалярного добутку двох векторів
- •Знаходження найбільшого (найменшого) значень серед елементів масиву
- •Обчислення суми та добутку елементів масиву
- •Перетворення масиву по заданому закону
- •Впорядкування одномірних масивів
- •Впорядкування шляхом вибору
- •Впорядкування обмінами
- •Впорядкування вставками
- •Зливання впорядкованих масивів
- •Двомірні масиви Поняття двомірного масиву та його опис у програмі
- •Ввід та вивід значень елементів двомірного масиву Ввід значень елементів двомірного масиву
- •Вивід значень елементів двомірного масиву a[m,n]
- •Рядковий тип (string)
- •Комбіновані типи Організація комбінованих типів у Паскалі
- •Оператор приєднання
- •Множинні типи Організація множин
- •Файлові типи Організація файлів
- •Підготовчі та завершальні операції
- •Операції уведення-виведення
- •Стандартні файли input і output
- •Модулі Модуль і його структура
- •Стандартні модулі
- •Наближене знаходження коренів рівнянь Дослідження рівняння. Відокремлення коренів
- •Метод поділу проміжку пополам
- •Метод хорд
- •Метод дотичних
- •Чисельне інтегрування
- •Квадратурні формули прямокутників
- •Загальні формули прямокутників
- •Квадратурна формула трапецій
- •Практичні оцінки точності квадратурних формул. Вибір кроку інтегрування
- •Список літератури
Впорядкування вставками
Переглядаючи масив a[1], a[2], … a[n], починаючи з другого, кожний новий і-ий елемент розташовуємо (вставляємо) на відповідне місце у вже впорядковану частину масиву a[1], a[2], … a[i-1]. Для цього необхідно:
а) взяти і-ий невпорядкований елемент і запам’ятати його з допомогою додаткової змінної B;
б) знайти номер j елемента впорядкованої частини масиву, під яким необхідно записати взятий невпорядкований елемент;
в) зсунути елементи від j-го до і-го вправо на одну позицію, звільнивши місце під взятий елемент;
г) встановити взятий і-й елемент на місце j-го.
Всього необхідно зробити N-1 крок.
Програма впорядкування масиву вставками.
program VporVstv;
uses
Crt;
var
a:array[1..20] of real;
b:real;
i,j,k,n:integer;
begin
ClrScr;
Writeln('Введіть довжину масиву n<=20');
Readln(n);
Writeln('Введіть поелементно масив a:');
For i:=1 to n do Read(a[i]);
{Початок реалізації методу}
For i:=2 to n do
begin
b:=a[i]; {взяття і-го елемента}
j:=1;
{пошук номера j вставки}
while b>a[j] do j:=j+1;
if j<i then
begin
{зсув елементів вправо}
for k:=i downto j+1 do a[k]:=a[k-1];
{вставка і-го елемента}
a[j]:=b;
end;
end;
{Кінець реалізації методу}
Writeln('Впорядкований масив');
For i:=1 to n do Write(a[i]:8:2);
Writeln;
Readln;
end.
Зливання впорядкованих масивів
Задача зливання впорядкованих масивів a та b різної довжини полягає в тому, щоб з їх елементів сформувати третій впорядкований масив c, без додаткового впорядкування останнього.
Нехай маємо масиви a[1], a[2], … a[n] та b[1], b[2], …, b[n]. Необхідно сформувати новий впорядкований масив c довжиною m+n. Для цього будемо порівнювати між собою пари елементів a[i] та b[j] і передавати в третій масив с менший по значенню елемент. Після цього змінюємо індекс масиву, елемент якого використали, і знову виконуємо порівняння нової пари елементів. Цей процес повторюємо до тих пір, поки один з масивів не буде повністю вичерпано. Залишається приєднати до масиву c залишок того масиву, елементи якого використані не повністю.
Програма зливання впорядкованих масивів.
program ZlyvMas;
uses
Crt;
Const
m=5;n=10;p=15;
var
a:array[1..m] of real;
b:array[1..n] of real;
c:array[1..p] of real;
i,j,k:integer;
begin
ClrScr;
Writeln('Введіть ',m:2,' елементів ',
'впорядкованого масиву a:');
For i:=1 to m do Read(a[i]);
Readln;
Writeln('Введіть ',n:2,' елементів ',
'впорядкованого масиву b:');
For j:=1 to n do Read(b[j]);
Readln;
{Початок реалізації методу}
i:=1; j:=1; k:=0;
While (i<=m)and(j<=n) do
begin
k:=k+1;
if a[i]<b[j]
then begin c[k]:=a[i]; i:=i+1 end
else begin c[k]:=b[j]; j:=j+1 end;
end;
{Приєднання до масиву С залишкових
елементів масиву а}
While i<=m do
begin
k:=k+1;
c[k]:=a[i];
i:=i+1
end;
{Приєднання до масиву С залишкових
елементів масиву b}
While j<=n do
begin
k:=k+1;
c[k]:=b[j];
j:=j+1
end;
{Кінець реалізації методу}
Writeln('Результуючий масив');
For k:=1 to m+n do Write(c[k]:8:2);
Writeln;
Readln;
end.