所以我在VB.NET中做了一些小小的练习,我对我正在做的事情有点冷淡。任务是"亨廷顿汽车公司的每位销售人员都被分配了一个由四个字符组成的ID号。第一个字符是数字1或数字2.A 1表示销售人员销售新车,2表示销售人员销售二手车。中间两个字符是销售员的姓名首字母,最后一个字符是字母F或字母P.字母F表示销售人员是全职员工。字母P表示他或她是兼职员工......应用程序应允许销售经理根据需要输入为尽可能多的销售人员销售的车辆的ID和数量。应用程序应计算并显示以下四类员工销售的汽车总数:全职员工,兼职员工,销售新车的员工和销售二手车的员工。" this is my interface 到目前为止,这是我的代码:
Private Sub btnCalculate_Click(sender As Object, e As EventArgs) Handles
btnCalculate.Click
'variables
Dim strInput As String = ""
Dim strOutput As String = ""
Dim intFullTime As Integer = 0
Dim intPartTime As Integer = 0
Dim intNewCar As Integer = 0
Dim intUseCar As Integer = 0
Dim intNumSold As Integer
strInput = txtId.Text
' changes the id number case to upper
strInput = txtId.Text.ToUpper()
' sets the focus
txtId.Focus()
Integer.TryParse(txtNumberSold.Text, intNumSold)
If strInput Like "[12][A-Z][A-Z][FP]" Then
If strInput.Substring(0) = "1" Then
intNewCar = intNewCar + intNumSold
txtNewCar.Text = intNewCar.ToString
Else
intUseCar = intUseCar + intNumSold
txtUsedCar.Text = intUseCar.ToString
End If
If strInput.Substring(3) = "F" Then
intFullTime = intFullTime + intNumSold
txtFullTime.Text = intFullTime.ToString
Else
intPartTime = intPartTime + intNumSold
txtPartTime.Text = intPartTime.ToString
End If
End If
End Sub
End Class
现在我的问题是,当输入第一个字符为1的ID时,结果不会打印在txt.NewCar.Text上。另一个问题是,我如何计算出售的汽车数量?任何提示将非常感谢。我不确定我是否做得对。
答案 0 :(得分:0)
对于第一个问题,您正在错误地使用Substring函数,只传递一个值,您指示它为您提供从该点到结尾的字符串。你应该做的是:
strInput.Substring(0, 1) ' Get the first character
和
strInput.Substring(3, 1) ' Get the fourth character
对于第二个问题,intFullTime
和intPartTime
都是局部变量,每次单击按钮时都会创建并初始化为0。您应该将这两个变量移动到类的成员变量中,然后每次单击按钮并解析/处理值时,总计应累积。