Вопрос по информатике:
Дана последовательность чисел a1, a2, …, an. Требуется переставит числа в поряд-ке возрастания. Для этого сравниваются два соседних числа ai и ai+1. Если ai>ai+1 то делается пере-становка. Так продолжается до тех пор, пока все элементы не станут расположены в порядке воз-растания. Составить алгоритм сортировки, подсчитывая при этом количество перестановок.
ПОМОГИТЕ СДЕЛАТЬ В ПАСКАЛЬ, ПРОШУ =*(
- 01.06.2018 23:30
- Информатика
- remove_red_eye 13767
- thumb_up 7
Ответы и объяснения 1
const
max = 10000;
var i, j : Integer;
x,raz : LongInt;
A : array[0..max] of LongInt;
BEGIN
//
//Допустим уже массив заполнен
//
for i := max downto 2 do
for j := 2 to i do
if A[j] < A[j - 1] then
begin
x := A[j];
A[j] := A[j - 1];
A[j - 1] := x;
inc(raz);
end;
writeln('Количество перестановок = ', raz);
END.
Не проверял, но должно вроде бы работать:)
- 02.06.2018 13:39
- thumb_up 20
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.