Никита Сальников,
есть числа то и ответ должен быть числа
Неверно. Условием может быть число, строка, или и то и другое (объект), а в зависимости от выполнения условия операция может производится так же над чем угодно (числом, строкой и т.д.). Грубо говоря "если один, то допишу в конец строки 'a', если два, то допишу в конец строки 'b' ". Может наоборот: "если 'one' прибавлю к результату 2, если 'two', прибавлю 4" и т.д.
Всю эту задачу можно было бы переписать как то так
var x = 0;
var result = "";
while (x < 30) {
if(x == 0 || x == 8 || x == 15) {
result += "a";
}
if(x == 1 || x == 7) {
result += " ";
}
if(x == 2 || x == 9 || x == 10 || x == 16) {
result += "n";
}
... // и т.д.
x++;
}
где x просто порядковый номер буквы в строке. Смысл тот же, найти зависимость расположения частей строки в целой строке.
Таких зависимостей, в данном случае, можно найти сколь угодно. Автор книги предложил свой вариант, просто запутал условия, чтобы интересней было искать ответ.