Оператор цикла WHILE... WEND
Оператор цикла 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
? "МАРШ!"
161. Программа:
DATA 10, 100, 1000
READ А, В
? В - А
READ С
RESTORE
READ X, Y, Z
IF C=Y THEN 1
IF B=Y THEN 2
GOTO 3
1: ? "плюс"
GOTO 3
2: ? "МИНУС"
3: END
162. Программа:
X=13
Y=17
Z=2
2: IF Z >=5 THEN 1
? X, Y, Z
X=X - 1
Y=X+Y
Z=Z+1
GOTO 2
1: END
163. Программа:
FOR R=l TO 4 9 STEP 6
W=W+R*2 NEXT R ? R
164. Программа:
FOR K=7 TO 28 STEP 7? "УРА!!!" NEXT К ? "ВПЕРЕД!!!"
165. Программа:
x=i1: ? X
Х=Х+2
IF X <= 13 THEN 1
END
166. Программа:
FOR B=l TO 4D=B*2
? D, В NEXT В
167. Программа:
FOR C=2 TO 11 STEP 2? C, C"2 NEXT С ? "ВЗРЫВ!"
168. Программа:
X=13 Y=52 Z=99 FOR U=100 TO 1 STEP -2IF U=X THEN ? U
IF U=Y THEN ? U
IF U=Z THEN ? О NEXT U
169. Программа:
WHILE S < 10? S WEND
170. Программа:
WHILE D$ О "ИНФОРМАТИКА"
READ D$, В
? "ПРЕДМЕТ"; D$
? В WEND DATA МАТЕМАТИКА, 4, ФИЗИКА, З, ИНФОРМАТИКА, 5, ХИМИЯ, 3