Определите наименьшее расстояние между двумя локальными максимумами последовательности натуральных чисел, завершающейся числом 0. если в последовательности нет двух локальных максимумов, выведите число 0. начальное и конечное значение при этом локальными максимумами не считаются. pascal или python
100
216
Ответы на вопрос:
Под локальным максимумом, скорее всего, имеется в виду число, большее чем оба его соседа, за исключением случая, когда соседом справа является 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.
Program sredarifment; var a: array[1..10] of real; i, k: integer; c, s, sred: real; begin for i: =1 to 10 do begin write ('a[',i,']='); readln (a[i]); end; write('введите c: '); readln (c); for i: =1 to 10 do begin if a[i]> c then begin s: =s+a[i]; k: =k+1; end; end; sred: =s/k; writeln('среднее арифметическое чисел, превосходящих ',c,' равно ',sred); end.
Популярно: Информатика
-
Мммаксим14.08.2021 03:26
-
Nashinvo02.01.2022 17:09
-
cygrobik11104.01.2022 11:05
-
iradazlnv03.08.2022 06:05
-
JûšțĞîřł05.03.2021 02:53
-
potato199917.12.2021 02:33
-
domiks27.05.2023 23:56
-
lyoshaminakoff13.06.2021 17:33
-
gfjew56df21.12.2021 12:17
-
mishazhidkov202.03.2022 03:57