#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
setlocale(LC_ALL,"russian");
int num;
cout << "Введите размер массива: ";
cin >> num;
int a[num];
int sum = 0;
cout << "Вводите элементы массива поочерёдно: " << endl;
for(int i = 0; i<num; i++)
{
cin >> a[i];
if(a[i]%5==0 && a[i]%2==0) // находим в массиве числа, кратные 5 и 2
{
sum = sum + 1;
}
}
cout << "Чётных чисел, кратных пяти и двум: " << sum << endl;
system("pause");
return 0;
}
56
Объяснение:
X mod 3 - последняя цифра в троичной записи числа X. X div 3 - число, полученное отбрасыванием последней цифры в троичной системе счисления.
Используя написанное выше, легко понять, что делает программа.
Сначала M = L = 0, затем в цикле, пока X > 0, к M прибавляется 1, к L прибавляется 1, если последняя цифра в троичной записи числа равна 2. Потом последняя троичная цифра отбрасывается. В конце выводится M и L.
Программа выводит количество троичных цифр в записи числа X и количество двоек в троичной записи числа X.
Итак, нужно найти количество чисел, троичная запись которых состоит из 5 цифр, из которых ровно две двойки.
Если первая цифра не двойка, то она 1 (0 быть не может): 1. Для двоек можно выбрать место на каждое из мест, обозначенных вопросом, можно поставить любую из 2 цифр (0 или 1). Получается 6 * 2 * 2 = 24 числа.
Если первая цифра двойка, то место для второй двойки можно выбрать каждый вопрос можно заполнить одной из двух цифр, итого 4 * 2 * 2 * 2 = 32 числа.
Всего 24 + 32 = 56 вариантов.