vb循环语句中,初值、终值和步长为小数,怎么计算循环次数?

vb循环语句中,初值、终值和步长为小数,怎么计算循环次数?

((终止值-初值)除以步长)+1 不管是小数 还是整数都是如此来计算循环次数 只不过小数需要考虑四舍五入的问题 就比如你图中的for i = 1 to 1.5 step 0.1 来说 当i=1.5的时候 i会被四舍五入成2 直接跳出循环

追问

为什么i=1.5的时候,没有跳出循环,而且最后一次循环是i=1.6,不是1.7?

追答

计算机都是用二进制来运算,而二进制转换小数存在精度的问题 以上图片就是一个很好的例子

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-02-19
循环次数 = (终值-初值) ÷ 步长 + 1追问

(1.7-1)/0.1+1=8,它怎么只执行了7次

追答

For 循环适合整数,要用小数的话适合你前面的Do循环。
你如果一定要使用For 也可以用一点小技巧的;

Dim i As Integer
Dim j As Single
For i = 10 To 17

j = i / 10
Debug.Print j
Next i

追问

我是做题看到for用小数的,不知道怎么算次数。
把它换成Do循环,也是执行了7次

vb循环语句中,初值、终值和步长为小数,怎么计算循环次数?
((终止值-初值)除以步长)+1 不管是小数 还是整数都是如此来计算循环次数 只不过小数需要考虑四舍五入的问题 就比如你图中的for i = 1 to 1.5 step 0.1 来说 当i=1.5的时候 i会被四舍五入成2 直接跳出循环

VB中循环语句的循环值如何计算
如果不大于就继续第二步 <2> 第二次循环:i等于初值2加上步长(写成代码形式即i=2+2) 所以第二次循环结束后i的值等于4 再检查循环变量是否大于终值,如果不大于就继续第三步 <3>第三次循环:i的值等于上次的值(4)加上步长(写成代码形式即i=4+2) 所以第三次循环结束后i的值...

VB中循环语句的循环值如何计算
从上面的循环次数我们看得出来,这次的循环共执行了三次。最后输出的结果就是2、4、6当步长为负数时:循环变量的值=n-步长(直到循环变量的值小于终值时才停止循环),其中n是由初值往终值方向递减。

vb中如果for循环的初值终值步长都有小数0.5那么应该怎么算?
'通过运行以下代码,可以清晰看到循环变量的变化Private Sub Command1_Click()Dim n As IntegerDim i As Double '注意这里For i = 0 To 5 Step 0.25 n = n + 1 Print "第" & Str(n) & "次循环,i=" & Str(i)Next iEnd Sub ...

VB For 循环语句的用法
我们在 VB 编程中,要想重复执行一些语句,并且知道要执行它们的次数,应该怎么做呢?当然就是使用 For 循环语句啦!语法 For循环的格式: For 循环变量 = 初值 To 终值 [Step 步长] [循环体] Next [循环变量] 注意: 1) 当步长 0 时 循环执行的条件:循环变量 = 终值 2) 当步长 0 时 ...

在VB中for循环语句形式中的步长怎么算的?
for i=1 to 10 step 1 ' 步长 1 是黙认,所以一般是不用写的, 这样会 循环 十次 i 每一次 循环 就是会 循环变量+步长 结果 大于 终值 就结束 for i=1 to 10 step 2 步长 2 i 每一次 循环 就是会 循环变量+步长 结果 大于 终值 就结束, 可以看出,因为步长为2,加多少...

VB中的循环语句中的for... 是怎么用的?
for语句是循环语句,它的格式是:For 变量=初值 To 终值 〔Step 步长]循环体 Next 变量 如:For i=0 to 999 '这里省略Step说明步长为1 循环体 Next i 说明从0到999,循环1000次。又如:For i=20 to 0 Step -2 循环体 Next i 说明从20到0,以步长为-2,循环10次 你现在明白“For…To...

VB 的 For Next循环语句详解
循环语句的核心是循环变量,用于控制循环的起始、结束与步长。初值确定循环开始的位置,终值则标记循环的结束点,步长则指明每次迭代之间跳过的次数。以计算从 1 到 10 每个数加 5 的情况为例,1 为初值,10 为终值,步长默认为 1。循环变量从初值开始,每经过一步,数值递增至终值。代码形式通常为 "...

VB循环中步长可以是个分数吗
步长:步长一般为正值。若为正值,则每执行一次循环循环变量增加一个步长值,这时,要求循环变量终值大于初值;若为负值,则每执行一次循环循环变量减少一个步长值,要求循环变量终值小于初值。步长默认为1 Exit For:结束For循环,跳到Next后的第一条语句执行 循环次数:n=int((终值-初值)\/步长+1)结论...

VB的for next语句问题
For循环的格式是:For 循环变量=初值 To 终值 [Step 步长][语句]Next[循环变量]当步长缺省时,缺省值为1。在Visual Basic中For循环属于“先检查后执行”语句,这种语句的执行过程:当步长为正,“循环变量”首先取得“初值”,检查是否超过“终值”,如果超过就一次也不执行而跳出循环。如果没有超过就...

相似回答