Определить, сколько элементов массива Х(40) больше своих соседей (слева и справа) как минимум вдвое - C (СИ)
Формулировка задачи:
Решение задачи: «Определить, сколько элементов массива Х(40) больше своих соседей (слева и справа) как минимум вдвое»
#include <stdio.h>
#define N 5
int main()
{
int X[N]={1,4,3,9,2};
int i,count=0;
//первый и послений
if(X[0]>X[1]*2)
count++;
if(X[N-1]>X[N-2]*2)
count++;
for(i=1;i<N-1;i++)
{
if((X[i]>X[i-1]*2) && (X[i]>X[i+1]*2 ))
count++;
}
printf("count=%d\n",count);
return 0;
}
Объяснение кода листинга программы
В этом коде определена массив X размером 5. Переменная count инициализируется нулем и используется для подсчета элементов массива, которые больше своих соседей как минимум вдвое. Сначала проверяются элементы X[0] и X[1]. Если X[0] больше X[1]2, то переменная count увеличивается на единицу. Затем проверяются элементы X[N-1] и X[N-2]. Если X[N-1] больше X[N-2]2, то переменная count также увеличивается на единицу. Далее в цикле проверяются все элементы массива X, начиная со второго и заканчивая предпоследним. Если элемент X[i] больше своих соседей X[i-1]2 и X[i+1]2, то переменная count увеличивается на единицу. В конце программы выводится значение переменной count, которое представляет собой количество элементов массива, которые больше своих соседей как минимум вдвое. Следует отметить, что в данном коде не учитываются случаи, когда массив содержит только один элемент, а также случаи, когда все элементы массива одинаковы или равны нулю.