|
После прохождения теоретической части пришло письмо об окончании теоретической части курса, будет ли практическая часть? |
Введение в циклы 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>