- •A b c d e f g h I j k l m n o p q r s t u V w X y z I _(знак підкреслення)
- •Var Sum1, Sum2 : real;
- •X: integer;
- •Задача № 41
- •Var m, n, p : real;
- •Задача №73
- •Задача № 81
- •Задача № 82
- •Задача № 84
- •Задача № 97
- •Var а,ь,с : real;
- •Задача № 100
- •Var X,Rezultat:real;
- •Задача №101
- •Var X,Rezultat:real;
- •Задача № 107
- •Var n,s,Grade:integer; {n - бали, що набрав учень; s -максимальне значення сумарного балу; Grade - оцінка учня}
- •Задача № 103
- •Var Xl,Yl,x2,y2:real;
- •Задача № 86
- •Var a,b,c,s:word;
- •Задача № 89
- •Var Vl,v2,v3:real;
- •Задача № 90
- •Var а,в,с:real;
- •Задача № 91
- •Var X,x1,x2,x3:real;
- •Задача № 120
- •Var n, First, Last : word;
- •Задача №128
- •Var a,b,c,d,Xl,x2:real;
- •Задача №130
- •Var a,b,c,X,y,s:real;
- •Задача №134
- •Задача №151
- •Задача №160
- •Задача №165
- •Var Sum, I: integer;
- •Var a,b,c: integer;
- •Var n: longint; Counter: integer;
- •Задача №183
- •Задача № 189
- •Задача № 190
- •Var I,n:word; {I - параметр циклу}
- •Задача № 191
- •Var I,n:word;{I - параметр циклу}
- •Задача №210
- •Var I,n:word; {I - параметр циклу, n - оцінка учня}
- •Задача № 180
- •Var m,n,k:word;
- •Задача № 197
- •Var n:longint; {n - дане число}
- •Задача №204
- •Var m,k,Rez:longint; {Rez - обчислення степеню 4}
- •Задача № 208
- •Var і:word;
- •Задача №212
- •Var і,n:word;
- •Задача №179
- •Var n:word; {I - номер пасажира, що увійшов у ліфт}
- •Задача №181
- •Var s,n,Sum:longint; {s - кількість волосся, що буде висмикнутим, Sum - кількість волосся, що залишилося в дідуся на голові, n - початкова кількість волосся}
- •Задача №209
- •Var X,n:real; {X - початковий внесок, n - бажана сума} Rezrreal; {Rez - результуюча сума на рахунку} Years:longint; {Years - термін, протягом якого сума перебувала в банку}
- •Задача №231
- •Var V,Vmax:real; {V - швидкість автомобіля, Vmax - максимально дозволена швидкість}
- •Задача №251
- •Var count:word; {count - кількість членів послідовності до першого нульового елемента}
- •Var a:array[1..N] of real; в:array[1..100] of integer;
- •Var m: Massiv;
- •Задача № 293 (1)
- •Задача №293 (4)
- •Задача № 297
- •Задача № 299
- •Задача № 311 (2)
- •Var n,і:word; {n — кількість елементів масиву, і — змінна циклу)
- •Задача № 300
- •Var n:word;
- •Задача № 309
- •Var n,і,Count:longint; {n — задане ціле число, і — змінна циклу. Count — кількість цифр в числі}
- •Задача № 312
- •Var n,I:longint; {n — кількість елементів масиву, і — змінна циклу}
- •Задача №318 (4)
- •Var a,b:array[l..30] of real;
- •Задача №345(1)
- •Var c:array[1..N,1..M] of integer;
- •I,j:integer; {I,j - змінні циклу}
- •Задача № 360
- •Var a:array[1..N,1..N] of real;
- •Задача № 302
- •Var n,h:word;
- •Задача №314(2)
- •Var a:Masiv; {a — масив для зберігання даних чисел}
- •Задача № 321 (1,2)
- •Var a:array[1..N] of integer; {a — масив даних чисел}
- •Задача № 356
- •Var a:Masiv; I,j:byte; {I,j — змінні циклу}
- •Задача № 358
- •I,j:byte; {I,j - змінні циклу}
- •Var Mas:array[1..N] of integer;
- •I,j:integer; {I,j — змінні циклу)
- •Var a: Masiv;
- •Var Mas:агay[1..N] of integer;
- •Var Mas:array[1..N] of integer;
- •I,j,k:integer; {I,j — змінні циклу, k — змінна, що фіксує праву границю впорядкування}
- •Var Mas:array[1..N] of integer;
- •Var Mas:array[1..N] of integer;
- •Задача №339(1)
- •Var a,b:Masiv; {a — масив для зберігання початкової послідовності, в — відсортований масив}
- •Задача №342(1)
- •Var a:Masiv; {a — масив для вихідної послідовності}
- •Задача № 377
- •Var і,count:word;
- •Задача № 381
- •Var і:word; {і - змінна циклу} St:string; {St - даний текст}
- •Задача №382
- •Var I:word; {I - змінна циклу} St: string; {St — даний текст}
- •Задача № 387
- •Var і:byte; {і - змінна циклу}
- •Задача №389 (2)
- •Var і:byte; {і - змінна циклу}
- •Задача № 394
- •Var і:byte; {і - змінна циклу}
- •Задача № 604
- •Var GraphDriver,GraphMode:integer;
- •InitGraph(GraphDriver,GraphMode,'');
- •Задача № 607
- •Var GraphDriver,GraphMode:integer;
- •X,y,color,n:integer; {X,y - координати точки - 'Зірки',
- •InitGraph(GraphDriver,GraphMode,'');
- •Задача № 614
- •Var GraphDriver,GraphMode:integer;
- •X,у:integer; {X,y - координати центру декарт. Сист. Коорд.}
- •InitGraph(GraphDriver,GraphMode,''); {Малювання осей}
- •Задача № 616
- •Var GraphDriver,GraphMode:integer;
- •Задача № 618
- •Var GraphDriver,GraphMode:integer; n, і : integer;
- •InitGraph(GraphDriver,GraphMode,»);
- •Задача № 629
- •Задача № 638 (1)
- •Var gd,gm:integer;
- •X,у:integer; Size:integer;
- •XnitGraph (gd,gm,'');
- •Задача № 627
- •Var gd,gm:integer;
- •VX,Vy,X,y:real;
- •Задача №415
- •Задача №416 (1)
- •Var a,max:real;
- •Задача № 417
- •Var X,y,m:real;
- •Задача № 463
- •Var і:byte; (локальна змінна для організації циклу}
- •Var a:string; ch:char; n:byte;
Var Mas:array[1..N] of integer;
і,j,Rez:integer;
Begin
For i:=2 to N do
Begin
j:=i; {Цикл працює, доки лівий елемент більший за правий та доки не досягнуто початох масиву}
while (j>1) and (Mas[j]<Mas[j-1]) do
Begin
Rez:=Mas[j]; Mas[j]:=Mas[j-1]; Mas[j-1]:=Rez; j:=j-1;
End;
End;
End.
Домашнє завдання:
• Створити блок-схему запропонованих алгоритмів сортування («бульбашка» —1 -й та 2-й методи, метод прямого вибору, метод прямої вставки).
УРОК 27. Програми впорядкування таблиць
Мета уроку: Навчити розв'язувати задачі, що потребують для свого розв'язання впорядкування масивів.
На початку уроку бажано зробити опитування за попереднім матеріалом. Потім розглянути кілька задач на застосування методів впорядкування табличних величин,запропонувати учням самостійне розв 'язування цих задач.
Задача №339(1)
Умова: Дано натуральне число п та послідовність дійсних чисел а1, а2 ... ап. Після впорядкування цієї послідовності за спаданням визначити, скільки членів послідовності залишилося стояти на своїх місцях.
Розв'язання: Для того, щоб визначити, скільки чисел залишилось на своїх місцях, нам необхідно зберігати як вихідний масив, так і відсортований, тому перш за все зарезервуємо два однакових одновимірних масиви: А — вихідний масив та В — відсортований. Метод сортування масиву в даному випадку можна використовувати будь-який, наприклад, метод прямого вибору. Після виконання впорядкування проходом по обох масивах порівнюємо відповідні елементи вихідного та відсортованого масивів і, якщо вони збігаються, виконуємо підрахунок. Програма має вигляд.
Program Example_339_l;
Uses crt;
Const N = 100;
Type Masiv = array[1..N] of real;
Var a,b:Masiv; {a — масив для зберігання початкової послідовності, в — відсортований масив}
і,j,count:byte; {i,j — змінні циклу, count — кільхість елементів, що залишились на своїх місцях)
Max:real; {Мах — максимальний елемент підмасиву}
N_max:byte; {N_max — номер максимального елементу}
Begin Randomize;
Clrscr;
For i:=1 to N do
Begin A[i]:=random*100-random*50; Write<A[i]:8:2); End;
B:=A; {Копіювання елементів масиву А в масив В}
For i:=1 to N-1 do
Begin
Max:=B[i]; {Зберігання еталону максимуму}
N_Max:=i; {Зберігання номера максимуму}
For j:=i+1 to N do
If B[j]>Max then
begin
Max:=B[j]; {Перевизначення еталону}
N_Max:=j; {Зберігання номеру еталону}
end;
{Обмін місцями мінімуму та першого елементу підмасиву}
B[N_Max]:=В[і]; В[і]:=Мах;
End;
count:=0;
For і:»1 to N do
Begin
If A[i]=B[i]
then count:=count+1;
End;
Writeln;
Writeln('Кількість елементів, що не змінили місця ' ,count) ;
Readkey;
End.
Задача №342(1)
Умова: Дано натуральне число п та послідовність дійсних чисел а1, а2 ... ап. Визначити усі числа, що входять у послідовність по 1-му разу.
Розв 'язання: Пошук чисел, що входять у послідовність по одному разу, виконати важко, тому що для цього необхідно порівняти кожне число з кожним. Набагато простіше зробити це у відсортованому масиві, оскільки однакові числа в ньому будуть розташовані поруч. Тобто пропонуємо в даній задачі спочатку відсортувати масив (метод сортування будь-який, наприклад, «бульбашка»), а потім зробити по ньому прохід, порівнюючи сусідні елементи. Якщо вони не рівні, виконуємо підрахунок. Загальна кількість чисел, що входять у послідовність по одному разу, буде на одиницю більша, ніж отримане число в лічильнику.
Program Example_342_l ;
Uses crt;
Const N = 100;
Type Masiv = array[1..N] of real;
