gpt4 book ai didi

math - 奇怪的 BASIC 数学公式

转载 作者:行者123 更新时间:2023-12-04 20:06:41 25 4
gpt4 key购买 nike

我喜欢转换旧的 BASIC 游戏——我遇到了一个有这个奇怪公式的游戏。目前我正在用 Pascal 编写,但我可以用任何语言编写。翻遍代码后,我找不到这个 var 是否在使用,但仍然想知道当时 BASIC 使用什么样的数学快捷方式。
d1 = 1-(( 0.23 + random / 10 ) * (-(d <= 50 )))d1是一个虚拟变量,d = 子的深度

我把它分解成几个步骤,找到了那部分 (-(d <= 50))导致我的编译失败。

有人可以解释一下吗?

最佳答案

-(d <= 50) 应该,AFAIK (boolean -> int 转换),如果 d <= 50 返回 -1,如果 d > 50 返回 0。总而言之,如果 d > 50,乘法的右边部分将相等到 0,所以 d1 将等于 1。您应该使用 else 或三元结构(下面的类似 C 的伪代码)编写它:

d1 = (d > 50) ? 1 : 1.23 + random / 10;

分步说明:
d1 = 1-(( 0.23 + random / 10 ) * (-(d <= 50 )))

然后
if ( d <= 50 )
d1 = 1-(( 0.23 + random / 10 ) * (-TRUE)))
else
d1 = 1-(( 0.23 + random / 10 ) * (-FALSE)))

然后
if ( d <= 50 )
d1 = 1-(( 0.23 + random / 10 ) * (-1)))
else
d1 = 1-(( 0.23 + random / 10 ) * (-0)))

然后
if ( d <= 50 )
d1 = 1 - (( 0.23 + random / 10 ) * -1))
else
d1 = 1 - (( 0.23 + random / 10 ) * 0))

然后
if ( d <= 50 )
d1 = 1 - (-( 0.23 + random / 10 ))
else
d1 = 1 - (0)

然后
if ( d <= 50 )
d1 = 1 + ( 0.23 + random / 10 );
else
d1 = 1;

然后,最后
d1 = (d > 50) ? 1 : 1.23 + random / 10;

关于math - 奇怪的 BASIC 数学公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24591218/

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