我想用VB.NET计算雷诺数
这是我的代码:
Public Class Form1
Dim vis As Integer
Dim Den As Integer
Dim hd As Integer
Dim vl As Integer
Dim re As Integer
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
vis = Int(TextBox1.Text)
Den = Int(TextBox2.Text)
hd = Int(TextBox4.Text)
vl = Int(TextBox5.Text)
re = (Den * vl * hd) / vl
TextBox3.Show(re)
End Sub
End Class
查看我的用户界面here。
为什么我仍然收到错误消息"参数太多" ?
答案 0 :(得分:3)
您发布的代码存在一些问题,首先雷诺号的计算错误。其次,请打开Option Strict
,因为它不会编译您当前的代码。第三,请使用传统的命名约定,这使得从长远来看很困难......还有更多但不重要的一点......
建议的解决方案
变量声明含义:
tot =雷诺数
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim d,v,u,p,tot As Single
If Single.TryParse(TextBox1.Text,d) AndAlso Single.TryParse(TextBox2.Text,v) AndAlso Single.TryParse(TextBox3.Text,u) AndAlso Single.TryParse(TextBox1.Text,p) Then
tot = (d * v * p) / (u * 0.001)
MessageBox.Show(tot.ToString)
'OR
TextBox3.Text = tot.ToString
End If
End Sub
答案 1 :(得分:0)
Int函数不进行类型转换。它只返回一个值的整数部分(14.8将变为14)。要进行此转换,您希望使用CInt,如果您保证传入的文本确实是一个数字。
由于您使用的是用户提供的值,因此您可能需要使用一些错误更正。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If Integer.TryParse(TextBox1.Text, vis) AndAlso _
Integer.TryParse(TextBox2.Text, Den) AndAlso _
Integer.TryParse(TextBox4.Text, hd) AndAlso _
Integer.TryParse(TextBox5.Text, vl) Then
'Do your calculation
Else
'There is some kind of error. Don't do the calculation
End If
End Sub
我不打算解决你的公式是否正确。