32
Объяснение:
Давайте размышлять:
каждое число N = abc в 16ричной системе представимо в виде N = a * 16 ^ 2 + b * 16 ^ 1 + c * 16 ^ 0
а что такое 16?
по отношению к 2.
16 = 2 ^ 4
в этом случае, а * 16 ^ 2 это a * 2 ^ 8
и число представимо в виде N = a * 2 ^ 8 + b * 2 ^ 4 + c * 2 ^ 0
если 2 - основание системы счисления, то они пошли через 3
а что же делать с a? оно же может быть 7, а в двоичной системе таких цифр нет.
переведём его в двоичную
тогда ячейку из четырех разрядов займет двоичная запись а и т.д.
надеюсь вы примерно поняли весь предыдущий текст, им я пытался подвести вас к тому, что при переводе из 16ричной в 2ичную количество знаков увеличится вчетверо (если не отбрасывать ведущие нули)
тогда при обратном дейтсвии оно уменьшится в 4 раща, и станет равным 125//4 (округлим в большую сторону, т.к. 125 - это как 125 цифр и три нуля, а вот потерять цифру и сделать 124 будет неверно) равно 32
#include <iostream>
signed main() {
setlocale(LC_ALL, "Ru");
int arrSize;
std::cout << "Введите размер массива: ";
std::cin >> arrSize;
int* arr = new int[arrSize];
std::cout << "Введите элементы массива: ";
for (int i = 0; i < arrSize; ++i)
std::cin >> arr[i];
std::cout << "Введенный пользователем массив: ";
for (int i = 0; i < arrSize; ++i)
std::cout << arr[i] << " ";
for (int i = 0; i < arrSize; ++i)
arr[i] = 0;
std::cout << "\nВсем элементам массива присвоили значение 0: ";
for (int i = 0; i < arrSize; ++i)
std::cout << arr[i] << " ";
std::cout << "\nУвеличили значения всех элементов на i+10: ";
for (int i = 0; i < arrSize; ++i) {
arr[i] += i + 10;
std::cout << arr[i] << " ";
}
return 0;
}