Правильное использование подпрограммы в Commodore Basic 4.0?
У меня есть подпрограмма, которая заполняет массив с "."
В моей основной программе я пытаюсь вызвать эту подпрограмму, а затем распечатать массив; однако, это, кажется, не работает. Я думаю, что я неправильно вызываю подпрограмму?
Это мой код:
подпрограмма:
1070 dim a$(x,x)
1080 for aa = 0 to x
1090 for bb = 0 to x
2000 a$(x,x)="."
2010 next
2020 next
основной код:
10 input "please enter a number"; x
20 gosub 1070
30 for i = 1 to x
40 for j = 1 to x
50 print a$(i,j);
60 next
70 print
80 next
Ничего не происходит при запуске; но когда я запускаю все это в одной программе (без вызова gosub), это работает?
Любая помощь?
1 ответ
Решение
В строке № 2000, я полагаю, вы хотите a$(aa,bb)="."
иначе вы просто забиваете то же место с инициализацией.
Кроме того, и, вероятно, более важным для вашего вопроса, каждый GOSUB
нужен RETURN
чтобы вернуться к основной линии исполнения. В вашем случае это, вероятно, линия 2030.