Сортировка - Pascal ABC (16777)

Узнай цену своей работы

Формулировка задачи:

Получить вектор A из 50 чисел где Ai вычисляется по формуле Ai=100*|sin(i)|.Сохранить вектор A в виде файла производя округление до 1 знака после запятой.Считать данные из файла и отсортировать простым включением

Решение задачи: «Сортировка»

textual
Листинг программы
uses crt;
const n=50;
var a:array[1..n] of real;
    b:real;
    f:text;
    i,j,k:byte;
    x:real;
begin
assign(f,'1.txt');
rewrite(f);
for i:=1 to n do
 begin
  b:=100*abs(sin(i));
  write(f,b:6:1);
 end;
close(f);
reset(f);
writeln('Исходный массив');
for i:=1 to n do
 begin
  read(f,a[i]);
  write(a[i]:8:1);
 end;
close(f);
writeln;
for i:=2 to n do
 begin
  x:=a[i];{запоминаем очередной элемент}
  j:=1;{смотрим что слева от него}
  while x>a[j] do inc(j);{пока все меньше данного, идем вперед}
  for k:=i-1 downto j do{нашли меньший, сдвигаем массив от этого элемента-1}
  a[k+1]:=a[k];{на 1 вправо}
  a[j]:=x;{вставляем найденный элемент на место}
 end;
writeln('Отсортированный массив');
for i:=1 to n do
write(a[i]:8:1);
end.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.071 из 5