Program n1;
Uses CRT;
Const n=15;
Var A: array[1..n] of integer; B: array[1..n] of integer;
i,k,max: integer;
begin
randomize;
clrscr;
Writeln('ishodny massiv');
For i:=1 to n do
begin
a[i]:=random(100);
a[i]:=a[i]-50;
write(a[i]:4);
end;
writeln;
writeln('polychenny massiv');
max:=0;
For i:=1 to n do
begin
b[i]:=-a[i];
write(b[i]:4);
If a[i]=b[i] then k:=k+1;
If (b[i]>0)and(b[i]>max) then max:=b[i];
If (b[i]<0)and(-b[i]>max) then max:=-b[i];
end;
writeln;
Writeln('Kolychestvo neizmenyvshihsa elementov=',k,', samyi bolshoy po modyly element raven =',max);
writeln
end.
В качестве исходной фразы используйте:
Джинсы порезаны, лето, три полоски на кедах
2. Выполнить вручную шифрование сообщения при шифрующей системы Трисемуса.
В качестве исходной фразы используйте:
Под небом голубым есть город золотой
3. Выполнить вручную шифрование сообщения при лозунгового шифра.
В качестве исходной фразы используйте:
Я шагаю по пpoспектy, по ночномy гоpодy.
В качестве ключа используйте слово «Аквамарин»
4. Выполнить вручную шифрование сообщения при шифра табличной маршрутной перестановки.
В качестве исходной фразы используйте:
Я не знаю, где ошиблись мы в расчетах
5. Выполнить вручную кодирование сообщения методом RLE.
В качестве исходной фразы используйте:
РРппВ12уллл3336
6. Выполнить вручную кодирование сообщения методом RLE.
В качестве исходной фразы используйте:
еВпппВ11уфффуугггддд
7. Выполнить вручную кодирование сообщения методом RLE.
В качестве исходной фразы используйте:
ИВВВ111у
Заранее за ответы!
function AutoMorph(n:integer):boolean;
begin
var s1:=n.ToString;
Result:=(s1=(n*n).ToString.Right(s1.Length))
end;
begin
var a,b:integer;
Write('Введите а и b: '); Read(a,b);
for var i:=a to b do
if AutoMorph(i) then Print(i)
end.
Тестовое решение:
Введите а и b: 1 10000
1 5 6 25 76 376 625 9376
Попробовал переписать функцию в более примитивный вид. По-моему, она не стала проще, только удлинилась...
function AutoMorph(n:integer):boolean;
begin
var s1:=IntToStr(n); // n переводим в строковое представление
var s2:=IntToStr(n*n); // n*n переводим в строковое представление
var l1:=Length(s1); // длина строки s1
s2:=RightStr(s2,l1); // правые l1 символов из s2
Result:=(s1=s2)
end;