这种情况,a(i)数组怎么定义比较简洁合理
vb吧
全部回复
仅看楼主
level 12
zgzzsn 楼主
有一个程序
Option Explicit
Private SubCommand1_Click()
Dim a(0 To 3600), b(0 To 3600), c(0 To3600), i#
For i = 0 To 3600 Step 1
If i Mod 600 = 0 Then a(i) = 2 * i
b(i) = Sin(i) * 6
c(i) = a(i) * a(i) + b(i) * b(i)
Print i; a(i); b(i); c(i)
Next i
End Sub
在一个循环里其中a(i) 只在 a(0);a(600);a(120);a(1800);a(2700);a(3300);a(3600)有值,b(i)和 c(i) 在i的各点都有值。
这种情况,a(i)数组怎么定义比较简洁合理
2020年06月16日 03点06分 1
level 7
呃 我觉得你应该把a(i)取值条件说一下
2020年06月16日 03点06分 3
level 7
就我所知道的数组定义法没有能做到你想要的 不过你可以通过修改代码来实现只对数组特定元素赋值并输出[吐舌]
2020年06月16日 03点06分 4
level 12
zgzzsn 楼主
在一个较大的循环里面计算赋值a(i),b(i),c(i),数组
a(i)是间隔(这里是600)有值的
a(i)数组定义也为a(0 To 3600),其实只有a(0);a(600);a(1200);a(1800);a(2400);a(3000);a(3600)
怎么定义a(i)数组合理?
2020年06月16日 04点06分 5
再问个问题 c(i)呢 当a(i)在无定义点时c(i)怎么办?我记得这样的话a(i)默认取零 是你想要的嘛?如果你回答我这个问题我就给你把代码写出来
2020年06月16日 04点06分
level 15
直接a(0 To 6)不行么
2020年06月16日 04点06分 6
a应该不能只有7个值吧 要那样的话c要怎么计算
2020年06月16日 04点06分
@懒懒的风⛅ 没错,怎么计算才是关键,数组本身的定义方式其实没那么重要
2020年06月16日 04点06分
@懒懒的风⛅ 提问者说只有7个值
2020年06月16日 04点06分
level 12
zgzzsn 楼主
这样
可以改为
c(i) = i * i + b(i) * b(i)
在循环里b(i),c(i)都为361个值
a(i)只有a(0);a(600);a(1200);a(1800);a(2400);a(3000);a(3600)有值
a(i)与 b(i),c(i)它们的标号在
a(0);a(600);a(1200);a(1800);a(2400);a(3000);a(3600)是对应的
2020年06月16日 04点06分 7
我已经说过了,a(0 To 6),使用时用a(i \ 600)表示即可
2020年06月16日 05点06分
有道理,谢谢您
2020年06月16日 05点06分
1