На C++ как проверить кратность 16 и не кратность 256 через битовые операции?
restIess:
Для 16 сдвинуть на 4 бита вправо, затем влево, затем сравниваем с заданным числом
Ответы на вопрос
Ответил restIess
3
#include<iostream>
using namespace std;
int multiplicity16(int n)
{
return (((n >> 4) << 4) == n);
}
int UNmultiplicity256(int n) {
return (((n >> 8) << 8) != n);
}
signed main()
{
setlocale(LC_ALL, "Rus");
int n;
cout << "Введите число, которое проверяем на кратность 16: ";
cin >> n;
if (multiplicity16(n))
cout << "YES" << endl;
else
cout << "NO" << endl;
cout << "\nВведите число, которое проверяем на не кратность 256: ";
cin >> n;
if (UNmultiplicity256(n))
cout << "YES" << endl;
else
cout << "NO" << endl;
return 0;
}
Новые вопросы
Русский язык,
2 года назад
Математика,
2 года назад
Литература,
7 лет назад
История,
7 лет назад
Математика,
8 лет назад