Задано количество элементов массива. Необходимо все ненулевые цифры перенести в начало — Pascal(Паскаль)

например 201003 -> 213000
program task7;
uses crt;
 
var a:array [1..20] of integer;
    i,j,k:byte;
    n,temp:integer;
 
begin
clrscr;
writeln('Vvedite kol-vo elementov (n<20): ');
readln(n);
for i:=1 to n do
begin
  writeln('Vvedite ',i,' element massiva: ');
  readln(a[i]);
end;
clrscr;
writeln('Ishodnyj massiv:');
for i:=1 to n do
write(a[i],' ');
writeln;
writeln;
k:=0;
for i:=1 to n do
if a[i] <> 0 then
  begin
     k:=k+1;
     temp:=a[i];
     for j:=i downto k+1 do
     a[j]:=a[j-1];
     a[k]:=temp;
  end;
writeln('Novui massiv imeet vid: ');
for i:=1 to n do
write(a[i],' ');
readln
end.

Leave a Comment

88 + = 95