gpt4 book ai didi

C++ for 循环 - 测试部分

转载 作者:行者123 更新时间:2023-11-28 03:33:21 25 4
gpt4 key购买 nike

这是一个简单的问题,但我被卡住了。这是 this paper 中准随机数生成器的代码.

void PlaneHammersley(float *result, int n)
{
float p, u, v;
int k, kk, pos;

for (k=0, pos=0 ; k<n ; k++) {

u = 0;
for (p=0.5, kk=k ; kk ; p*=0.5, kk>>=1)
if (kk & 1) // kk mod 2 == 1
u += p;
v = (k + 0.5) / n;
result[pos++] = u;
result[pos++] = v;
}
}

我试着用 Python 翻译,第二个 for 循环对我来说很神秘。结束条件是 kk,它是一个 int,我不知道它何时计算为 True。有人可以解释发生了什么吗?

谢谢。

最佳答案

相当于:

for (p=0.5, kk=k ; kk != 0; p*=0.5, kk>>=1)

关于C++ for 循环 - 测试部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11914734/

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