VB里,怎么把常数2定义成双精度?下面是我编的程序,运行了,只算n=50的时候,n=1000就不算了,究竟怎么把常数2定义成双精度呢?Dim yuanzhoulv As Double, n As Double Private Sub Command1_Click()yuanzhoulv = 2For n = 1 T

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/11 17:25:55

VB里,怎么把常数2定义成双精度?下面是我编的程序,运行了,只算n=50的时候,n=1000就不算了,究竟怎么把常数2定义成双精度呢?Dim yuanzhoulv As Double, n As Double Private Sub Command1_Click()yuanzhoulv = 2For n = 1 T
VB里,怎么把常数2定义成双精度?

下面是我编的程序,运行了,只算n=50的时候,n=1000就不算了,究竟怎么把常数2定义成双精度呢?

Dim yuanzhoulv As Double, n As Double

 


Private Sub Command1_Click()
yuanzhoulv = 2
For n = 1 To 2000
yuanzhoulv = yuanzhoulv * ((2 * n) ^ 2) / ((2 * n - 1) * (2 * n + 1))
If n = 50 Then
Text1.Text = yuanzhoulv
Else
    If n = 1000 Then
    Text1.Text = Text1.Text & Chr(13) + Chr(10) & yuanzoulv
    End If
End If
Next n

   
End Sub


VB里,怎么把常数2定义成双精度?下面是我编的程序,运行了,只算n=50的时候,n=1000就不算了,究竟怎么把常数2定义成双精度呢?Dim yuanzhoulv As Double, n As Double Private Sub Command1_Click()yuanzhoulv = 2For n = 1 T
你自己在VB的立即窗口测试一下:
Print 30000 * 2
这样是会提示“溢出”的,改成下面这样:
Print 30000 * 2# '或者Print 30000# * 2
就不会出错了.
原理是30000和2两个数都是整型数(Integer)范围,所以VB就按Integer来进行计算,但它们相乘的结果60000却超出了Integer的范围,所以就溢出了.只要把这两个数的任何一个设为双精度浮点数(也可以是长整型数或单精度数),VB就会按双精度数来计算结果,这样就不会溢出了.
所以题目中要你把2设为双精度型的意思,就是要你把2写成2#的形式,即:
yuanzhoulv = yuanzhoulv * ((2# * n) ^ 2) / ((2 * n - 1) * (2 * n + 1))
注意,只需要任何一个2写成2#即可,用不着四个2都写成2#
但是,具体到你这条题目,2是无须写成2#的,因为第一个乘数yuanzhoulv已经是双精度型变量了,所以VB肯定会按双精度型来计算的,所以你的这行代码是没错的.
纵观你的全部代码,问题有几个:
1、Text1的MulitLine属性一定要设为True,否则的话n=50和n=1000时的两次运算结果是会显示在同一行的,不会如你所愿分两行显示;
2、Text1.Text = Text1.Text & Chr(13) + Chr(10) & yuanzoulv 这行最后面的yuanzoulv应该是yuanzhoulv才对;
3、Chr(13) + Chr(10)可以用VB内部常数vbCrLf来代替.
其他就没什么问题了.

VB里,怎么把常数2定义成双精度?下面是我编的程序,运行了,只算n=50的时候,n=1000就不算了,究竟怎么把常数2定义成双精度呢?Dim yuanzhoulv As Double, n As Double Private Sub Command1_Click()yuanzhoulv = 2For n = 1 T VB如何定义常数 vb中定义的d为双精度变量,设d=text1.text,text1.text里输入的是12.3625 为啥运行时d=36.2500, VB里变量怎么定义长整形或实数类型 vb里的 rem是定义的什么啊 请问怎么查看ansys中已定义好的实常数特性?下面的命令流里还有两个小问题,……ET,1,solid186R,3 这里的实常数定义的是哪个单元的?不应该是单元1的吗?REAL,3ET,2,170ET,3,174R,3,0.2,0.2,0.9,0 RMORE,1.0E20,f, 目前的无线电测向定位中,定位精度是怎么定义的,精度能达到多少 机械加工精度与加工精度有什么区别,能说一下是怎么定义的吗? 下面一句是在VB中定义的,怎么在c#中定义呢.Public fzInfo(1 To 99) As fz_Def 电能表的精度是怎么定义的?电能表的精度,如0.2S级、0.5S级,具体的怎么定义的?谢谢了~ VB程序题目定义下列变量(1)定义一整数型变量 (2)定义一由10个长整数型构成的一维数组变量(3)定义一单精度实数型变量 vb里的三引号是怎么弄出来的 VB中怎么定义实数型 常数项是否是有理项?怎么定义的? VB中Mod函数问题a是double型变量,a=19.5mod2*2 余数不是3.5么 ,怎么在VB里是0 VB变量定义问题怎么将VB里的变量设置为四舍五入,怎么才能让变量在所有的地方都可以用? ANSYS实常数怎么定义 vb 定义数组要求常数表达式如我定义x(ubound(x1)) as integer x1是一个数组为什么还会提示我要求常数表达式呢,一般造成这种结果有几种原因呢?