Sobes.tech
Назад к вопросам
Junior — Middle
84

Каким образом можно извлечь число, у которого все цифры нули, кроме одной в заданной позиции?

Ответ от нейросети

sobes.tech AI

Чтобы извлечь число, у которого все цифры нули, кроме одной в заданной позиции, можно использовать битовые операции сдвига. Например, если считать позицию цифры с нуля справа налево, то число с единицей в этой позиции и нулями в остальных будет равно 1 << position.

Пример на C++:

#include <iostream>

int main() {
    int position = 3; // позиция цифры (считая с 0)
    int number = 1 << position; // число с единицей в позиции 3
    std::cout << number << std::endl; // Выведет 8 (2^3)
    return 0;
}

Если речь идет не о битах, а о десятичных цифрах, например, число с одной цифрой 5 на позиции 3 (считая справа), то можно использовать степень 10:

int position = 3; // позиция цифры
int digit = 5; // цифра
int number = digit * static_cast<int>(pow(10, position));

Это даст число 5000, где только цифра 5 стоит на позиции 3, остальные — нули.