Ответы на вопрос:
Const n = 15; var a: array[1..n] of integer; i, max, min: integer; // тут будут храниться номера min и max begin randomize; {заполнение и вывод массива} write('исходный массив: '); for i: = 1 to n do begin a[i]: =random(21)-10; write(' ',a[i]) end; writeln; {поиск максимума и минимума} max: =1; min: =1; // проверять начинаем со второго элемента, // потому, что в первую очередь будем сравнивать с первым // (т.к. max = 1 и min = 1) for i: = 2 to n do begin if a[i]> a[max] then max: =i; if a[i]< a[min] then min: =i; // поскольку тут стоят знаки строго больше и строго меньше, // будут найдены только первый встретившийся максимум // и первый встретившийся минимум. // если бы стояли знаки больше или равно(> =) и меньше или равно(< =), // то найдены были бы последние встретившиеся max и min // то есть, например, в первом случае в массиве: // 1 2 3 4 5 2 5 1 // были бы найдены: min = 1, max = 5 // во втором случае в том же массиве были бы найдены: // min = 8, max = 7 end; // сколько элементов между пятым и первым ? - три. // между восьмым и седьмым ? - ноль // общая формула: // искомое кол-во элементов = |номермаксимума-номерминимума|-1 // значение берём по модулю потому, // что как минимальный элемент может стоять после максимального, // так и максимальный после минимального // то есть без модуля было бы так: 5-1-1 = 3, 7-8-1 = -2 // а с модулем так: |5-1|-1 = 3, |7-8|-1 = 0 // формула может выдать -1 в том случае, когда минимум равен максимум, // то есть когда все элементы массива равны. // на этот случай можно вывести соответствующее сообщение, или просто вывести ноль. writeln('max = a[',max,'] = ',a[max]); writeln('min = a[',min,'] = ',a[min]); i: =abs(max-min)-1; // перепишем сюда получившееся значение, // чтобы потом ещё раз его не высчитывать if i = -1 then writeln('все элементы массива равны.') else writeln('кол-во элементов между max и min = ',i); end. пример: исходный массив: 5 -2 -5 5 6 -7 7 -6 6 3 -4 6 -8 7 1 max = a[7] = 7 min = a[13] = -8 кол-во элементов между max и min = 5
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
jotik991p010co01.04.2020 13:44
-
ksutsydmi19.02.2022 23:00
-
denvolk0021.05.2022 22:12
-
anosovmaks907.06.2021 17:58
-
lkQwertyuiop111.07.2020 07:38
-
Trololo228987830.05.2022 10:23
-
Wer7721.02.2020 18:02
-
Matannoob30.12.2022 17:20
-
Uoywex05.07.2020 14:28
-
udinaaa20.02.2022 05:29
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.