
- •Упорядкування вставлянням
- •Упорядкування вибором
- •Упорядкування обміном
- •Порівняння прямих методів упорядкування
- •Бінарний пошук
- •Приклади розв'язування задач
- •Розв’язування.
- •Заповнити тривимірний масив цілих чисел за правилом: елементи на гранях рівні 1, всі інші 0 (за схематичним поданням).
- •Розв’язування.
Приклади розв'язування задач
Знайти індекси найбільшого та найменшого елементів двовимірного масиву.
Розв’язування.
Визначимо потрібні об’єкти:
MaxN, MaxM – константи цілого типу: найбільша кількість рядків масиву та найбільша кількість елементів у рядку;
N, M – змінні цілого типу: потрібна кількість рядків масиву та елементів у рядку;
TMas2Int – ідентифікатор типу двовимірного масиву цілих чисел;
A – змінна типу TMas2Int;
MaxI, MaxJ – змінні цілого типу: індекси найбільшого елемента масиву – номер рядка, та номер елемента в рядку;
MinI, MinJ – змінні цілого типу: індекси найменшого елемента масиву – номер рядка, та номер елемента в рядку;
i,j – змінні цілого типу: індекси поточного елемента.
Алгоритм |
Програма |
N раз повторити дії (i змінюється від 1 до N): M раз повторити дії (j змінюється від 1 до M):
N раз повторити дії (i змінюється від 1 до N): M раз повторити дії (j змінюється від 1 до M):
то MaxI і MaxJ надати значення i, j відповідно;
то MinI і MinJ надати значення i, j відповідно;
|
const MaxN = 20; MaxM = 20; type TMas2Int = array[1..MaxN, 1..MaxM] of Integer; var A : TMas2Int; MaxI, MaxJ, MinI, MinJ, i, j: Integer; begin Write('Введіть розмірність масиву N, M –'); ReadLn(N, M); for i := 1 to N do for j := 1 to M do begin Write('A[',i, ',', j,']='); ReadLn(A[i,j]) end; MaxI := 1; MaxJ := 1; MinI := 1; MinJ := 1; for i := 1 to N do for j := 1 to M do begin if A[i,j] > A[MaxI,MaxJ] then begin MaxI := i; MaxJ := j; end; if A[i,j] < A[MaxI,MaxJ] then begin MinI := i; MinJ := j; end; end; WriteLn('Max(', MaxI, ',' , MaxJ, ') Min(', MinI, ',' , MinJ, ')' ); end. |
Заповнити тривимірний масив цілих чисел за правилом: елементи на гранях рівні 1, всі інші 0 (за схематичним поданням).
Розв’язування.
Визначимо потрібні об’єкти:
MaxN, MaxM, MaxL – константи цілого типу: найбільші значення розмірностей масиву;
N, M, L – змінні цілого типу: потрібні значення розмірностей масиву;
Tmas3Int – ідентифікатор типу даних тривимірного масиву цілих чисел; A – змінна типу TMas3Int; i, j, k – змінні цілого типу: індекси поточного елемента. Алгоритм |
Програма |
const MaxN = 20; MaxM = 20; MaxL = 20; type TMas3Int = array[1..MaxN, 1..MaxM, 1..MaxL] of Integer; var A : TMas2Int; i, j, k: Integer; begin Write('Введіть розмірність масиву N, M, L –'); ReadLn(N, M, L); for i := 1 to N do for j := 1 to M do for k := 1 to L do if (i=1) Or (i=N) Or (j=1) Or (j=M) Or (k=1) Or (k=L) then A[i,j,k] := 1 else A[i,j,k] := 0; for i := 1 to L do begin for j := 1 to N do begin for k := 1 to M do Write(A[i, j, k],' '); WriteLn; end; WriteLn; end; end. |
|
N раз повторити дії (i змінюється від 1 до N): M раз повторити дії (j змінюється від 1 до M): L раз повторити дії (k змінюється від 1 до L): якщо i=1 або i=N або j=1 або j=M або k=1 або k=L, то елементу (i, j, k) надати значення 1, інакше елементу (i, j, k) надати значення 0;
L раз повторити дії (i змінюється від 1 до L): N раз повторити дії (j змінюється від 1 до N): M раз повторити дії (k змінюється від 1 до M): вивести елемент (i, j, k). |