Pascal:
Procedure Forw(InSignals, OutSignals, Parameters: PRealArray);
Procedure Back(InSignals, OutSignals, Parameters, Back.InSignals, Back.OutSignals, Back.Parameters: PRealArray);
C
void Forw(PRealArray InSignals, PRealArray OutSignals, PRealArray Parameters)
void Back(PRealArray InSignals, PRealArray OutSignals, PRealArray Parameters, PRealArray Back.InSignals, PRealArray Back.OutSignals, PRealArray Back.Parameters)
Π ΠΌΠ΅ΡΠΎΠ΄Π΅ Forw Π² Π»Π΅Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π° Π»ΡΠ±ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π²ΡΡ ΠΎΠ΄Π½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² (OutSignals). Π Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΈ, ΡΡΠΎΡΡΠ΅ΠΌ Π² ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π²Ρ ΠΎΠ΄Π½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² (InSignals) ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² (Parameters).
Π ΠΌΠ΅ΡΠΎΠ΄Π΅ Back Π² Π»Π΅Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π° Π»ΡΠ±ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π²Ρ ΠΎΠ΄Π½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ (Back.InSignals) ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² (Back.Parameters). Π Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΈ, ΡΡΠΎΡΡΠ΅ΠΌ Π² ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ, ΠΌΠΎΠ³ΡΡ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π²Ρ ΠΎΠ΄Π½ΡΡ (InSignals) ΠΈ Π²ΡΡ ΠΎΠ΄Π½ΡΡ (OutSignals) ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² (Parameters). ΠΡΠΌΠ΅ΡΠΈΠΌ Π²Π°ΠΆΠ½ΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠΎΠΏΡΠ°Π²ΠΎΠΊ ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, ΠΏΡΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΈ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½ΡΠΆΠ½ΠΎ Π½Π΅ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Back.Parameters, Π° Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ. ΠΡΠΈ ΡΡΠΎΠΌ Π² ΡΠ΅Π»Π΅ ΠΌΠ΅ΡΠΎΠ΄Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Back.Parameters Π½Π΅ ΠΌΠΎΠ³ΡΡ ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ. ΠΡΠ° ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠΎΠΏΡΠ°Π²ΠΎΠΊ ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ ΡΠ΅ΡΡ.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ End Π·Π° ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°.
ΠΡΠΈΠΌΠ΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²NetBibl Elements; {ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²}
Element Synaps {ΠΠ±ΡΡΠ½ΡΠΉ ΡΠΈΠ½Π°ΠΏΡ}
InSignals 1 {ΠΠ΄ΠΈΠ½ Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
OutSignals 1 {ΠΠ΄ΠΈΠ½ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
Parameters 1 {ΠΠ΄ΠΈΠ½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ β Π²Π΅Ρ ΡΠ²ΡΠ·ΠΈ}
Forw {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Begin {ΠΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π» β ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ}
OutSignals[1] = InSignals[1] * Parameters[1]
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Back {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Begin {ΠΠΎΠΏΡΠ°Π²ΠΊΠ° ΠΊ Π²Ρ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΈΠ³Π½Π°Π»Ρ β ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ ΠΊ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΈΠ³Π½Π°Π»Ρ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ}
Back.InSignals[1]= Back.OutSignals[1] * Parameters[1];
{ΠΠΎΠΏΡΠ°Π²ΠΊΠ° ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ β ΡΡΠΌΠΌΠ° ΡΠ°Π½Π΅Π΅ Π²ΡΡΠΈΡΠ»Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ ΠΊ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌΡ ΡΠΈΠ³Π½Π°Π»Ρ Π½Π° Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
Back.Parameters[1]= Back.Parameters[1] + Back.OutSignals[1] * InSignals[1]
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
End Synaps {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΈΠ½Π°ΠΏΡΠ°}
Element Branch(N : Long) {Π’ΠΎΡΠΊΠ° Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ Π½Π° N Π²ΡΡ ΠΎΠ΄Π½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²}
InSignals 1 {ΠΠ΄ΠΈΠ½ Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
OutSignals N {N Π²ΡΡ ΠΎΠ΄Π½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²}
Forw {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Var Long I; {I β Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ β ΠΈΠ½Π΄Π΅ΠΊΡ}
Begin
For I=1 To N Do {ΠΠ° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· N Π²ΡΡ ΠΎΠ΄Π½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΠΌ}
OutSignals[I] = InSignals[1] {Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Back {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Var {ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ }
Long I; {I β Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ β ΠΈΠ½Π΄Π΅ΠΊΡ}
Real R; {R β Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ β Π΄Π»Ρ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½ΠΈΡ ΡΡΠΌΠΌΡ}
Begin
R = 0;
For I=1 To N Do {ΠΠΎΠΏΡΠ°Π²ΠΊΠ° ΠΊΠΎ Π²Ρ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΈΠ³Π½Π°Π»Ρ ΡΠ°Π²Π½Π° ΡΡΠΌΠΌΠ΅}
R = R + Back.OutSignals[I]; {ΠΏΠΎΠΏΡΠ°Π²ΠΎΠΊ Π²ΡΡ ΠΎΠ΄Π½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²}
Back.InSignals[1] = R
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
End Branch {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΎΡΠΊΠΈ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ}
Element Sum(N Long) {ΠΡΠΎΡΡΠΎΠΉ ΡΡΠΌΠΌΠ°ΡΠΎΡ Π½Π° N Π²Ρ ΠΎΠ΄ΠΎΠ²}
InSignals N {N Π²Ρ ΠΎΠ΄Π½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²}
OutSignals 1 {ΠΠ΄ΠΈΠ½ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
Forw {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Var {ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ }
Long I; {I β Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ β ΠΈΠ½Π΄Π΅ΠΊΡ}
Real R; {R β Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ β Π΄Π»Ρ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½ΠΈΡ ΡΡΠΌΠΌΡ}
Begin
R = 0;
For I=1 To N Do {ΠΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π» ΡΠ°Π²Π΅Π½ ΡΡΠΌΠΌΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΡ }
R = R + InSignals[I];
OutSignals[1] = R
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Back {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Var Long I; {I β Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ β ΠΈΠ½Π΄Π΅ΠΊΡ}
Begin
For I=1 To N Do {ΠΠΎΠΏΡΠ°Π²ΠΊΠ° ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π²Ρ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΈΠ³Π½Π°Π»Ρ ΡΠ°Π²Π½Π°}
Back.InSignals[I] = Back.OutSignals[1] {ΠΏΠΎΠΏΡΠ°Π²ΠΊΠ΅ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π°}
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
End Sum {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΡΡΠΌΠΌΠ°ΡΠΎΡΠ°}
Element Mul {Π£ΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π»Ρ}
InSignals 2 {ΠΠ²Π° Π²Ρ ΠΎΠ΄Π½ΡΡ ΡΠΈΠ³Π½Π°Π»Π°}
OutSignals 1 {ΠΠ΄ΠΈΠ½ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
Forw {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Begin
OutSignals[1] =InSignals[1] * InSignals[2] {ΠΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π» ΡΠ°Π²Π΅Π½ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π²Ρ ΠΎΠ΄Π½ΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠ²}
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Back {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Begin
{ΠΠΎΠΏΡΠ°Π²ΠΊΠ° ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π²Ρ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΈΠ³Π½Π°Π»Ρ ΡΠ°Π²Π½Π° ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π° Π½Π° Π΄ΡΡΠ³ΠΎΠΉ Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
Back.InSignals[1] = Back.OutSignals[1] * InSignals[2];
Back.InSignals[2] = Back.OutSignals[1] * InSignals[1]
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
End Mul {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π»Ρ}
Element S_Train {ΠΠ±ΡΡΠ°Π΅ΠΌΡΠΉ Π³ΠΈΠΏΠ΅ΡΠ±ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΈΠ³ΠΌΠΎΠΈΠ΄Π½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ}
InSignals 1 {ΠΠ΄ΠΈΠ½ Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
OutSignals 1 {ΠΠ΄ΠΈΠ½ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
Parameters 1 {ΠΠ΄ΠΈΠ½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ β Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°}
Forw {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Begin
{ΠΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π» ΡΠ°Π²Π΅Π½ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π° ΠΊ ΡΡΠΌΠΌΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΈ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π°}
OutSignals[1] =InSignals[1] / (Parameters[1] +Abs(InSignals[1])
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Back {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Var Real R; {R β Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅}
Begin
{R β Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½Π°Ρ Π²Π΅Π»ΠΈΡΠΈΠ½Π° Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠΎΠΏΡΠ°Π²ΠΎΠΊ, ΡΠ°Π²Π½Π°Ρ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π° ΠΊ ΠΊΠ²Π°Π΄ΡΠ°ΡΡ ΡΡΠΌΠΌΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΈ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π°}
R= Back.OutSignals[1] / Sqr(Parameters[1] +Abs(InSignals[1]);
{ΠΠΎΠΏΡΠ°Π²ΠΊΠ° ΠΊ Π²Ρ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΈΠ³Π½Π°Π»Ρ ΡΠ°Π²Π½Π° ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ}
Back.InSignals[1] = R *Parameters[1];
{ΠΠΎΠΏΡΠ°Π²ΠΊΠ° ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΡΠ°Π²Π½Π° ΡΡΠΌΠΌΠ΅ ΡΠ°Π½Π΅Π΅ Π²ΡΡΠΈΡΠ»Π΅Π½Π½ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ ΠΈ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ Π½Π° Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
Back.Parameters[1] = Back.Parameters[1] + R * InSignals[1]
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
End S_Train {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΡΠ°Π΅ΠΌΠΎΠ³ΠΎ Π³ΠΈΠΏΠ΅ΡΠ±ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΈΠ³ΠΌΠΎΠΈΠ΄Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°}
Element S_NotTrain(Char : Real) {ΠΠ΅ ΠΎΠ±ΡΡΠ°Π΅ΠΌΡΠΉ Π³ΠΈΠΏΠ΅ΡΠ±ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΈΠ³ΠΌΠΎΠΈΠ΄Π½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Char β Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°}
InSignals 1 {ΠΠ΄ΠΈΠ½ Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
OutSignals 1 {ΠΠ΄ΠΈΠ½ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π»}
Forw {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Begin
{ΠΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΠ³Π½Π°Π» ΡΠ°Π²Π΅Π½ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π° ΠΊ ΡΡΠΌΠΌΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΈ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π°}
OutSignals[1] =InSignals[1] / (Char +Abs(InSignals[1])
End {ΠΠΎΠ½Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Back {ΠΠ°ΡΠ°Π»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ}
Begin
{ΠΠΎΠΏΡΠ°Π²ΠΊΠ° ΠΊ Π²Ρ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΈΠ³Π½Π°Π»Ρ ΡΠ°Π²Π½Π° ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π° Π½Π° Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΡ ΠΊ ΠΊΠ²Π°Π΄ΡΠ°ΡΡ ΡΡΠΌΠΌΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΈ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎΠΉ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠ³Π½Π°Π»Π°}