Заполнить массив из 10 элементов случайными числами в интервале [0..100] и отсортировать его по последней цифре.

Пример:

Исходный массив:

14 25 13 30 76 58 32 11 41 97

Результат:

30 11 41 32 13 14 25 76 97 58

говорили про какой-то метод пузырька. хелп ми Т_т

p.s. паскаль abc

ребят ,если честно - срочно...

2

Ответы и объяснения

2013-03-21T10:30:32+00:00

Это Проверенный ответ

×
Проверенные ответы содержат надёжную, заслуживающую доверия информацию, оценённую командой экспертов. На "Знаниях" вы найдёте миллионы ответов, правильность которых подтвердили активные участники сообщества, но Проверенные ответы - это лучшие из лучших.

var
    A: array [1..10] of integer;
    i, j, n, temp: integer;

begin
    randomize();
    n := 10;
    for i := 1 to n do
    begin
        A[i] := random(100);
        write(A[i], ' ');
    end;
    
    for j := 1 to n - 1 do
    begin
        for i := 1 to n - j do
        begin
            if a[i] mod 10 < a[i + 1] mod 10 then begin
                temp := a[i];
                a[i] := a[i + 1];
                a[i + 1] := temp;
            end;
        end;
    end;
    
    writeln();
    for i := 1 to n do
        write(A[i], ' ');
end.

Лучший Ответ!
  • Tlalok
  • почетный грамотей
2013-03-21T10:40:29+00:00

const

  n = 10;

var

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

  i, j:integer;

begin

  randomize;

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

  for i := 1 to n do

  begin

    a[i] := random(101);

    write(a[i], ' ');

  end;

  

  for i := 1 to n - 1 do

    for j := 1 to n - i do

      if a[j] mod 10 > a[j + 1] mod 10 then

      begin

        a[j] := a[j] + a[j + 1];

        a[j + 1] := a[j] - a[j + 1];

        a[j] := a[j] - a[j + 1];

      end;

 

  writeln;

  writeln('Результат:');

  for i := 1 to n do

    write(a[i], ' ');

  writeln;

end.