【问题标题】:Euclidean Distance vb net欧几里得距离 vb 网
【发布时间】:2015-06-08 10:42:56
【问题描述】:

我创建了一个程序,结果不合适, 我想在数字行-1,-1,-1和1,2,-1之间做乘法

-1x1 = -1
-1x2 = -2
-1x-1 = 1

然后将结果相加

(-1) + (- 2) + 1 = -2

请解决,乘以 min (-)

Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click

    Dim Total, Total2 As Integer
    Dim y As Integer = 0
    Dim b As Integer = 2
    Dim getArray As String = TextBox3.Text
    Dim arrVin() As Char = getArray.ToCharArray
    'Dim getArray2 As String = TextBox2.Text
    'Dim arrVin2() As Char = getArray2.ToCharArray
    Dim multArr() As Integer = {1, 2, -1}
    'Dim m As Integer = 1
    'Total = 0
    For Each x As String In arrVin
        If IsNumeric(x) = True Then
            'For Each i As String In arrVin2
            'muliply by a bigger number each time
            'm = 2

            'add the new product to the running total
            'Total = Total + (Val(x) + Val(x))
            'Total2 = (Val(x) * Val(i)) + Total2
            'Total = Total + (m * Val(x))
            Total2 += x * multArr(y)
            y = y + 1
            TextBox1.Text = Total2 + b
        End If
    Next
End Sub

【问题讨论】:

标签: vb.net matrix-multiplication multiplication euclidean-distance vector-multiplication


【解决方案1】:

不清楚您希望用户在 TextBox1 中输入什么,您似乎希望每个数字只有一个字符,但您的示例包括具有多个字符的数字(例如 -1)。

以下代码要求用户在 TextBox1 中输入三个用空格分隔的整数。请注意,为每个数字设置一个单独的 TextBox 可能更有意义。

Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
    Dim multArray() As Integer = {-1,-1,-1}
    Dim dataStr() As String = TextBox1.Text.Split({" "c},StringSplitOptions.RemoveEmptyEntries)
    If dataStr.Length <> multArray.Length Then 
        MessageBox.Show("Please enter 3 numbers separated by spaces")
        Exit Sub 
    End If
    Dim total As Integer  
    For i As Integer = 0 To multArray.Length - 1
        Dim num As Integer 
        If Not Integer.TryParse(dataStr(i), num) Then
            MessageBox.Show("Please enter valid integers")
            Exit Sub 
        End If
    total += multArray(i) * num
    Next  
    Label4.Text = total.ToString 
End Sub

【讨论】:

    猜你喜欢
    • 2013-03-02
    • 2015-07-15
    • 2014-02-04
    • 1970-01-01
    • 2021-10-01
    • 2012-12-21
    • 1970-01-01
    相关资源
    最近更新 更多