В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
Koketka2506
Koketka2506
19.10.2021 23:28 •  Информатика

Решить дан массив размер n.найти количество его локальных минимумов и локальных максимумов

Ответ:
zhenyadobr
zhenyadobr
24.07.2020 22:14
Const
  n=20;
var
  a:array[1..n] of integer;
  i,nmax,nmin,k:integer;
  to_min:boolean;
begin
  { инициализация массива случайными значениями }
  Randomize;
  Writeln('Элементы массива');
  for i := 1 to n do
  begin
    a[i]:=Random(99)+1; { Интервал [1..99] }
    Write(a[i],' ');
  end;
  Writeln;
  { вот теперь массив действительно "задан" }
  k:=a[1]; nmax:=0; nmin:=0; i:=1;
  while (a[i]=k) and (i<=n) do Inc(i);
  if i<=n then begin to_min:=(a[i]<k); k:=a[i] end;
  for i:=i+1 to n do
  begin
    if (k<a[i]) and to_min then
      begin Inc(nmin); to_min:=false end
    else
      if (k>a[i]) and (not to_min) then
        begin Inc(nmax); to_min:=true end;
    k:=a[i]
  end;
  Writeln('Найдено локальных минимумов: ',nmin);
  Writeln('Найдено локальных максимумов: ',nmax)
end.

Тестовое решение:
Элементы массива
82 46 46 46 98 15 63 77 28 67 76 19 52 56 57 39 13 98 54 85
Найдено локальных минимумов: 6
Найдено локальных максимумов: 5
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?