Найти число локальных максимумов во введённом массиве. - C (СИ)
Формулировка задачи:
Вводится количество элементов массива. Вводится массив. В этом массиве находится количество локальных максимумов(крайние точки не считать). Это количество выводится на экран. Помогите с этой программой! Язык Си.
#include <stdio.h> #include <conio.h> int main() { int *rt; int i, x; printf ("vvedite chislo elementov: "); scanf ("%d", &x); rt=new int [x]; printf ("\nvvedite massiv iz %d elementov: ", x); for (i=0;i<x;i++) scanf ("%d", &rt[i]); for (i=0;i<x;i++) { if(...) ... } delete rt; getch(); return 0; }
Решение задачи: «Найти число локальных максимумов во введённом массиве.»
textual
Листинг программы
#include <stdio.h> #include <conio.h> int main() { int *rt; int i, x, g=0; printf ("vvedite chislo elementov: "); scanf ("%d", &x); rt=new int [x]; printf ("\nvvedite massiv iz %d elementov: ", x); for (i=0;i<x;i++) scanf ("%d", &rt[i]); for (i=1;i<x-1;i++) { if(rt[i]>rt[i+1]&& rt[i]>rt[i-1]) g++; } printf ("\nvo vvedennom massive <%d> lokalnix maksimumov", g); delete [] rt; getch(); return 0; }
Объяснение кода листинга программы
В этом коде:
- Сначала пользователю предлагается ввести количество элементов массива, которые будут вводиться далее.
- Затем происходит выделение памяти под массив заданного размера с помощью оператора new.
- Далее пользователю предлагается ввести элементы массива, которые сохраняются в массиве rt.
- Затем происходит поиск локальных максимумов в массиве. Для этого используется два вложенных цикла. Внешний цикл выполняется для всех элементов массива, кроме первого и последнего (чтобы избежать выхода за границы массива). Внутренний цикл проверяет, является ли текущий элемент локальным максимумом (больше предыдущего и следующего). Если это так, то счетчик локальных максимумов g увеличивается на единицу.
- Наконец, выводится количество найденных локальных максимумов. После этого освобождается память, выделенная под массив, с помощью оператора delete.
- Запускается функция getch(), которая ожидает нажатия клавиши, чтобы пользователь мог увидеть результат.
- Функция main() возвращает 0, что означает успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д