
- •Сеанс роботи в середовищі Turbo Pascal
- •Контрольні питання до лабораторної роботи № 1:
- •Процедури введення-виведення
- •Процедури управління розташуванням інформації на екрані
- •Процедури роботи з кольором
- •Запустити програму Turbo Pascal.
- •Контрольні питання до лабораторної роботи № 2:
- •Контрольні питання до лабораторної роботи № 3:
- •Контрольні питання до лабораторної роботи № 5:
- •Контрольні питання до лабораторної роботи № 6:
- •Контрольні питання до лабораторної роботи № 7:
- •Загальна форма запису оператора циклу з лічильником:
- •Контрольні питання до лабораторної роботи № 8:
- •Контрольні питання до лабораторної роботи № 9:
- •Контрольні питання до лабораторної роботи № 10:
- •Задача 1. Визначити значення символьної змінної d після виконання наступних операторів:
- •Контрольні питання до лабораторної роботи № 11:
- •Задача 1. Визначити кількість входжень символу s у слово a.
- •Контрольні питання до лабораторної роботи № 12:
- •Контрольні питання до лабораторної роботи № 13:
- •Контрольні питання до лабораторної роботи № 14:
- •Контрольні питання до лабораторної роботи № 15:
- •Контрольні питання до лабораторної роботи № 16:
- •1. Упорядкування вставлянням
- •2. Упорядкування вибором
- •3. Упорядкування обміном
- •Контрольні питання до лабораторної роботи № 17:
- •Контрольні питання до лабораторної роботи № 18:
- •Контрольні питання до додаткової лабораторної роботи № 2:
- •Контрольні питання до лабораторної роботи № 20:
- •Контрольні питання до лабораторної роботи № 21:
- •Задача 1.Скласти програму, яка за допомогою функції, що визначає найбільше з двох чисел, визначає найбільше з чотирьох чисел.
- •Контрольні питання до лабораторної роботи № 22:
- •Текстовий файл (.Txt)
- •Контрольні питання до лабораторної роботи № 24:
- •Типізований файл (.Doc, dat, bit)
- •Нетипізований файл
- •Контрольні питання до лабораторної роботи № 25:
- •Контрольні питання до лабораторної роботи № 27:
- •Операції над множинами
- •Контрольні питання до лабораторної роботи № 29:
- •Контрольні питання до лабораторної роботи № 31:
- •Контрольні питання до лабораторної роботи № 33:
- •Процедури та функції для роботи у графічному режимі
- •Контрольні питання до лабораторної роботи № 34:
- •Задача 1. У графічному режимі виконати наступні дії:
- •Контрольні питання до лабораторної роботи № 35:
Контрольні питання до лабораторної роботи № 16:
Які операції можна виконувати над елементами масиву?
Які типи даних не припустимі для елементів масиву?
Де і як визначається загальна кількість елементів масиву?
Які типи даних можна використовувати при описі індексів?
Чи може ліва межа індексів масиву бути менше правої?
Чи може ліва межа індексів масиву дорівнювати нулю?
Чи може ліва межа індексів масиву бути від’ємною?
________________________________________________________________________________________________
Лабораторна робота № 17
Тема: Складання програм з використанням алгоритмів упорядкування масивів
Мета роботи. Навчитися складати програми з використанням операцій сортування масивів, застосовувати процедури введення/виведення елементів масиву, виконувати пошук у масивах.
Методичні вказівки до виконання лабораторної роботи
Упорядкування масивів
Упорядкованим вважається масив, елементи якого розташовані за зростанням або спаданням. Всі методи впорядкування можна поділити на:
прямі методи;
удосконалені методи.
Прямі методи, у свою чергу, поділяються на:
упорядкування вставлянням;
упорядкування вибором;
упорядкування обміном.
Удосконалені методи використовують ідеї для збільшення швидкості процесу впорядкування. Прямі методи на практиці використовуються рідко, тому що мають відносно низьку швидкодію. Однак, вони добре показують суть основаних на них удосконалених методів. При невеликій кількості елементів масиву деякі з прямих методів можуть навіть перевершити удосконалені методи.
1. Упорядкування вставлянням
Масив поділяється на дві частини: впорядковану і невпорядковану. Елементи з невпорядкованої частини по черзі вибираються і вставляються в упорядковану частину, не порушуючи при цьому впорядкованості елементів. На початку роботи алгоритму до впорядкованої частини масиву відносять тільки перший елемент, а до невпорядкованої — всі інші елементи. Таким чином, потрібно (n-1) раз (n –розмірність масиву) виконати дії:
вибрати i-й елемент із невпорядкованої частини і зберегти в допоміжній змінній;
знайти позицію j у впорядкованій частині масиву, в якій вибраний елемент не порушуватиме впорядкованості;
зсув елементів масиву від (i-1)-го до (j-1)-го вправо для звільнення знайденої позиції;
вставити вибраний елемент у знайдену j–ту позицію.
Const MaxN =20;
Type TMas= array [1..MaxN] of real;
Var A: TMas; T: real; N, I, j: 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;
For i:=2 to N do
Begin T:=A[i]; j:=1;
While T>A[j] do j:= j +1;
For k:=i – 1 downto j do A[k+1] := A[k]; A[j]:=T;
End;
Writeln (‘Упорядкований масив: ’);
For i := 1 to N do Write(A[i],’ ‘); Writeln;
End.