gpt4 book ai didi

c - 获得 2 的幂相关结果的优雅方法

转载 作者:行者123 更新时间:2023-11-30 18:20:11 27 4
gpt4 key购买 nike

首先,抱歉标题含糊。这是我的问题:

n > 0是一个自然数。确定正数k这样2^i + k = n尽可能最大i .

我如何用 C 优雅地做到这一点?

最佳答案

int i = 0; j = 1, k, n = (your value);

if ( n > 0 )
{
while ( 2 * j < n)
{
j = 2 * j;
i++;
}

k = n - j;
}

// replace '<' with '<=' if k = 0 is desired where n is a pure power of 2

(注意:标准 C 中没有求幂运算符)

关于c - 获得 2 的幂相关结果的优雅方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27749998/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com