Программы > Пример. Поиск локального минимума или максимума векторов
  
Пример. Поиск локального минимума или максимума векторов
1. Введите программу с использованием условных операторов и операторов цикла для поиска локальных минимумов в наборах данных:
Нажать для копирования этого выражения
Функция locmin просматривает входной вектор v и сравнивает каждый его элемент с двумя соседними элементами. Если элемент k меньше, чем элемент перед ним и элемент после него, то он считается локальным минимумом, и его значение и индекс добавляются в выходной вектор m.
2. Используйте эту программу для написания второй программы — для поиска локальных максимумов в том же наборе данных:
Нажать для копирования этого выражения
Функция locmax использует результаты, полученные при вызове функции locmin с аргументом -v. Локальный минимум вектора -v является зеркальным отражением локального максимума в этой же точке. Следовательно, каждое значение локального минимума умножено на -1. Пара индекс-значение сохраняется в виде отдельного элемента в выходном векторе M.
3. Определите функцию f, в которой используется встроенная функция dbinom, возвращающая плотность вероятности для значения k:
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
4. Постройте графики этих двух функций:
Нажать для копирования этого выражения
5. Сохраните элементы g(k,n) в массиве, который можно будет передать в определенные выше программы:
Нажать для копирования этого выражения
6. Воспользуйтесь встроенными функциями для вычисления длины, чтобы узнать, сколько точек locmin и locmax было найдено программами.
Нажать для копирования этого выражения
Нажать для копирования этого выражения
7. Используйте определенные в примере программы для поиска трех точек локальных минимумов функции:
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
8. Используйте определенные в примере программы для поиска двух точек локальных максимумов функции:
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
9. Постройте график функции и покажите три точки ее локальных минимумов и две точки локальных максимумов:
Нажать для копирования этого выражения
10. Сравните полученные результаты с использованием определенных в примере программ с результатами, полученными с помощью встроенных функций localmin и localmax (данные в эти функции необходимо передавать в виде матрицы nx2):
a. Постройте входную матрицу nx2 с помощью функции augment:
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Нажать для копирования этого выражения
b. Воспользуйтесь встроенным функциями для определения точек локальных минимумов и максимумов:
Нажать для копирования этого выражения
Нажать для копирования этого выражения
Результаты согласуются.
* 
Перед тем как писать новую программу, проверьте, нет ли для этой цели встроенных функций.