π¬ Π§ΡΠΎ ΠΈΠ· ΡΠ΅Π±Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΈΠΏΠ° Π² Go?
ΠΠ΅ΡΠΎΠ΄ ΡΠΈΠΏΠ° (ΠΌΠ΅ΡΠΎΠ΄Ρ Π½Π° ΡΠΈΠΏΠ°Ρ ) β ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π° ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ . ΠΠ΅ΡΠΎΠ΄Ρ ΡΠΈΠΏΠΎΠ² Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΠ²Π»ΡΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π΄ΡΡΠ³ΠΎΠΌΡ.
Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΠΈΠΏΠ° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π² Go Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΠΠ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΈΠΏΠ° Π½ΡΠΆΠ½Ρ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΈΜΡΠΎΠ².
π Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΠΈΠΏΠ°
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ ΠΌΡ Ρ ΠΎΡΠΈΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΡ 2Γ2. Π‘Π°ΠΌΡΠΌ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΠΈΠΏΠ° Π΄Π»Ρ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²ΡΡΠΈΡΠ°Π½ΠΈΡ ΠΈ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΡ 2Γ2 Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ .
ΠΠΌΠ΅Ρ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
ΠΡ Π½Π΅ ΠΎΠ±ΡΠ·Π°Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΈΠΏΠ°, Π΅ΡΠ»ΠΈ Π½Π΅ Ρ ΠΎΡΠΈΠΌ ΡΡΠΎΠ³ΠΎ. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠ±ΠΎΠΈΜ ΠΌΠ΅ΡΠΎΠ΄ ΡΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°Π½ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ,
ΠΠ΅ΡΠΎΠ΄ ΡΠΈΠΏΠ° (ΠΌΠ΅ΡΠΎΠ΄Ρ Π½Π° ΡΠΈΠΏΠ°Ρ ) β ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π° ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ . ΠΠ΅ΡΠΎΠ΄Ρ ΡΠΈΠΏΠΎΠ² Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΠ²Π»ΡΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π΄ΡΡΠ³ΠΎΠΌΡ.
Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΠΈΠΏΠ° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π² Go Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΠΠ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΈΠΏΠ° Π½ΡΠΆΠ½Ρ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΈΜΡΠΎΠ².
π Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΠΈΠΏΠ°
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ ΠΌΡ Ρ ΠΎΡΠΈΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΡ 2Γ2. Π‘Π°ΠΌΡΠΌ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΠΈΠΏΠ° Π΄Π»Ρ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²ΡΡΠΈΡΠ°Π½ΠΈΡ ΠΈ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΡ 2Γ2 Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ .
ΠΠΌΠ΅Ρ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
ar2x2
, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΠΌΠ΅ΡΠΎΠ΄ ΡΠΈΠΏΠ° functionName
ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:func (a ar2x2) FunctionName(parameters) <return values> {
...
}
(a ar2x2)
β ΡΠΎ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ functionName()
ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΡΠΈΠΏΠ°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ Π΅Π΅ Ρ ΡΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½ΡΡ
ar2x2
. ΠΠΈΠΊΠ°ΠΊΠΎΠΈΜ Π΄ΡΡΠ³ΠΎΠΈΜ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ functionName()
Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ
ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
ΠΈΠ»ΠΈ Π² Π²ΠΈΠ΄Π΅ ΠΎΠ±ΡΡΠ½ΠΎΠΈΜ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡΠ»ΠΈ Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ar2x2
Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ varAr
, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΡΠ·Π²Π°ΡΡ functionName()
ΠΊΠ°ΠΊ varAr.functionName(...)
, ΡΡΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π²ΡΠ±ΠΎΡ ΠΏΠΎΠ»Ρ ΡΡΡΡΠΊΡΡΡΡ.ΠΡ Π½Π΅ ΠΎΠ±ΡΠ·Π°Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΈΠΏΠ°, Π΅ΡΠ»ΠΈ Π½Π΅ Ρ ΠΎΡΠΈΠΌ ΡΡΠΎΠ³ΠΎ. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠ±ΠΎΠΈΜ ΠΌΠ΅ΡΠΎΠ΄ ΡΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°Π½ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ,
functionName()
ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΊ:func FunctionName(a ar2x2, parameters...) <return values> {
...
}