Практична робота
56.
Алгоритми сортування лінійного масиву чисел
Алгоритми сортування лінійного масиву чисел
Завдання 1. Реалізувати і протестувати алгоритм сортування
мовою Паскаль лінійного масиву
на 10 цілих чисел.
Program SORT;
var a: array [1..10]
of integer; {Масив елементів}
n: integer;
procedure
QuickSort (L, R: Integer);
{Швидке сортування масиву A []}
var i, j, x, y: integer;
begin i:=l; j:=r; x:=a[(l+r) div 2];
repeat
while (A[i]<x) do i:=i+1;
while (x<A[j]) do j:=j-1;
if (i<=j) then
begin
y:=A[i];
a[i]:=a[j]; a[j]:=y;
i:=i+1; j:=j-1;
end;
until
(i>j);
if (l<j)
then QuickSort (l, j);
if (i<r)
then QuickSort (i, r);
end;
begin
writeln ( 'введіть
10 елементів масиву:');
for
n:=1 to 10 do a[n]:=random(200)-random(300);
{ for n:=1 to 10 do readln (a[n]);}
QuickSort (1, 10); {На вході: ліва і права
межа сортування}
writeln ( 'після сортування:');
for
n:=1 to 10 do write(a[n], ' ' ‘);
end.
Алгоритм перекодування тексту, що утворений із випадкових символів
Алгоритм перекодування тексту, що утворений із випадкових символів
Завдання 2. Реалізувати і протестувати алгоритм створення
випадкового тексту із символів та його перекодування тексту мовою Паскаль , з подальшим розкодуванням його в початковий стан.
Program
Codirovka;
const
k=5;
var
s:string;
n,i,key:integer;
begin
{writeln('Введіть
довільний текст'); readln(s);}
s:='я зашифрую невелекий текст';
writeln(s);
for i:=1 to length(s) do
s[i]:=char(ord(s[i])+random(253));
writeln('Це початковий рядок із
випадкових символів=',s);
writeln(' це випадковий ключ для
зашифрування символів(число от 1 до 255)');
key:=random(254); writeln(key);
for i:=1 to length(s) do s[i]:=char(ord(s[i])+4*key);
writeln;
writeln('Зашифрованный текст способом
зсуву на довжину випадкового ключа: ',s);
for i:=1 to length(s) do s[i]:=char(ord(s[i])-4*key);
writeln('Відновлений початковий текст : ',s);
end.
Немає коментарів:
Дописати коментар