Відповідь: 1.Циклічними називаються обчислювальні процеси, в яких неодноразово виконуються одні й ті ж дії, але з різними даними.
2.Цикл із передумовою (або цикл-«поки») — це цикл, у якому тіло циклу виконується тільки у разі виконання умови, заданої перед тілом циклу. Якщо умова стає невірною, то робота циклу припиняється і керування передається оператору, наступному за оператором циклу. На мові Паскаль оператор циклу з передумовою ще називається «циклом While-Do».
WHILE <умова> DO <оператор>;
Приклад: обчислення суми перших 100 натуральних чисел методом послідовного додавання.
m:=1; S: =0;
WHILE m<=100 DO
begin
S:=S+m;
m:=m+1;
end;
3.Цикл із післяумовою (або цикл-«до») — це цикл, у якому тіло циклу виконується доти, поки умова, задана після тіла циклу, не стане правильною. Якщо умова стає правильною, то робота циклу припиняється й управління передається оператору, наступному за оператором циклу. На мові Паскаль оператор циклу з післяумовою ще називається «цикл Repeat-Until».
REPEAT <оператор> UNTIL <умова>;
Приклад: обчислення суми перших 100 натуральних чисел методом послідовного додавання.
m:= 0; S: = 0;
REPEAT
m:=m +1;
S:=S+m;
UNTIL m >= 100;
4.Загальний вигляд оператора циклу з параметром (з лічильником):
for <параметр циклу>:=N1 to N2 do <тіло циклу >; де N1 та N2 - початкове та кінцеве значення параметра циклу, тіло циклу може бути або складеним оператором. <Параметр циклу > ще називають лічильником циклу. Оператор for забезпечує виконання тіла циклу до тих пір, поки не будуть перебрані всі значення параметра циклу від початкового до кінцевого. Параметр циклу, його початкове та кінцеве значення повинні бути одного і того ж скалярного типу. При цьому можливий будь який стандартний тип, крім real. Якщо N1 та N2 цілі числа, а параметр циклу - цілочисельна змінна, то крок завжди рівний одиниці.
Приклад. s:=0; for i:=1 to 20 do s:=s+i;
Для i=1, 2, 3,... , 20 буде виконуватись оператор присвоєння
S:=S+i, який накопичує в змінній S суму перших 20 натуральних чисел. Якщо N1 та N2-символьного типу, а їх значення відповідно рівні 'A' та 'Z', то параметр циклу прийматиме послідовні значення, які співпадають з алфавітом: A, B, C, D E .., Z.
5.Якщо умова у вказівці повторення хибна при першій же перевірці, тотіло циклу не виконується жодного разу. Умова вказівки є умовоювходження в цикл.2. Умову вказівки повторення з передумовою необхідно підбирати такимчином, щоб в деякий момент вона змінила своє значення з TRUE на FALSE,інакше виникне ситуація “зациклювання” програми.3. Програмісту необхідно самому потурбуватись про необхідністьзбільшення (зменшення) лічильника циклу на 1. Це можна зробити такимчином І:=І+1.4. Входження в тіло вказівки повторення можливе тільки через заголовокцієї вказівки.
6.Рекурентним співвідношенням називається формула виду an+1=F(an,an-1,...,an-k+1), де F деяка функція від k аргументів, яка дозволяє обчислити наступні члени числової послідовності через значення попередніх членів.
Var a,b,c:array[1..20] of integer; ar:ty; n,m,k,i:integer;
procedure quicksort(var a:ty; Lo,Hi: integer);
procedure sort(l,r: integer); var i,j,x,y: integer; begin i:=l; j:=r; x:=a[random(r-l+1)+l]; repeat while a[i]<x do i:=i+1; while x<a[j] do j:=j-1; if i<=j then begin if a[i] > a[j] then begin y:=a[i]; a[i]:=a[j]; a[j]:=y; end; i:=i+1; j:=j-1; end; until i>=j; if l<j then sort(l,j); if i<r then sort(i,r); end;
begin; randomize; sort(Lo,Hi); end;
begin readln(n); for i:=1 to n do begin readln(a[i]); ar[i]:=a[i]; end; readln(m); for i:=1 to m do begin readln(b[i]); ar[i+n]:=b[i]; end; readln(k); for i:=1 to k do begin readln(c[i]); ar[i+n+m]:=c[i]; end; quicksort(ar,1,n+m+k); writeln('Final array:'); for i:=1 to n+m+k do write(ar[i]:4); end.
Пример ввода: 3 1 2 3 3 1 2 3 3 1 2 3 Пример вывода: Final array: 1 1 1 2 2 2 3 3 3
Відповідь: 1.Циклічними називаються обчислювальні процеси, в яких неодноразово виконуються одні й ті ж дії, але з різними даними.
2.Цикл із передумовою (або цикл-«поки») — це цикл, у якому тіло циклу виконується тільки у разі виконання умови, заданої перед тілом циклу. Якщо умова стає невірною, то робота циклу припиняється і керування передається оператору, наступному за оператором циклу. На мові Паскаль оператор циклу з передумовою ще називається «циклом While-Do».
WHILE <умова> DO <оператор>;
Приклад: обчислення суми перших 100 натуральних чисел методом послідовного додавання.
m:=1; S: =0;
WHILE m<=100 DO
begin
S:=S+m;
m:=m+1;
end;
3.Цикл із післяумовою (або цикл-«до») — це цикл, у якому тіло циклу виконується доти, поки умова, задана після тіла циклу, не стане правильною. Якщо умова стає правильною, то робота циклу припиняється й управління передається оператору, наступному за оператором циклу. На мові Паскаль оператор циклу з післяумовою ще називається «цикл Repeat-Until».
REPEAT <оператор> UNTIL <умова>;
Приклад: обчислення суми перших 100 натуральних чисел методом послідовного додавання.
m:= 0; S: = 0;
REPEAT
m:=m +1;
S:=S+m;
UNTIL m >= 100;
4.Загальний вигляд оператора циклу з параметром (з лічильником):
for <параметр циклу>:=N1 to N2 do <тіло циклу >; де N1 та N2 - початкове та кінцеве значення параметра циклу, тіло циклу може бути або складеним оператором. <Параметр циклу > ще називають лічильником циклу. Оператор for забезпечує виконання тіла циклу до тих пір, поки не будуть перебрані всі значення параметра циклу від початкового до кінцевого. Параметр циклу, його початкове та кінцеве значення повинні бути одного і того ж скалярного типу. При цьому можливий будь який стандартний тип, крім real. Якщо N1 та N2 цілі числа, а параметр циклу - цілочисельна змінна, то крок завжди рівний одиниці.
Приклад. s:=0; for i:=1 to 20 do s:=s+i;
Для i=1, 2, 3,... , 20 буде виконуватись оператор присвоєння
S:=S+i, який накопичує в змінній S суму перших 20 натуральних чисел. Якщо N1 та N2-символьного типу, а їх значення відповідно рівні 'A' та 'Z', то параметр циклу прийматиме послідовні значення, які співпадають з алфавітом: A, B, C, D E .., Z.
5.Якщо умова у вказівці повторення хибна при першій же перевірці, тотіло циклу не виконується жодного разу. Умова вказівки є умовоювходження в цикл.2. Умову вказівки повторення з передумовою необхідно підбирати такимчином, щоб в деякий момент вона змінила своє значення з TRUE на FALSE,інакше виникне ситуація “зациклювання” програми.3. Програмісту необхідно самому потурбуватись про необхідністьзбільшення (зменшення) лічильника циклу на 1. Це можна зробити такимчином І:=І+1.4. Входження в тіло вказівки повторення можливе тільки через заголовокцієї вказівки.
6.Рекурентним співвідношенням називається формула виду an+1=F(an,an-1,...,an-k+1), де F деяка функція від k аргументів, яка дозволяє обчислити наступні члени числової послідовності через значення попередніх членів.
7.- не знаю
8.- не знаю
Пояснення:
Type
ty=array[1..60] of integer;
Var
a,b,c:array[1..20] of integer;
ar:ty;
n,m,k,i:integer;
procedure quicksort(var a:ty; Lo,Hi: integer);
procedure sort(l,r: integer);
var
i,j,x,y: integer;
begin
i:=l;
j:=r;
x:=a[random(r-l+1)+l];
repeat
while a[i]<x do
i:=i+1;
while x<a[j] do
j:=j-1;
if i<=j then
begin
if a[i] > a[j] then
begin
y:=a[i];
a[i]:=a[j];
a[j]:=y;
end;
i:=i+1;
j:=j-1;
end;
until i>=j;
if l<j then sort(l,j);
if i<r then sort(i,r);
end;
begin;
randomize;
sort(Lo,Hi);
end;
begin
readln(n);
for i:=1 to n do
begin
readln(a[i]);
ar[i]:=a[i];
end;
readln(m);
for i:=1 to m do
begin
readln(b[i]);
ar[i+n]:=b[i];
end;
readln(k);
for i:=1 to k do
begin
readln(c[i]);
ar[i+n+m]:=c[i];
end;
quicksort(ar,1,n+m+k);
writeln('Final array:');
for i:=1 to n+m+k do
write(ar[i]:4);
end.
Пример ввода:
3
1
2
3
3
1
2
3
3
1
2
3
Пример вывода:
Final array:
1 1 1 2 2 2 3 3 3