Консультация № 52310
16.08.2006, 11:43
0.00 руб.
0 3 3
Добрее время суток уважаемые эксперты,
помогите пожалуйста решить такую проблему
имеем цикл который производит вывод на экран значения переменной "i" в одну строку

Пример вывода:
i=0, i=1, i=2, i=3, i=4, i=5, i=6, и т.д.

а хотелось бы ввести переменную n=5 например
и что бы цикл выводился не одной строкой а несколькими что бы в каждой строке было "n" значений

Пример вывода:
i=0, i=1, i=2, i=3, i=4, i=5,
i=6, i=7, i=8, i=9, i=10, i=11,
i=12, и т.д.

Заранее большое спасибо за содействие!
Скрипт прилагаю.

Приложение:
<html><head></head><body><center><SCRIPT LANGUAGE="JavaScript">var n=5;var i=0;for (i=0; i<=20; i++){document.write(" i="+i+", ");if (i >= n){document.write("ентер
<p>");continue;}}</script></center></body></html>

Обсуждение

Неизвестный
16.08.2006, 12:01
общий
это ответ
Здравствуйте, AxL!
Разбиение по строкам делается очень легко - с помощью дополнительной переменной. Либо можно проверять индекс цикла, производя деление на количество чисел в одном ряду (т.е. 5). Код в приложении. Удачи!

Приложение:
<html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1251"></head><body><center><SCRIPT LANGUAGE="JavaScript">var start = 1;var end = 20;var step = 5;var p = 0;for (i = start; i <= end; i++){document.write("i = "+i+" , ");p = p + 1;if (p >= step){p = 0;document.write("
");}}</script></center></body></html>
Неизвестный
16.08.2006, 13:37
общий
это ответ
Здравствуйте, AxL!
Смотрите приложение. Через каждые N итераций цикла вставляется разрыв строки.

Приложение:
<SCRIPT LANGUAGE="JavaScript">var n=5;var i=0;for (i=0; i<=20; i++){document.write(" i="+i+", ");if (i % n == 0) document.write("ентер
");}</script>
Неизвестный
16.08.2006, 14:39
общий
это ответ
Здравствуйте, AxL!
В приложении код который выполняет вашу задачу. Можно было бы еще прорефакторить код, просто времени нет - работа.
Удачи!

Приложение:
<html><head></head><body><center><SCRIPT LANGUAGE="JavaScript">var columns = 5;var rows = 20;var str = "";var i = 0;while (i<rows){ for (j=0;j<columns;j++){ /* Если последний элемент то не ставим запятую*/ if (i == rows - 1){ str = str + "i="+i; } else { str = str + "i="+i+","; } i = i+1; } document.write(str+"<br/>"); str = "";}</script></center></body></html>
Форма ответа