Решить с паскаля: 1. в массиве все отрицательные элементы переместить в начало массива, а остальные в конец с сохранением порядка следования. 2. дана последовательность целых чисел, среди чисел есть одинаковые, создать массив различных чисел последовательности и полученный массив отсортировать по возрастанию.

dashasapleva6 dashasapleva6    3   05.06.2019 05:50    2

Ответы
LBVFCBRF LBVFCBRF  05.07.2020 20:46
1
var
   i,k:integer;
   a,b:array[1..10]of integer;
begin
writeln('Исходный массив:');
for i:=1 to 10 do
  begin
  a[i]:=random(-10,10);
  write(a[i]:3)
  end;
for i:=1 to 10 do
  begin
  if a[i]<0 then
    begin
    k:=k+1;
    b[k]:=a[i]
    end
  end;
for i:=1 to 10 do
  begin
  if a[i]>=0 then
    begin
    k:=k+1;
    b[k]:=a[i]
    end
  end;
writeln;
writeln('Преобразованный массив:');
for i:=1 to 10 do write(b[i]:3)
end.

2.
var i,j,k,n,x,p:integer;
a,b:array of integer;
f:boolean;
begin
write('Сколько будет чисел: ');
readln(n);
SetLength(a, n);
for i:=1 to n do
  begin
  f:=false;
  write('Введите число: ');
  readln(x);
  for j:=0 to n-1 do
     if x=a[j] then f:=true;
     if f=false then
        begin
        a[k]:=x;
        k:=k+1;
        end
  end;
SetLength(b, k);
for i:=0 to k-1 do  b[i]:=a[i];
for i:= 0 to k-1 do
     for j := 0 to k-1 do
        begin
        if b[i] < b[j] then
           begin
           p := b[i];
           b[i] := b[j];
           b[j] := p
         end
    end;
writeln('Отсортированный массив:');
for i:=0 to k-1 do write(b[i]:3)
end.

2.1
var
  i,j,k,n,x,p:integer;
  a:array[1..1000] of integer;
  f:boolean;
begin
write('Сколько будет чисел: ');
readln(n);
k:=1;
for i:=1 to n do
   begin
   f:=false;
   write('Введите число: ');
   readln(x);
   for j:=1 to n do
      if x=a[j] then f:=true;
      if f=false then
         begin
         a[k]:=x;
         k:=k+1;
         end
   end;
for i:=1 to k-1 do
     for j:=1 to k-1 do
     begin
        if a[i] < a[j] then
           begin
           p:= a[i];
           a[i]:= a[j];
           a[j]:= p
           end
     end;
writeln('Отсортированный массив:');
for i:=1 to k-1 do write(a[i]:3)
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика