Надо найти количество промежутков монотонности(возрастания и спадания) в массиве. Я пыталась написать программу, но мне сказали, что сам алгоритм решения неправильный. Подскажите, пожайлуста, что тут не так! Заранее огромное спасибо!!!
| Код | #include <stdio.h> #include <math.h> #define N 5
int number(int array[], int size); void enter(int array[], int size);
int number(int array[], int size) { int p, number, i; number = 1; if(array[0] < array[1]) p = 1; else p = 0; for(i = 2; i < size; i++) { if((array[i] > array[i-1]) && (p == 0)) { number++; p = 1; if(array[i] > array[i+1]) p = 0; } if((array[i] < array[i-1]) && (p == 1)) { number++; p = 0; if(array[i] < array[i+1]) p = 1; } } return number; }
void enter(int array[], int size) { int i; puts("VVedite chisla"); for(i = 0; i < size; i++) scanf("%d", &array[i]); }
int main() { int quantity, array[N]; enter(array, N); quantity = number(array, N); printf("Kolichestvo_intervalov_monotonnosty %d\n", quantity); return 0; }
|
|