gpt4 book ai didi

logic - 简单逻辑题: check if x is between 2 numbers

转载 作者:行者123 更新时间:2023-12-04 17:39:41 26 4
gpt4 key购买 nike

我想看看一个变量是否在一个值范围之间,例如如果 x 在 20 和 30 之间返回 true。

执行此操作的最快方法是什么(使用任何基于 C 的语言)?

显然可以用 for 循环来完成:

function inRange(x, lowerbound, upperbound)
{
for(i = lowerbound; i < upperbound; i++)
{
if(x == i) return TRUE;
else return FALSE;
}
}
//in the program
if(inRange(x, 20, 30))
//do stuff

但是做起来很乏味 if(inRange(x, 20, 30))有没有比这更简单的不使用内置函数的逻辑?

最佳答案

你想要的表情是

20 <= x && x <= 30

编辑:

或者简单地放入一个函数中
function inRange(x, lowerbound, upperbound)
{
return lowerbound <= x && x <= upperbound;
}

Python 有一个 in运算符(operator):
>>> r = range(20, 31)
>>> 19 in r
False
>>> 20 in r
True
>>> 30 in r
True
>>> 31 in r
False

同样在 Python 中,这很酷——比较运算符是链式的!这与 C 和 Java 完全不同。见 http://en.wikipedia.org/wiki/Python_syntax_and_semantics#Comparison_operators

所以你可以写
low <= x <= high

在 Python 中 -10 <= -5 <= -1是真的,但在 C 中它会是假的。尝试一下。 :)

关于logic - 简单逻辑题: check if x is between 2 numbers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7253261/

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