Оператор цикла WHILE… WEND
Этот оператор позволяет сочетать свойства условного оператора и оператора цикла. С их помощью можно выполнять повторяющиеся действия с заранее неизвестным количеством повторений.
Работает он следующим образом. Сначала идет оператор while с условием, при котором цикл выполняется. Ключевое слово wend аналогично по своему назначению слову next, т. е. является последней строкой цикла. Всякий раз, доходя до wend, компьютер проверяет, выполняется ли условие, указанное оператором while. Если оно не выполняется, то программа переходит к исполнению операторов, следующих за wend. Если же выполняется, то цикл повторяется снова. Следующая программа, прежде чем допустить пользователя до продолжения работы, запрашивает у него пароль.
WHILE WORD$О"TERMINATOR" INPUT "ВВЕДИТЕ ПАРОЛЬ"; WORD$ 'WEND? "ПРАВИЛЬНО! ВЫ ДОПУЩЕНЫ К ПРОДОЛЖЕНИЮ РАБОТЫ"
Вот как эта программа будет работать после запуска:
ВВЕДИТЕ ПАРОЛЬ? MOON ВВЕДИТЕ ПАРОЛЬ? ARNOLD ВВЕДИТЕ ПАРОЛЬ? TERMINATOR ПРАВИЛЬНО! ВЫ ДОПУЩЕНЫ К ПРОДОЛЖЕНИЮ РАБОТЫ
155. При помощи оператора while…wend вычислите с – наибольший общий делитель введенных с клавиатуры натуральных чисел х и y.
156. Определите, какие из представленных ниже операторов Бейсика написаны правильно, а какие нет. В случаях неправильной записи объясните допущенные ошибки. Все операторы рассматривайте по отдельности, потому что они не являются частями одной программы.
- FOR D=R TO S STEP H
- IF W=13 THEN? "ЧЕРТОВА ДЮЖИНА"
- IF W=13 THEN X=X+1
- FOR S=2-6 4
- FOR S=4 TO 12 STEP 2
- FOR S=12 TO 4 STEP 2
- WEND S=45
Что будет выведено на экран в результате выполнения следующих программ при указанных исходных данных.
157. Программа:
INPUT W FOR R=l TO W? "WAR" NEXT R IF R=W THEN GOTO 1 ? "SUNDAY" 1: "PEACE" при w=3.
158. Программа:
W=27.6 1: IF INT(W)=W THEN GOTO 2 ? "ЧЕРТ ПОБЕРИ!!!" W=W * 2-5.2 GOTO 1 2:? "МИХАИЛ СВЕТЛОВ" A=W -1 IF A < > 50 THEN 3 GOTO 1 3: END
159. Программа:
FOR H=5 TO 21 STEP 4 ? H -3 ? H+3 NEXT H
160. Программа:
1:? "НА СТАРТ! ВНИМАНИЕ!" FOR V=5 TO 1 STEP – 1? V; "СЕКУНД" GOTO I ? "МАРШ!"