【发布时间】:2025-12-29 14:10:07
【问题描述】:
我有最小和最大参数:
var min = 30;
var max = 35;
var num = 33;
还有一个步长为 100 毫秒的计时器。 在身体计时器上,我有代码:
if (num < max)
{
// Step 1
num = num + step;
}
if (num >= max)
{
// Step 2
num = num - step;
}
if (num <= min)
{
num = num + step;
}
问题是如果num = 34.98 工作步骤 1 (34.99 + 0,05),那么 步骤 2。所以在这一步我得到无限循环。如果num > max 然后递减到min,我该怎么做?
【问题讨论】:
-
step的值是多少?总是 0.05?
-
你可以发布包括循环的内容吗?
-
var num = 33;创建int num,你确定它等于34.98? -
让我理解这个问题。如果 num 大于 max,那么你想开始递减到 min 吗?反之亦然?如果是这样,那么您需要做的就是 ׳step*=-1׳ 。你是这个意思吗?
-
除了显示代码之外,请说明您正在尝试做什么。
标签: c#