• В этой задаче вы должны написать функцию void count_odd_even(int n, int *odd, int *even).

    Данная функция должна сохранять в переменную, которая лежит по указателю odd количество нечётных цифр числа, а в переменную, которая лежит по указателю even, — количество чётных цифр.

    На вход вашей программе будут даваться 10 чисел. Для каждого из них вы должны вывести два числа — количество нечётных цифр и количество чётных цифр.

    Весь ввод и вывод должен быть организован в функции main, которая для подсчёта будет вызывать функцию count_odd_even.

    Формат входных данных
    На вход программе даётся 10 натуальных чисел, каждое из которых не превышает 109.
    Формат выходных данных
    Ваша программа должна вывести 10 пар чисел — количетство четных и нечётных цифр в каждом числе.

Ответы 1

  • /*Замечание:  По условию, с одной стороны, |n| ≤10⁹, с другой стороны, тип n - int, то есть число 10⁹ в переменную n не поместится.*/

    #include <iostream>

    #include <math.h>

    using namespace std;

    int odd = 0, even = 0;

    void count_odd_even(int n, int *odd, int *even);

    int main() {

           int a[10];

           for (int i = 0; i < 10; i++)

                   cin >> a[i];

           for (int i = 0; i < 10; i++) {

                   count_odd_even(a[i], &odd, &even);

                   cout << "(" << odd << "; " << even << ")" << endl;

                   odd = 0;

                   even = 0;

           }

           return 0;

    }

    void count_odd_even(int n, int *odd, int *even) {

           int t;

           t = abs(n);

           do {

                   if (t % 2 == 1)

                           (*odd)++;

                   else (*even)++;

                   t /= 10;

           } while (t != 0);

    }

    • Автор:

      mason72
    • 6 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years