Определить, образуют ли элементы массива арифметическую прогрессию - C (СИ)
Формулировка задачи:
Задан целочисленный массив размера N. Определить, образуют ли элементы массива арифметическую прогрессию.
#include <stdio.h> #include <math.h> int main(int argc, char* argv[]) {int mas [100]; int N, d,r, i, k=0; printf("Vvedite razmernost massiva: "); scanf ("%d",&N); for (i=0; i<N; i++) { //printf ("%d", i++); scanf("%d",&mas[i]); } d==mas[1]-mas[2]; for (i=2; i<N; i++) { r==mas[i]-mas[i+1] ; if (r=d) printf ("Yavlartsya "); else ("Neyavl ");} getch(); return 0; }
Решение задачи: «Определить, образуют ли элементы массива арифметическую прогрессию»
textual
Листинг программы
#include <stdio.h> int main() { int n; int flag = 0; int a; scanf("%d", &n); int array[n]; int i = 0; for ( ; i < n; i++ ) { scanf("%d", &array[i]); } a = array[1] - array[0]; i = 1; n = n - 1; for ( ; i < n; i++ ) { if ( array[i+1] - array[i] != a ) { flag = 1; break; } } if ( flag ) { printf("Ne yavlaets9\n"); } else { printf("9vlaetsz\n"); } scanf("\n"); return 0; }
Объяснение кода листинга программы
В этом коде:
- Сначала пользователю предлагается ввести количество элементов в массиве (переменная
n
). - Затем, в цикле, пользователю предлагается ввести элементы массива (переменная
array
). - Далее, вычисляется разность между вторым и первым элементом массива (переменная
a
). - Затем, в цикле, проверяется, являются ли все элементы массива, начиная со второго, арифметической прогрессией с шагом `a (переменная
flag
). - Если хотя бы один элемент не соответствует прогрессии, то в переменную
flag
записывается 1 и цикл прерывается. - Если все элементы соответствуют прогрессии, то выводится сообщение об этом (переменная
printf
). - Наконец, пользователю предлагается ввести символ новой строки для завершения ввода (переменная
scanf
). - Код завершается возвратом 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д