Odpowiedź :
Program wraz z komentarzami tłumaczącymi jego działanie:
#include <iostream>
using namespace std;
//funkcja obliczająca ilość cyfr parzystych w liczbie:
int ileCyfrParzystych( long x )
{
int ile = 0; //licznik
while( x > 0 ) //pętla przechodząca przez wszystkie cyfry
{
long cyfra = x % 10; //pobranie ostatniej cyfry (cyfry jedności)
if( cyfra % 2 == 0 ) //jeżeli cyfra jesst parzysta
ile ++;
x /= 10; // skrócony zapis od: x = x / 10;
}
//pętla pobiera ostanią liczbę a następnie ją usuwa ( 123 % 10 = 3 -> ostatnia cyfra, 123 / 10 = 12 -> usunięcie ostatniej cyfry)
return ile;
}
int main()
{
int n;
cout << "Podaj n: ";
cin >> n;
unsigned long a[n]; //definicja tablicy która przechowuje liczby naturalne (unsigned) typu long, tablica jest rozmiaru n
unsigned long b[n];
for( int i = 0; i < n; i++ )
{
cout << "podaj a[" << i << "]:";
cin >> a[i];
//przypisanie do b[i] ilości cyfr parzystych w liczbie a[i]
b[i] = ileCyfrParzystych( a[i] );
}
for( int i = 0; i < n; i++ )
{
cout << b[i] << " ";
}
}