Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int count(int* begin, int* end, int* count1, int* count2){ // Функция принимает указатель на начало массива , и указатель , на конец массива + 1
- *count1 = 0; *count2 = 0; // Обнуляем счетчики
- for ( ; begin != end; begin++ ) { // Основной цикл , в котором пробегаем по всему массиву
- if ( *begin % 2 == 1 ) // условие нечетности
- *count1 += 1; // увеличиваем количество , если число нечетно
- if ( *begin % 5 == 0 ) // условие деления на 5
- *count2 += 1; // увеличиваем количество , если число делится на 5
- }
- }
- int main(){
- unsigned const int N = 5; // Размер массива
- int mas[] = {10, 17, 11, 2, 5}; // Сам массив
- int (*func) (int*, int*, int*, int*); // Указатель на функцию
- func = count; // Присвоение значения указателю на функцию count_odd_num
- int count1, count2; // Создание счетчиков
- (*func)(mas, mas+N, &count1, &count2); // Вызов указателя на функцию
- printf("Count of odd numbers in massive: %d \n", count1); // Вывод результата 1
- printf("Count of numbers that are divisible by 5: %d", count2); // Вывод результата 1
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement