- •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
- •Var a: Masiv;
- •I,j:byte; {I,j - змінні циклу}
- •Var Mas:array[1..N] of integer;
- •I,j:integer; {I,j — змінні циклу)
- •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 X,y,m:real;
Begin
Clrscr;
Write('Введіть швидкість літального апарату: ');
Readln(X);
Write('Введіть відстань між населеними пунктами: ');
Readln(Y);
If (X<=0) or (Y<0) then writeln('He коректні вхідні дані.')
else
begin
Solution(X,Y,M); {Виклик процедури}
Writeln('Тривалість польоту -> ',М:6:2);
end;
Readkey;
End.
Задача № 463
Умова: Створити підпрограму, яка б із тексту S вилучала вказаний символ х і обчислювала кількість вилучень. У програмі організувати виклик цієї підпрограми.
Розв'язування: Очевидно, що підпрограма, яка виконує дану задачу, повинна мати три формальних параметри. Позначимо їх наступним чином: S - заданий текст (змінна рядкового типу string); x - символ, що підлягає вилученню (змінна символьного типу char); count - кількість вилучень (числова змінна цілого типу, наприклад byte).
Параметр х повинен бути параметром-значенням (вхідний параметр), а параметри 5 та соип/параметрами-змінними (вихідні параметри). Рядок 5 фактично є і вхідним, і вихідним, тому що за умовою задачі саме в ньому необхідно здійснити вилучення заданих символів.
Для виконання поставленої задачі, на наш погляд, зручніше використовувати цикл з передумовою, тому що після вилучення символів з рядку він змінює свою довжину, і використання циклу з параметром (for) може призвести до помилки. Крім того, зверніть увагу на те, що зміна індексу і (номер поточної позиції рядка) виконується тільки у випадку, якщо шуканий символ не знайдено. Це пов'язано з тим, що рядок може містити цей символ у сусідніх позиціях, і після вилучення поточного символу на ту саму позицію попадає знову шуканий символ.
Оформлення основної програми, на наш погляд, не повинно викликати сумнівів. Зазначимо лише, що відповідні фактичні параметри у запропонованій програмі будуть називатися Л (заданий текст), ch (символ, що підлягає вилученню), ^(кількість вилучень). Програма, що виконує запропонований алгоритм, має наступний вигляд:
Program Example_463;
Uses crt; (Підключення бібліотеки}
Procedure Solution (x:char; var S:string; var count:byte);
Var і:byte; (локальна змінна для організації циклу}
Begin
count:=0; і:=1;
while i<=length(S) do
begin
if S[i]=x
then
begin
count:=count+l;
delete(S,i,l);
end
else i:=i+1;
end;
End;
Var a:string; ch:char; n:byte;
Begin
clrscr;
writeln('Введіть текст: ');
readln(A);
write('Введіть шуканий символ: ');
readln(ch);
Solution(ch,A,N);
writeln('Результуючий текст: ',A);
writeln('Кількість виконаних вилучень: ',N);
readkey;
End.
Домашнє завдання:
повторити теоретичний матеріал за попередні уроки;
задачі з запропонованого підручника №419, №424, №426, №430.
