Показать сообщение отдельно
  #1 (permalink)  
Старый 18.12.2020, 21:48
Новичок на форуме
Отправить личное сообщение для джоо Посмотреть профиль Найти все сообщения от джоо
 
Регистрация: 18.12.2020
Сообщений: 3

вопрос по книге ELOQUENT JAVASCRIPT
всем привет

начал учить JS по книге ELOQUENT JAVASCRIPT
столкнулся с проблемой, которую не могу понять. выложу код и результат для разбора.

код:

<!doctype html>
<html>
 <head> 
 </head> 
 <body>
  <script>
    function findSolution(target){  
    function find(start,history){
           bconsole.log(start+history);
    
        if(start == target)
        return history;
        
        else if(start > target)
        return null; 
        
        else
       // console.log(start+history);
       
return find(start + 5, "(" + history + "+5)" )  ||  find(start * 3, "[" + history + "*3]");

      }
      
            return find(1,"1");
    }
    
    console.log(findSolution(24));
      </script> 
 </body>
</html>


результат:

11
6(1+5)
11((1+5)+5)
16(((1+5)+5)+5)
21((((1+5)+5)+5)+5)
26(((((1+5)+5)+5)+5)+5)
63[((((1+5)+5)+5)+5)*3]
48[(((1+5)+5)+5)*3]
33[((1+5)+5)*3]
18[(1+5)*3]
23([(1+5)*3]+5)
28(([(1+5)*3]+5)+5)
69[([(1+5)*3]+5)*3]
54[[(1+5)*3]*3]
3[1*3]
8([1*3]+5)
13(([1*3]+5)+5)
18((([1*3]+5)+5)+5)
23(((([1*3]+5)+5)+5)+5)
28((((([1*3]+5)+5)+5)+5)+5)
69[(((([1*3]+5)+5)+5)+5)*3]
54[((([1*3]+5)+5)+5)*3]
39[(([1*3]+5)+5)*3]
24[([1*3]+5)*3]
[([1*3]+5)*3]
Uncaught SyntaxError: Unexpected token '='

до этого: 48[(((1+5)+5)+5)*3] все прекрасно понятно, а вот после не могу понять.
собственно вопрос:
как переменная "start" начинает сокращаться т.е. от значения 63 становится 48. так же сокращаются символы на переменной "history" вроде же они должны были добавляться.

Последний раз редактировалось джоо, 18.12.2020 в 22:22.
Ответить с цитированием