Основы построения и функционирования интеллектуальных информационных систем. Былкин В.Д - 84 стр.

UptoLike

84
230: Rem начало процесса обучения
MsgBox" НАЧАЛО СЕАНСА ОБУЧЕНИЯ:" & vbCrLf _ & "ВЫ ДОЛЖНЫ ВВОДИТЬ
ЗНАЧЕНИЯ ПЕРЕМЕННЫХ." & vbCrLf _& "Я БУДУ УГАДЫВАТЬ ВОЗМОЖНЫЙ ИСХОД." &
vbCrLf _ & "ВЫ ЖЕ ДОЛЖНЫ БУДЕТЕ СКАЗАТЬ: ПРАВ Я ИЛИ НЕТ."
Rem Очистка массива value и установка флажков массива varflag
For I = 1 То var
valued) = 0
varflag(I) = 1
Next
Rem Очистка массивов decision, possible и установка флажков массива outflag For J = 1
To outcomes
decisions(J) - 0
possible(J) = 0
outflag(J) = 1
Next
400: Rem Определение наибольшей существенной переменной bestvar для заданного
значения правила rv
RV=0
bestvar = 1
For I = i To var
rulevaiue(I) = 0
For J = 1 To outcomes
rulevalue(I) = rulevalue(l) + Abs((mini(I) - maxi(I)) *
rules (I, J)) * varfiag(I) * outflag(J)
Next
If rulevalue(l) > RV Then bestvar - I: RV = rulevalue(I)
Next
If R= 0 Then GoTo 820: Rem наиболее существенная переменная вклада не вносит
22: tmp$ - InputBox("Переменная " & bestvar & "(" & variable$(bestvar) & ")",
"введите значение переменной")
If tmp = "" Then tmp = "a"
If tmp < "0" Or tmp > "9" Then tmp = "a"
If tmp = "a" Then
MsgBox ("Число должно быть целым и не больше 1000")
GoTo 22
    230: Rem начало процесса обучения
    MsgBox" НАЧАЛО СЕАНСА ОБУЧЕНИЯ:" & vbCrLf _ & "ВЫ ДОЛЖНЫ ВВОДИТЬ
ЗНАЧЕНИЯ ПЕРЕМЕННЫХ." & vbCrLf _& "Я БУДУ УГАДЫВАТЬ ВОЗМОЖНЫЙ ИСХОД." &
vbCrLf _ & "ВЫ ЖЕ ДОЛЖНЫ БУДЕТЕ СКАЗАТЬ: ПРАВ Я ИЛИ НЕТ."
    Rem Очистка массива value и установка флажков массива varflag
    For I = 1 То var
    valued) = 0
     varflag(I) = 1
     Next
    Rem Очистка массивов decision, possible и установка флажков массива outflag For J = 1
To outcomes
     decisions(J) - 0
    possible(J) = 0
    outflag(J) = 1
    Next
    400: Rem Определение наибольшей существенной переменной bestvar для заданного
значения правила rv
    RV=0
     bestvar = 1
    For I = i To var
     rulevaiue(I) = 0
     For J = 1 To outcomes
    rulevalue(I) = rulevalue(l) + Abs((mini(I) - maxi(I)) *
     rules (I, J)) * varfiag(I) * outflag(J)
     Next
    If rulevalue(l) > RV Then bestvar - I: RV = rulevalue(I)
     Next
    If R= 0 Then GoTo 820: Rem наиболее существенная переменная вклада не вносит
    22: tmp$ - InputBox("Переменная " & bestvar & "(" & variable$(bestvar) & ")",
"введите значение переменной")
     If tmp = "" Then tmp = "a"
     If tmp < "0" Or tmp > "9" Then tmp = "a"
     If tmp = "a" Then
    MsgBox ("Число должно быть целым и не больше 1000")
     GoTo 22

                                                  84