Vb.net Visual Basic计算的困难

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)

只是VisualBasic有问题。我试图做一个简单的转换程序,但程序总是给我错误的答案。我还用Java编写了代码,它给出了我期望的答案。我不知道这里发生了什么。下面是一个代码示例。我输入的数字是alienYears转换为10,alienYearLength为440,alienDayLength为25.5。结果应该是12点左右。有些东西,但我一直得到218。有些东西。
多谢各位

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)