Vb.net Visual Basic计算的困难
只是VisualBasic有问题。我试图做一个简单的转换程序,但程序总是给我错误的答案。我还用Java编写了代码,它给出了我期望的答案。我不知道这里发生了什么。下面是一个代码示例。我输入的数字是alienYears转换为10,alienYearLength为440,alienDayLength为25.5。结果应该是12点左右。有些东西,但我一直得到218。有些东西。Vb.net Visual Basic计算的困难,vb.net,Vb.net,只是VisualBasic有问题。我试图做一个简单的转换程序,但程序总是给我错误的答案。我还用Java编写了代码,它给出了我期望的答案。我不知道这里发生了什么。下面是一个代码示例。我输入的数字是alienYears转换为10,alienYearLength为440,alienDayLength为25.5。结果应该是12点左右。有些东西,但我一直得到218。有些东西。 多谢各位 Dim alienYears As Decimal = CDec(txtYearsToConvert.Text)
多谢各位
Dim alienYears As Decimal = CDec(txtYearsToConvert.Text)
Dim alienYearLength As Decimal = CDec(txtDaysOnAlienPlanet.Text)
Dim alienDayLength As Decimal = CDec(txtDaysOnAlienPlanet.Text)
Dim alienHoursYears As Decimal = ((alienYears * alienYearLength) * alienDayLength)
Dim earthHourYears As Decimal = (8851.25)
Dim earthConversion As Decimal = (alienHoursYears / earthHourYears)
txtAgeOnEarth.Text = CStr(earthConversion)
这里看起来像是打字错误(vvvv),你是说txtYears(某物)?使用来自同一文本框的输入是没有意义的
Dim alienYears As Decimal = CDec(txtYearsToConvert.Text)
' VVVV
Dim alienYearLength As Decimal = CDec(txtDaysOnAlienPlanet.Text)
Dim alienDayLength As Decimal = CDec(txtDaysOnAlienPlanet.Text)
Dim alienHoursYears As Decimal = ((alienYears * alienYearLength) * alienDayLength)
Dim earthHourYears As Decimal = (8851.25)
Dim earthConversion As Decimal = (alienHoursYears / earthHourYears)
txtAgeOnEarth.Text = CStr(earthConversion)
(a) 在VBA中,您不能将值作为声明语句的一部分分配给变量,因此这可能是VB.Net(如果是,请更新您的标记,或者让我们知道它是否真的是VBA,以便我们向您展示如何避免编译错误)。(b)
Dim alienYearLength As Decimal=CDec(txtDaysOnAlienPlanet.Text)
和Dim alienDayLength As Decimal=CDec(txtDaysOnAlienPlanet.Text)
将把alienYearLength
和alienDayLength
设置为相同的值。@YowE3K实际上,他可以使用变量Dim alienYears作为变量:alienYears=CDec(“25.5”)
但不是像您所说的那样直接声明。@YowE3K是的,我在发布我的评论后注意到了他的用法。我认为拼写错误在alienDayLength的下一行。当然,它应该使用类似CDec的内容(txtHoursOnAlienPlanet.Text)