Добавил:
cappie
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Lab2_Var8_z1
.pas {Задача 1
Дана последовательность из n целых чисел. Определить ко-
личество инверсий в этой последовательности (т.е. таких пар
элементов, в которых большое число находится слева от
меньшего: x i > x j при i < j)}
Program Lab2_Var8_z1;
Var N, // количество чисел
i,j, // счетчики цикла
k:integer; // количество инверсий
mas: array [1..100] of integer; //массив чисел
Begin
//цикл постпроверки для ввода корректных данных
Repeat
Writeln('Введите число N>1 (количество чисел) :');
Readln(N);
until N>1;
Writeln('Введите числа:');
//цикл для заполнения массива числами
For i:=1 to N do
Read(mas[i]);
//сравнение чисел согласно условия задачи
For i:=1 to N-1 do
For j:=i+1 to N do
if mas[i]>mas[j] then
begin
writeln('Инверсия: ',mas[i],'>',mas[j]);
Inc(k); //увеличение количества инверсий на 1
end;
//вывод результата
Writeln('Количество инверсий: ',k);
End.
Дана последовательность из n целых чисел. Определить ко-
личество инверсий в этой последовательности (т.е. таких пар
элементов, в которых большое число находится слева от
меньшего: x i > x j при i < j)}
Program Lab2_Var8_z1;
Var N, // количество чисел
i,j, // счетчики цикла
k:integer; // количество инверсий
mas: array [1..100] of integer; //массив чисел
Begin
//цикл постпроверки для ввода корректных данных
Repeat
Writeln('Введите число N>1 (количество чисел) :');
Readln(N);
until N>1;
Writeln('Введите числа:');
//цикл для заполнения массива числами
For i:=1 to N do
Read(mas[i]);
//сравнение чисел согласно условия задачи
For i:=1 to N-1 do
For j:=i+1 to N do
if mas[i]>mas[j] then
begin
writeln('Инверсия: ',mas[i],'>',mas[j]);
Inc(k); //увеличение количества инверсий на 1
end;
//вывод результата
Writeln('Количество инверсий: ',k);
End.
Соседние файлы в предмете Основы алгоритмизации и программирования