Пожалуйста:
Код:
VAR
i,Code:Integer;
N,N_odd,N_even,Dm:Byte;
Sum_even,Sum_odd,
P_even,P_odd:LongInt;
S:String;
D,D1:Array[1..255] of Byte;
BEGIN
Writeln('n (up to 255 figures):');
Readln(S);
N:=Length(S);
For i:=1 to N do
VAL(S[i],D[i],Code);
Sum_even:=0;
Sum_odd:=0;
P_even:=1;
P_odd:=1;
N_even:=0;
N_odd:=0;
For i:=1 to N do
If (i mod 2) = 0 then
begin
Sum_even:=Sum_even+D[i];
P_even:=P_even*D[i];
end
else
begin
Sum_odd:=Sum_odd+D[i];
P_odd:=P_odd*D[i];
end;
For i:=1 to N do
If (D[i] mod 2) = 0 then
N_even:=N_even+1
else
N_odd:=N_odd+1;
Writeln;
Writeln('Task N1: Sum of digits on even position is ',Sum_even);
Writeln;
Writeln('Task N2: Sum of digits on odd position is ',Sum_odd);
Writeln;
Writeln('Task N3: Product of digits on odd position is ',P_odd);
Writeln;
Writeln('Task N4: Product of digits on even position is ',P_even);
Writeln;
Writeln('Task N5: Number of even digits is ',N_even);
Writeln;
Writeln('Task N6: Sum of odd digits is ',N_odd);
Writeln;
Write('Task N7: ');
For i:=1 to N do
begin
D1[i]:=D[i];
If (D[i] mod 2) = 0 then D1[i]:=0;
Write(D1[i]);
end;
Writeln;
Writeln;
Write('Task N8: ');
For i:=1 to (N div 2) do
begin
Dm:=D[2*i-1];
D[2*i-1]:=D[2*i];
D[2*i]:=Dm;
end;
For i:=1 to N do
Write(D[i]);
Readln
END.