亨廷顿汽车

时间:2018-06-05 10:43:34

标签: .net vb.net visual-studio

所以我在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上。另一个问题是,我如何计算出售的汽车数量?任何提示将非常感谢。我不确定我是否做得对。

1 个答案:

答案 0 :(得分:0)

对于第一个问题,您正在错误地使用Substring函数,只传递一个值,您指示它为您提供从该点到结尾的字符串。你应该做的是:

strInput.Substring(0, 1) ' Get the first character

 strInput.Substring(3, 1) ' Get the fourth character

对于第二个问题,intFullTimeintPartTime都是局部变量,每次单击按钮时都会创建并初始化为0。您应该将这两个变量移动到类的成员变量中,然后每次单击按钮并解析/处理值时,总计应累积。