Подсчитать количество и вывести порядковые номера элементов массива, кратных 3 - C (СИ)
Формулировка задачи:
Помогите с заданием пожалуйста! Из последовательности чисел y1, y2, ,…, yn выбрать элементы, делящиеся на 3. Подсчитать их число и вывести их порядковые номера в массиве.
Напишите пожалуйста в СИ
Решение задачи: «Подсчитать количество и вывести порядковые номера элементов массива, кратных 3»
textual
Листинг программы
#include <stdio.h>
#include <malloc.h>
int main(void)
{
int n, *massive, k = 0;
printf("Razmer massiva: ");
scanf("%d", &n);
massive = (int*) malloc(n*sizeof(int));
for(int i=0; i<n; i++){
printf("a[%d] = ", i);
scanf("%d", &massive[i]);
}
for(int i=0; i<n; i++){
if ((massive[i] % 3) == 0){
printf("a[%d] = %d", i, massive[i]);
++k;
}
}
printf("Kolichestvo: %d", k);
return 0;
}
Объяснение кода листинга программы
Вывод кода на языке C, который подсчитывает количество элементов массива, кратных 3, и выводит их порядковые номера:
- Объявлены переменные:
- n - для хранения количества элементов массива;
- massive - для хранения адреса начала массива;
- k - для хранения количества найденных элементов.
- Пользователю предлагается ввести количество элементов массива.
- Выделена память под массив с помощью malloc.
- В цикле от 0 до n-1 пользователь вводит значения элементов массива и они сохраняются в переменной massive.
- В цикле от 0 до n-1 проверяется, делится ли элемент массива на 3 без остатка.
- Если условие выполняется, то выводится порядковый номер элемента и его значение.
- Переменная k увеличивается на 1.
- После завершения второго цикла выводится количество найденных элементов.
- Программа завершается возвратом 0.