a)
Переводим 91 в двоичную систему счисления
91/2=45 ост 1
45/2=22 ост 1
22/2=11 ост 0
11/2=5 ост 1
5/2=2 ост 1
2/2=1 ост 0
записываем получившиеся 1 и 0 в обратном порядке получаем:
91= 1011011 в двоичной СС, т.к. ячейка 8-ми разрядная то дописываем вперед незначащий 0
ответ:01011011
Б) -74
сначала переводим число 74 в двоичную систему счисления (как и в примере делением на 2) получим 1001010
дополняем слева 0 для 8-разрядной ячейки 01001010
т.к. число отрицательное меняем 1 на 0 и 0 на 1, получаем 10110101
и прибавляем 1 ко всему числу чтобы получить знак - получаем 10110110
ответ: 10110110
в) 68
Как и в первом примере переводим в двоичную систему счисления делением на 2 и дописываем слева незначащий 0
ответ: 01000100
г) -123
сначала переводим число 123 в двоичную систему счисления делением на 2 получим 1111011
дополняем слева 0 для 8-разрядной ячейки 01111011
т.к. число отрицательное меняем 1 на 0 и 0 на 1, получаем 10000100
и прибавляем 1 ко всему числу чтобы получить знак - получаем 10000101
ответ: 10000101
#include <array>
#include <random>
using namespace std;
mt19937 gen { random_device()() };
uniform_int_distribution<> uid(-20, 20);
constexpr size_t N = 5;
int main()
{
int sum = 0;
array<array<int, N>, N> a;
for (auto &i : a) {
for (auto &j : i) {
if ((j = uid(gen)) < 0) {
sum += j;
}
cout << j << "\t";
}
cout << endl;
}
cout << endl;
a[1][2] += sum;
for (const auto &i : a) {
for (const auto &j : i) {
cout << j << "\t";
}
cout << endl;
}
cout << "Sum: " << sum << endl;
}
a)
Переводим 91 в двоичную систему счисления
91/2=45 ост 1
45/2=22 ост 1
22/2=11 ост 0
11/2=5 ост 1
5/2=2 ост 1
2/2=1 ост 0
записываем получившиеся 1 и 0 в обратном порядке получаем:
91= 1011011 в двоичной СС, т.к. ячейка 8-ми разрядная то дописываем вперед незначащий 0
ответ:01011011
Б) -74
сначала переводим число 74 в двоичную систему счисления (как и в примере делением на 2) получим 1001010
дополняем слева 0 для 8-разрядной ячейки 01001010
т.к. число отрицательное меняем 1 на 0 и 0 на 1, получаем 10110101
и прибавляем 1 ко всему числу чтобы получить знак - получаем 10110110
ответ: 10110110
в) 68
Как и в первом примере переводим в двоичную систему счисления делением на 2 и дописываем слева незначащий 0
ответ: 01000100
г) -123
сначала переводим число 123 в двоичную систему счисления делением на 2 получим 1111011
дополняем слева 0 для 8-разрядной ячейки 01111011
т.к. число отрицательное меняем 1 на 0 и 0 на 1, получаем 10000100
и прибавляем 1 ко всему числу чтобы получить знак - получаем 10000101
ответ: 10000101