дешифровки: Const sh = '_.,'; Var St : String; i : Integer; Function DeCode(S : String; Tabl : String; k : Integer) : String; Var j,n : Integer; Begin For j:=1 to Length(S) do Begin n:=Pos(S[j],sh); If n>0 then Begin n:=n+k; While n>Length(sh) do n:=n-Length(sh); While n<=0 do n:=n+Length(sh); S[j]:=sh[n]; end end; DeCode:=S; end; Begin St:='ЗЫФЙГФШРЦ . ШД'; Writeln(Decode(St,sh,-6)); //For i:=-10 to 10 do Writeln(Decode(St,sh,i)); end.
Var a: array[0..99] of integer; begin //заполняем массив случайными числами Randomize(); for var i:=0 to 99 do a[i]:=random(-100,100);
//а теперь заменяем все отрицательные элементы на ноль for var i:=0 to 99 do if (a[i]<0) then a[i]:=0; end.
Вот второй вариант программы, со вводом с клавиатуры и со сдвигом нулевых элементов в хвост массива program pr_1;constn = 6;varA: array [1..n] of integer; n1: integer; beginWrite('введите ');for i := 1 to n doread(A[i]); n1:=n; for var i:=n downto 1 do{в цикле просматриваем элементы массива} begin if A[i] < 0 then {проверяем, нужно ли удалять i-ый элемент} begin{если нужно – удаляем i-ый элемент} for var j := i to n1 - 1 do A[j] := A[j + 1]; {сдвигаем} A[n1]:=0; Dec(n1); {уменьшаем количество элементов} end; end; for var i:=1 to n1 do write(A[i], ' ');end.
дешифровки:
Const sh = '_.,';
Var
St : String;
i : Integer;
Function DeCode(S : String; Tabl : String; k : Integer) : String;
Var j,n : Integer;
Begin
For j:=1 to Length(S) do
Begin
n:=Pos(S[j],sh);
If n>0 then
Begin
n:=n+k;
While n>Length(sh) do n:=n-Length(sh);
While n<=0 do n:=n+Length(sh);
S[j]:=sh[n];
end
end;
DeCode:=S;
end;
Begin
St:='ЗЫФЙГФШРЦ . ШД';
Writeln(Decode(St,sh,-6));
//For i:=-10 to 10 do Writeln(Decode(St,sh,i));
end.