Проверить, образуют ли элементы целочислееного массива размера N арифметическую прогрессию - C (СИ)
Формулировка задачи:
Проверить, образуют ли элементы целочислееного массива размера N арифметическую прогрессию. Если да, то вывести разность прогрессии, если нет - вывести 0.
Решение задачи: «Проверить, образуют ли элементы целочислееного массива размера N арифметическую прогрессию»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
int main()
{
int N, A[N];
int x, i;
x = A[1] - A[0];
for(i = 1; i <= (N - 1); ++i){
if(A[i] - A[i -1] != x){
printf("%d\n", 0);break;
}
if(i == (N - 1))
printf("Raznost progressii = %d\n", x);
}
return 0;
}
Объяснение кода листинга программы
В этом коде:
- Включаются необходимые заголовочные файлы:
stdio.h- для работы с консолью (ввод/вывод данных)stdlib.h- для работы с операциями на числах
- Создается переменная N типа int - она будет использоваться для хранения размера массива
- Создается целочисленный массив A - размерность массива определяется переменной N
- Создаются вспомогательные переменные:
x- для хранения разности между элементами массиваi- для хранения индексов элементов массива
- Вычисляется разность между первым и вторым элементом массива и сохраняется в переменной
x - Запускается цикл, который будет выполняться до тех пор, пока индекс не станет меньше или равным N-1 (так как индексы массива начинаются с 0)
- Внутри цикла проверяется условие: если разность между текущим и предыдущим элементом не равна
x, то выводится сообщение0и цикл прерывается - Если цикл дошел до конца и условие не было выполнено, то выводится сообщение с разностью прогрессии
- Функция main() возвращает 0, что означает успешное выполнение программы