میشه بگید تابع من چه مشکلی داره؟
كد:
Dim Valid As Boolean
Dim c As Integer = 0
Do
Valid = True
c += 1
For i As Integer = 0 To ListBox1.Items.Count - 1
Dim s() As String = Microsoft.VisualBasic.Split(ListBox1.Items(i), " ")
Dim y As Single = (W(1) * CInt(s(0)) + W(2) * CInt(s(1)) + W(3) * 1)
W(1) += Alpha * CSng(CInt(s(2)) - y) * CSng(CInt(s(0)))
W(2) += Alpha * CSng(CInt(s(2)) - y) * CSng(CInt(s(1)))
W(3) += Alpha * CSng(CInt(s(2)) - y) * 1.0
Next
For i As Integer = 0 To ListBox1.Items.Count - 1
Dim s() As String = Microsoft.VisualBasic.Split(ListBox1.Items(i), " ")
Dim y As Single = (W(1) * CInt(s(0)) + W(2) * CInt(s(1)) + W(3) * 1)
If CInt(s(2)) = 1 Then
If y < 1 Then
Valid = False
End If
Else
If y >= 1 Then
Valid = False
End If
End If
Next
Loop Until ((Valid) Or (c > 100000))
If c > 10000 Then
MsgBox("I Can't Learn!", MsgBoxStyle.Exclamation)
End If
که در کد، هر کدوم اینا معنیشون اینه:
كد:
s(0) = voroodie avval
s(1) = voroodie dovom
s(2) = khoroojie matloob
این قراره یک AND یا OR ساده رو یاد بگیره. ولی یاد نمیگیره.
برنامه ی کامل رو هم پیوست کردم. (در برنامه Hebb و پرسپترون یاد میگیرن، ولی آدالاین نه...)
من نفهمیدم مشکلش چیه...
سپاس!