Другие языки программирования и технологии

Часть программы включает следующий блок. Определить, чему равно Z в результате выполнения блока.

ЭТО тот самый блок: 10 А=2 20 С=1 IF A>3 GOTO 70 30 FOR I=1 TO 4 40 C=A*I Z=Z+C 60 NEXT I 70 PRINT Z 100 END Спасибо огромное всем, кто поможет, ибо ЭТО моя совсем не понимай!
Совершенно не разбираюсь в бейсике, никогда не держал в руках книгу по нему. Но знаю С++. Из этого кода я понял следующее:
Инициализируются переменные A=2 ; C=1. Далее, Идет проверка условия А>3. Раз А=2, то код будет выполняться далее, минуя инструкцию GOTO 70
Далее идет цикл для I от 1 до 4 выполнять следующие действия:
C=A*I;
Z=Z+C;
Итого по шагам . Первый шаг цикла, I=1
C=2*1;
Z=2;
Второй шаг
C=2*2;
Z=2+4;
Третий шаг
C=2*3;
Z=6+6;
Четвертый шаг
C=2*4;
Z=12+8;
И в конце печать значения переменной Z (Z=20)
Только не понятен мне следующий момент. Нет начального значения Z
Может быть в бейсике его и не должно быть. Тогда в первой инструкции цикла Z=Z+C, переменную Z я считал без значения, если же это не так, то ответ будет другим. Чем мог, тем помог. Как уже говорил, впервые вижу код на Бейсике.
Андрей Борзов
Андрей Борзов
45 384
Лучший ответ
Если это старая версия BASICа с нумерацией строк то почему 2 строки не пронумерованы?
GOTO 70
Переход на строку с номером 70 никогда не сработает - A уже 2 и не не может быть больше 3

Добавляет к Z сумму 2*I от I=1 до I=4
(но опять же не уверен что вообще работает - нумерация строк! !
В старом варианте строки проги могли быть в любом порядке, но выполнялись в порядке заданном числом в начале строки по возрастанию
С 80х такого не видел) )
Писали номера кратные 10 чтоб можно было вставить строку с помером 10х+1 в серединку
)
Вася Первойкин
Вася Первойкин
75 320