Alexxxxxxxxxxxxxxxey
20.07.2022 14:12

Const

N = 10;

Var

a: array[1..N] of integer;

i: integer;

num: integer

j: integer;

buf: integer

k: integer;

begin

for k:=1 to N do begin

write('a[',k,']= '); readln(a[k]);

end;

writeln('исходный массив:');

for k:=1 to N do write(a[k]:5); writeln;

writeln('сортировка');

for i:=1 to N-1 do begin

num:=i;

for j:=i+1 to N do

if a[j]
buf:=a[i]; a[i]:=a[num]; a[num]:=buf;

for k:=1 to N do write(a[k]:5); writeln;

end;

writeln('отсортированный массив:');

for k:=1 to N do write(a[k]:5); writeln;

readln;

end.

Во Определить метод сортировки.

2. Возможно ли применить данный метод сортировки для сортировки массивов по возрастанию, так и для сортировки массивов по убыванию?

3. Опишите последовательность действий и реализуйте их в программе, если ответ на второй во будет положительным.

4. Реализуйте программу для массива: [-8; 14; -5; 36; 99; 45]. Представить результаты

5. Составить алгоритм работы представленной программы в словесной форме.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
danilasavap0a3nj
19.09.2020 23:24
Const
  n = 11;

var
  x: array[1..n] of integer;
  i, k, d, s: integer;

begin
  Randomize;
  Writeln('Элементы массива');
  k := 0; s := 0;
  for i := 1 to n do
  begin
    d := Random(11) - 5;
    Write(d:3);
    if (i mod 2) = 0 then begin { четное место }
      if d = 1 then Inc(k);
      x[i] := d
    end
    else begin
      if d < 0 then s := s + d;
      x[i] := sqr(d)
    end
  end;
  Writeln;
  Writeln('Результирующий массив');
  for i := 1 to n do Write(x[i]:3);
  Writeln;
  Writeln('Количество единиц на четных местах равно ', k);
  Writeln('Сумма отрицательных элементов на нечетных местах равна ', s)
end.

Тестовое решение:
Элементы массива
 -3  0 -5  1  5  1 -3 -4  5 -3 -2
Результирующий массив
  9  0 25  1 25  1  9 -4 25 -3  4
Количество единиц на четных местах равно 2
Сумма отрицательных элементов на нечетных местах равна -13
0,0(0 оценок)
Ответ:
dzhoxa
11.10.2020 21:50
// PascalABC.Net 3.0, сборка 1064
const
  n = 10;
var
  ms: array[1..n] of string;
  t: string;
  i, j: integer;
  f: Text;
begin
  { Чтение матрицы из файла }
  Assign(f, 'in.txt'); Reset(f);
  for i := 1 to n do Readln(f, ms[i]);
  Close(f);
  { Вывод матрицы на экран }
  Writeln('*** Бинарная матрица ***');
  for i := 1 to n do Writeln(ms[i]);
  { Сортировка обменом (простейшая) }
  for i := 1 to n - 1 do
    for j := 1 to n - 1 do
      if ms[j] > ms[j + 1] then
      begin t := ms[j]; ms[j] := ms[j + 1]; ms[j + 1] := t end;
  { Поиск одинаковых строк }
  Writeln('Совпадающие строки');
  j := 1; t := ms[1];
  for i := 2 to n do
  begin
    if ms[i] = t then Inc(j)
    else begin
      if j > 1 then begin Writeln(t); j := 1 end;
      t := ms[i]
    end
  end;
  if j > 1 then Writeln(t)
end.

Контрольное решение:
*** Бинарная матрица ***
1 1 0 1 0 1 0 1 0 1
0 0 1 0 1 0 1 0 1 0
1 0 1 0 1 0 1 0 1 0
1 1 0 1 0 1 0 1 0 0
0 0 1 0 1 0 1 0 1 1
0 1 0 1 0 1 0 1 0 1
1 1 0 1 0 1 0 1 0 1
0 0 1 0 1 0 1 0 1 0
0 1 0 1 0 1 0 1 0 1
Совпадающие строки
0 0 1 0 1 0 1 0 1 0
0 1 0 1 0 1 0 1 0 1
1 0 1 0 1 0 1 0 1 0
1 1 0 1 0 1 0 1 0 1
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота