Bono
Мыслитель
(6640)
13 лет назад
Зачем ставить () в описании типов входных переменных. Это не правильно.
Функция возвращает значение, а из определения этой функции, в данном коде, этого не видно. Тогда уж, как подпрограмму этот метод описывать надо, если она ничего не возвращает. В конце этой функции сразу 3 значения функция "пытается" возвращать. Где Вы такое видели? Фукция возвратит все равно одно значение и это будет первый Return, а все последующие строки кода никогда не выполнятся.
Вызов функции идет далее, в обработчики события, не правильно (это где собственно ошибка) . Нужно 3 агрумента задавать.
Еще найти ошибки?
Тут каждая строка почти ошибка. Исправив эту, компилятор найдет другую.
Вы где учились VB 2005? Советую пройти курс по этому языку еще раз.
Public Class Form1
Function Center(ByVal k As Integer(), ByVal l As Integer(), ByVal n As Integer())
Dim t As Integer
t = Val(TextBox4.Text)
Dim a(,) As Single
ReDim a(0 To t - 1, 2)
Dim m() As Single
ReDim m(0 To t - 1)
Dim xc, yc, zc, x, y, z, sm As Double
Dim i, j As Integer
For i = 0 To t - 1
For j = 0 To 2
a(i, j) = Me.DataGridView1.Item(j, i).Value
Next j
Next i
For i = 0 To t - 1
m(i) = Me.DataGridView2.Item(0, i).Value
Next i
x = 0
y = 0
z = 0
sm = 0
For i = 0 To t - 1
x = x + a(i, 0) * m(i)
y = y + a(i, 1) * m(i)
z = z + a(i, 2) * m(i)
sm = sm + m(i)
Next
xc = x / sm
yc = y / sm
zc = z / sm
Return xc
Return yc
Return zc
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim k, l, n As Integer
Dim xc, yc, zc As Integer
k = Center(xc)
l = Center(yc)
n = Center(zc)
TextBox1.Text = CStr(Format(k, "0.000"))
TextBox2.Text = CStr(Format(l, "0.000"))
TextBox3.Text = CStr(Format(n, "0.000"))
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Application.Exit()
End Sub
End Class
Ошибку выдает в этом куске:
k = Center(xc)
l = Center(yc)
n = Center(zc)
Пишет, что отсутствуют аргументы для параметров k, l, n в Public Function Center(k As Integer(), l As Integer(), n As Integer())
Никак не могу понять, чего он вообще от меня хочет и как эти самые аргументы получить :-(