Циклические операторы языка javaScript - While




ЛАБОРАТОРНАЯ РАБОТА № 3

Циклические операторы языка JavaScript - For

for(начальное значение счетчика итераций; условие;приращение счетчика) { //..блок операторов.. }

Важно: Цикл в Javascript for используется, когда заранее известно, сколько раз должны повториться циклические действия

В качестве начального значения счетчика итераций используется выражение присваивания: например, i=0 - счетчик цикла начинается с нуля.

В качестве приращения счетчика указывается шаг, с которым должен увеличиваться счетчик: например, i++ указывает на то, что каждая итерация цикла будет сопровождаться его увеличением на 1.

Условие цикла - это и есть конечное значение счетчика: например, i<10 - счетчик, достигнув значения 10, останавливает цикл.

Рассмотрим пример использования цикла for в javascript:

  for (var i=0;i<10;i++) { document.write(i+"<br>"); }

В примере на экран выводятся значения счетчика цикла, так как приращение счетчика i++, соответственно на экране будут появляться 0 1 2 3... 9, причем каждая цифра - с новой строки (тег br).

Задание 1. Дано число N и набор из N целых чисел. Вывести в том же порядке все четные числа из данного набора и количество K таких чисел.


Задание 2. Даночисло N (N>1) и набор из N вещественных чисел. Набор называется пилообразным, если каждый его внутренний элемент либо больше, либо меньше обоих своих соседей (то есть является «зубцом»). Если данный набор является пилообразным, то вывести 0; в противном случае вывести номер первого элемента, не являющегося зубцом.


Задание 3. Даны целые числа K, N и набор из N вещественных чисел: А1, А2, …, АN. Вывести K-е степени чисел из данного набора:

1)K, (А2)K, …,(АN)K.

ОПЕРАТОРЫВЫХОДА ИЗ ЦИКЛА BREAK И CONTINUE В JAVASCRIPT. ОПЕРАТОР EXIT

Оператор break прерывает выполнение всего тела цикла, т.е. осуществляет выход из цикла в javaScript.

В то время как оператор continue прерывает выполнение текущей итерации цикла, но продолжая при этом выполнение цикла со следующий итерации.

Рассмотрим работу операторов break и continue на примере:

  for (var i=0;i<10;i++) { if (i==4) continue; document.write(i+"<br>"); if (i==8) break; }

В третьей строке примера стоит условие, из-за которого цифра 4 не будет выводиться на экран. В строке №5 осуществляется выход из цикла, но при этом цифра 8 будет выведена на экран, так как оператор вывода стоит до условия (в 4-й строке). Т.е. на экране будет: 0 1 2 3 5 6 7 8 - каждая цифра с новой строки.

Оператор Exit

В языке javasctipt предусмотрен оператор выхода из программного кода - оператор exit.
Чаще всего оператор используется для исключения ошибки ввода пользователя. Рассмотрим пример:

Пример: запрашивать пользователя ввести число. Если введено не число, то выводить сообщение "Необходимо число!" и останавливать работу программы


Для выполнения пригодятся функции преобразования типа:

  var number=prompt("Введите число"); number=parseInt(number); // возвратит NaN - не число x=isNaN(number); // возвратит true, т.к. не числовое if (x){ alert("Необходимо число!"); exit; // выход из программы } alert("Введите второе число"); // при вводе не числа оператор не выполнится ...

 

Интересная работа с циклом for возможна при использовании одновременно двух счетчиков в цикле. Рассмотрим пример:

Пример: При помощи скрипта распечатать следующие пары переменная - значение в три строки:

i=0 j=2; i=1 j=3; i=2 j=4

  for(i=0,j=2;i<10,j<5;i++, j++) { document.write("<br>i=", i, "j=",j); }

Перед выполнением следующего задания рассмотрим пример динамического построения html-страницы при помощи javascript.

Пример: необходимо динамически генерировать маркированные и нумерованные списки на веб-странице в зависимости от введенных пользователем данных: запрашивать у пользователя ввести вид списка (нумерованный или маркированный), а затем количество пунктов списка. В зависимости от ответа выводить на экран теги либо маркированного либо нумерованного списка с необходимым количеством пунктов. Если введен несуществующий тип списка, то выдавать сообщение "Введите правильный тип!" и осуществлять выход из программы (оператор exit)

теги маркированного списка:

<ol> <li></li> <li></li> <li></li> </ol>

теги нумерованного списка:

<ul> <li></li> <li></li> <li></li> </ul>

 

В примере для вывода пунктов списка необходимо использовать цикл for. Также понадобятся функции преобразования типов.

Показать результат:

Задание 4. Нарисовать шахматную доску 9х9, используя циклы javascript for. "Рисовать" доску следует тегами html для таблицы:

<table border="1"> <tr> <!-- строка --> <td></td><td></td> <!-- две ячейки в строке --> </tr> </table>

Дополнительно:

1. В ячейки таблицы вывести таблицу умножения, используя счетчики цикла.

2. Первый ряд и первую колонку вывести с красным фоном (атрибут ячейки таблицы bgcolor).

 

Циклические операторы языка javaScript - While

Синтаксис оператора while:

while (условие) { //..блок операторов.. };

Пример: Выводить в диалоговое окно степени двойки до 1000

var a = 1;while (a<1000){ a*=2; alert(a);}

На примере также посмотрим как работают операторы break и continue в цикле while:

var a = 1; while (a<1000){ a*=2; if (a==64) continue; if (a==256) break; alert(a); }

Здесь степени двойки будут выводить до 128 включительно, причем пропущено будет 64. Т.е. в диалоговых окнах мы увидим: 2 4 8 16 32 128

Задание 5. Какие значения выведет следующий фрагмент кода?

  var counter = 5; while (counter < 10) { counter++; document.write("Counter " + counter); break; document.write("Эта строка не выполнится."); }

 

Задание 6. Выполнить возведение х в степень y, используя цикл while.

Задание 7. Дано целое число N (> 1). Вывести наибольшее из целых чисел K, для которых сумма 1 + 2 +::: + K будет меньше или равна N, и саму эту сумму.

Задание 8. Дано целое число N (> 0). Используя операции деления нацело и взятия остатка от деления, вывести все его цифры, начиная с самой правой (разряда единиц).

Задание 9. Дано целое число N (> 1). Последовательность чисел Фибоначчи FK определяется следующим образом:

F 1 = 1, F 2 = 1, FK = FK- 2 + FK- 1, K = 3, 4,

Проверить, является ли число N числом Фибоначчи. Если является, то вывести TRUE, если нет — вывести FALSE.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-10-17 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: