uses crt;
var b,a:array [1..100] of integer;
c,n,i:integer;
begin
clrscr;
writeln ('vvedite koli4estvo elementov :');
readln (n);
for i:=1 to n do
begin
writeln ('vvedite ',i,' element :');
readln (a[i]);
end;
c:=0;
for i:=1 to n do
begin
if a[i]<>0 then
begin
inc(с );
b[c]:=a[i];
end;
end;
for i:=c+1 to n do
begin
b[i]:=0;
end;
for i:=1 to n do
begin
write(b[i]);
end;
readkey;
end.
uses crt;
type T=array[1..100] of integer;
type G=array[1..100] of integer;
var
b:^T;
a:^G;
c,n,i:integer;
begin
clrscr;
writeln ('vvedite koli4estvo elementov :');
readln (n);
getmem(a,sizeof(integer));
getmem(b,sizeof(integer));
for i:=1 to n do
begin
writeln ('vvedite ',i,' element :');
readln (a^[i]);
end;
c:=0;
for i:=1 to n do
begin
if a^[i]<>0 then
begin
inc(с );
b^[c]:=a^[i];
end;
end;
for i:=c+1 to n do
begin
b^[i]:=0;
end;
for i:=1 to n do
begin
write(b^[i]);
end;
readkey;
end.
М | 6ac9k, используй теги! Lapp |
Ясно, проблема возникает когда один с элементов равняется 0. Сейчас исправим.
getmem(a,sizeof(integer));
getmem(b,sizeof(integer));
getmem(a,sizeof(T));
getmem(b,sizeof(G));
dispose(a);
dispose(b);
ГоТоВо!