После прохождения теоретической части пришло письмо об окончании теоретической части курса, будет ли практическая часть? |
Введение в циклы while
Концепция
В этом примере рассматривается цикл While. Помните, мы говорили, что циклы For используются, когда известно, сколько раз нужно их повторять, а циклы While — когда не известно. Этот пример нарушит правило! Он покажет, как пользоваться переменными, чтобы сосчитать количество повторений цикла и подготовиться к заданию.
Сценарий
<HTML> <HEAD> </HEAD> <BODY> <SCRIPT type="text/javascript"> loops=3 num=1 while (num <= loops) { document.write("Добро ") num=num+1 } document.write("Пожаловать!") </SCRIPT> </BODY> </HTML>
Результат работы сценария
На странице выводится фраза:
Добро Добро Добро Пожаловать
Разбор сценария
<SCRIPT type="text/javascript"> loops=3 num=1 while (num <= loops) { document.write("Добро ") num=num+1 } document.write("Пожаловать!") </SCRIPT>
Еще одна коротенькая программа, мы ее быстро разберем.
Синтаксис операторов While и For похож. Разница в том, что мы задаем начальное значение индекса и шаг изменения прямо в команде For. Команда While содержит только условие.
while(num<=loops) говорит программе, что она должна повторять цикл, пока значение num меньше или равно значению переменной loops. Видите знак <=? Другими словами, программа повторит цикл трижды, один раз для num=1, один для num=2 и еще один для num=3.
Каждый раз, когда программа выполняет цикл, она пишет "Добро" и прибавляет 1 к num. Когда num доходит до 4, цикл заканчивается. 4 больше 3, поэтому программа напишет "Добро" три раза.
Завершающий штрих — команда document.write со словом "Пожаловать!".
Задание
Первое: заставьте работать программу этого урока. Потом измените ее так, чтобы пользователь получал запрос: "Сколько раз пожелать Вам Добро пожаловать?" Для ответа создайте переменную. Помните команду eval(), которая преобразует текст в число? Затем программа должна написать "Добро" столько раз, сколько ее просили.
Возможное решение
Создается переменная c именем tellme, которой присваивается результат запроса prompt. Затем эта переменная с помощью функции eval() преобразуется в число loops.
Дальше все как в сценарии урока:
<html> <head> </head> <body bgcolor="white"> <SCRIPT type="text/javascript"> tellme=prompt("Сколько раз пожелать Вам Добро пожаловать?") loops=eval(tellme) num=1 while (num <= loops) { document.write("Добро ") num=num+1 } document.write("Пожаловать!") </script> <p> THE END </body> </html>