【发布时间】:2018-09-18 05:00:32
【问题描述】:
在 QB64 中有一个关于循环优化的循环:
DIM N AS DOUBLE, X(100000000) AS DOUBLE
T! = TIMER
FOR N = 1 to 100000000
IF X(N) THEN
PRINT X(N)
EXIT FOR
END IF
NEXT
PRINT TIMER - T!
比:
DIM N AS DOUBLE, X(100000000) AS DOUBLE
T! = TIMER
FOR N = 1 to 100000000
IF X(N) <> 0 THEN
PRINT X(N)
EXIT FOR
END IF
NEXT
PRINT TIMER - T!
已编辑:09-18-2018 包括变量类型
【问题讨论】:
-
信息不足。 “N”是什么类型?函数“X”返回什么类型?您不能简单地使用计时器并自己测试吗?
-
我对这两个例程进行了计时器测试,它们返回相同的精确时间到毫秒。
-
在退出循环之前执行了多少次迭代?
-
这可能是您的答案:“我对这两个例程进行了计时器测试,它们返回相同的精确时间到毫秒。” - 你
-
@Bill:由于数组是用 100000000 个元素定义为零的,所有这些元素。