Определите наименьшее расстояние между двумя локальными максимумами последовательности натуральных чисел, завершающейся числом 0. если в последовательности нет двух локальных максимумов, выведите число 0. начальное и конечное значение при этом локальными максимумами не считаются. pascal или python
195
242
Ответы на вопрос:
Под локальным максимумом, скорее всего, имеется в виду число, большее чем оба его соседа, за исключением случая, когда соседом справа является 0. в таком случае достаточно однократно пройтись по всем числам, запоминая минимальное из расстояний между новым и предыдущим обнаруженными максимумами. программа (язык pascal abc.net) var i1,i2,i3: integer; i: integer; curr,minr,lastmax: integer; begin readln(i1,i2); i: =2; minr: =1000000; repeat readln(i3); if (i2> i1) and (i2> i3) and (i3< > 0) then begin curr: =i-lastmax; if curr< minr then minr: =curr; lastmax: =i; end; i1: =i2; i2: =i3; i+=1; until i2=0; if minr=1000000 then writeln(0) else writeln(minr); {стоило бы добавить булевую переменную в качестве флага - был ли хоть один max, но вряд ли расстояние между ними превысит миллион : -} end.
Var x,p: array[1..100] of integer; k,n: integer; begin write('введите k: '); readln(k); write('введите массив x(',k,'): '); for k: = 1 to k do read(x[k]); write('массив p: '); n: =0; for k: = 1 to k do if x[k]< 0 then begin n: =n+1; p[n]: =x[k]; end; for k: = 1 to k do if x[k]=0 then begin n: =n+1; p[n]: =x[k]; end; for k: = 1 to k do if x[k]> 0 then begin n: =n+1; p[n]: =x[k]; end; for k: = 1 to k do write(' ',p[k]) end. пример: введите k: 6 введите массив x(6): 3 0 -2 2 4 -3 массив p: -2 -3 0 3 2 4
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
tunekoff22828.02.2023 03:24
-
ViollaK270420.01.2023 21:27
-
NataNati28.05.2021 18:51
-
AlexOge12.02.2022 01:39
-
Matvey114508.11.2020 01:40
-
Megatrolll22828.02.2022 19:48
-
Keepcryingpikka28.01.2020 10:44
-
sholdakirnichnp0175q18.01.2021 13:36
-
мартина23.12.2021 08:38
-
дарья164527.04.2021 04:58
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.