On...GoSub Statement; On...GoTo Statement

Π’Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² зависимости ΠΎΡ‚ значСния числового выраТСния.

Бинтаксис

On Числ_Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ GoSub ΠœΠ΅Ρ‚ΠΊΠ°1[, ΠœΠ΅Ρ‚ΠΊΠ°2[, ΠœΠ΅Ρ‚ΠΊΠ°3[,...]]]

On Числ_Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ GoTo ΠœΠ΅Ρ‚ΠΊΠ°1[, ΠœΠ΅Ρ‚ΠΊΠ°2[, ΠœΠ΅Ρ‚ΠΊΠ°3[,...]]]

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹:

Числ_Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. ЧисловоС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‚ 0 Π΄ΠΎ 255, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ опрСдСляСт, ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ Π²Π΅Ρ‚Π²ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°. Если Числ_Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎ 0, инструкция Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚. Если Числ_Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ большС 0, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΌΠ΅Ρ‚ΠΊΠ΅ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ этому Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ (1 = ΠŸΠ΅Ρ€Π²Π°Ρ_ΠΌΠ΅Ρ‚ΠΊΠ°; 2 = Вторая_ΠΌΠ΅Ρ‚ΠΊΠ°)

ΠœΠ΅Ρ‚ΠΊΠ°. ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ строка, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ структурС GoTo ΠΈΠ»ΠΈ GoSub.

Π—Π½Π°Ρ‡ΠΎΠΊ примСчания

БоглашСния GoTo ΠΈΠ»ΠΈ GoSub ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ.


ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Sub ExampleOnGosub

Dim iVar As Integer

Dim sVar As String

    iVar = 2

    sVar =""

    On iVar GoSub Sub1, Sub2

    On iVar GoTo Line1, Line2

    Exit Sub

Sub1:

    sVar =sVar & " Из ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ 1 Π²" : Return

Sub2:

    sVar =sVar & " Из ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ 2 Π²" : Return

Line1:

    sVar =sVar & " ΠœΠ΅Ρ‚ΠΊΠ° 1" : GoTo Ende

Line2:

    sVar =sVar & " ΠœΠ΅Ρ‚ΠΊΠ° 2"

Ende:

    MsgBox sVar,0,"On...GoSub"

End Sub