Разработать алгоритм методом пошаговой детализации и программу решения , в которой отсортировать одномерный массив a[1..8], состоящий из элементов вещественного типа в порядке убывания методом «вставки». исходные данные массива вводятся с клавиатуры.
Ответы на вопрос:
считаем, что вначале данные . полагаем, что первый элемент находится на своем месте, поэтому граница между отсортированными и неотсортированными элементами находится после первого элемента. на каждом шаге, начиная от границы, ищем максимальный элемент и определяем его место в отсортированной части последовательности, после чего сдвигаем необходимую часть отсортированных элементов вправо и производим вставку элемента на освободившееся место. алгоритм выполняем до тех пор, пока не граница отсортированных данных не выйдет за границу массива.
pascalabc.net 3.4.2, сборка 1881 от 19.11.2018 внимание! если программа не работает, обновите версию!procedure sortbyinsert(a: array of real);
// сортировка простыми вставками
begin
for var граница : = 1 to a.length - 1 do
if a[граница - 1] < a[граница] then
begin
// сдвиг вправо
var (элемент, позиция) : = (a[граница], граница - 1);
while (позиция > = 0) and (a[позиция] < элемент) do
(a[позиция + 1], позиция) : = (a[позиция], позиция - 1);
// вставка на нужное место
a[позиция + 1] : = элемент
end
end;
begin
var a : = readarrreal(8);
sortbyinsert(a); a.println
end.
пример 2.9 -25 8.1 31.9 -30.9 20.9 47.6 6.6 47.6 31.9 20.9 8.1 6.6 2.9 -25 -30.9pascalABC
Объяснение:
var x, y: real;
begin
Write('Введите значение аргумента x = '); ReadLn(x);
if x < 1 then y := exp(1) / tan(2.9 + 3 * x)
else if x > 6 then y := sin(3 * x) + ln(x + 0.3)/ln(10)
else if (x >= 2) and (x <= 4) then y := 0.6 * ln(abs(5 - sqr(x)))
else begin WriteLn('Аргумент вне диапазона!'); exit; end;
WriteLn('y(', x, ') = ', y:1:3);
end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Eveliinaa03.08.2020 03:12
-
shishking2015oz5wew13.04.2022 15:06
-
asflower17.02.2023 07:33
-
alinkamarkova8225.05.2021 21:08
-
Шокер1209.02.2021 17:51
-
alixegp073ii27.10.2022 16:23
-
ALXEN0310.03.2022 04:36
-
Begkakaaa15.03.2020 21:33
-
Неизвестныйлунтик08.02.2021 01:13
-
mvalinka26.11.2021 06:37
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.