Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.01.2015, 20:56
Интересующийся
Отправить личное сообщение для Grindelvald Посмотреть профиль Найти все сообщения от Grindelvald
 
Регистрация: 24.07.2014
Сообщений: 13

Прорисовать цифры в определенном порядке.
Добрый вечер, передо мной стоит вот такая задача.
Задание.jpg

Я пытался решить эту задачу, но что-то не выходит, подскажите, что я делаю не так.

printNumbers(12, 3);

function printNumbers(cNum, cols){
	var allNum = cNum;
	var colons = cols;
	var rows = allNum / colons;
	var output = "";
	var counter = 0;
	var id = 0;

	while(counter < allNum){
		setSpace();
		console.log(counter+output);
		counter++;
		
	}

	function setSpace(){
		if(id == rows){
			output += "\t";
			id = 0;
		}
		else{
			output += "\n";
		}
	}
}

Последний раз редактировалось Grindelvald, 30.01.2015 в 21:17.
Ответить с цитированием
  #2 (permalink)  
Старый 30.01.2015, 21:09
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,491

Exception: echo is not defined
__________________
29375, 35
Ответить с цитированием
  #3 (permalink)  
Старый 30.01.2015, 21:17
Интересующийся
Отправить личное сообщение для Grindelvald Посмотреть профиль Найти все сообщения от Grindelvald
 
Регистрация: 24.07.2014
Сообщений: 13

Сообщение от Aetae Посмотреть сообщение
Exception: echo is not defined
Я сделал себе обертку на console.log чтобы было меньше писать.
Сейчас исправлю, в примере.
Ответить с цитированием
  #4 (permalink)  
Старый 30.01.2015, 21:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Grindelvald,
<script>
function printNumbers(cNum, cols) {
    var step = Math.ceil(cNum / cols);
    for (var i = 0; i < step; i++) {
        var str = i;
        for (var k = 1; k < cols; k++) {
            var n = i + step * k;
            if (n < cNum) str += ' ' + n;
        }
        document.write(str + '<br>')
    }
    document.write('<br>')
}
printNumbers(12, 3);
printNumbers(13, 3);
printNumbers(15, 4);
</script>

Последний раз редактировалось рони, 30.01.2015 в 21:43.
Ответить с цитированием
  #5 (permalink)  
Старый 30.01.2015, 21:51
Интересующийся
Отправить личное сообщение для Grindelvald Посмотреть профиль Найти все сообщения от Grindelvald
 
Регистрация: 24.07.2014
Сообщений: 13

рони,
спасибо за помощь.
Ответить с цитированием
  #6 (permalink)  
Старый 30.01.2015, 23:29
Профессор
Отправить личное сообщение для javascript_pupil Посмотреть профиль Найти все сообщения от javascript_pupil
 
Регистрация: 05.07.2009
Сообщений: 222

Позвольте полюбопытствовать: зачем в данной задаче применяется javascript? Всё тоже самое можно сделать на CSS парой строк кода.
Ответить с цитированием
  #7 (permalink)  
Старый 30.01.2015, 23:46
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

javascript_pupil,
числа тоже css напишет?
Ответить с цитированием
  #8 (permalink)  
Старый 31.01.2015, 00:28
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,491

рони, почему бы и нет)
javascript_pupil, очевидно же, что задача учебная.
__________________
29375, 35

Последний раз редактировалось Aetae, 31.01.2015 в 00:30.
Ответить с цитированием
  #9 (permalink)  
Старый 31.01.2015, 00:50
Профессор
Отправить личное сообщение для javascript_pupil Посмотреть профиль Найти все сообщения от javascript_pupil
 
Регистрация: 05.07.2009
Сообщений: 222

Сообщение от Aetae Посмотреть сообщение
задача учебная.
Поэтому у нас из трубы всё время вытекает, а не наоборот. Я конечно понимаю, что при желании гланды можно вырезать через Ж автогеном, но зачем? CSS настолько мощная штука, что в программном коде никаких намёков на форматирование вообще быть не должно (за редким исключением, которое вероятнее всего просто от недостатка моих знаний).

Ну а так то да, я всё понял. Спасибо.
Ответить с цитированием
  #10 (permalink)  
Старый 31.01.2015, 01:41
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068


только причём тут css я так и непонял ...
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
<style type="text/css">
ul{
  width: 300px;
  display: flex;
  flex-flow: column wrap;
  height: 300px;
}
  li{
      list-style-type: none;
      width: 33%;
      height: 20%;
      border: 3px #FF0033 solid;
      text-align: center;
      line-height: 4em;
  }
</style>
</head>

<body>
  <ul>
      <li>1</li>
      <li>2</li>
      <li>3</li>
      <li>4</li>
      <li>5</li>
      <li>6</li>
      <li>7</li>
      <li>8</li>
      <li>9</li>
      <li>10</li>
      <li>11</li>
      <li>12</li>
   </ul>
  </body>

</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вводить только цифры и точку tai jQuery 3 13.07.2014 04:49
Как добавлять элементы link в head в нужном порядке? khusamov Events/DOM/Window 1 27.01.2012 22:28
РЕГУЛЯРНЫЕ ВЫРАЖЕНИЯ ТОЛЬКО ЦИФРЫ Amateur Internet Explorer 3 19.06.2011 07:20
id элемента не может начинаться с цифры? Kolyaj Events/DOM/Window 4 01.12.2010 17:25
Фильтр. Допускаются только цифры. балерун Элементы интерфейса 11 11.12.2009 16:12