정보 나눔

02.순환-(2) 본문

프로그래밍(programming)

02.순환-(2)

정보나눔중 2019. 5. 24. 01:39
반응형

순환(=재귀) 사용

 

 

-팩토리얼(!)

 
1
2
3
4
5
6
7
8
9
var factorial = function(number){
  var result = 1;
  for (var i = 1 ; i <= number ; i++){
    result = result * i ;
  }
  return result;
}
 
console.log(factorial(4)); //24

 

 

-피보나치 수열

1
2
3
4
5
6
7
8
var fibonacci = function(number){
    if(number < 2){
        return number;
    }else{
        return fibonacci(number-1+ fibonacci(number-2);
    }
}
console.log(fibonacci(7));//13

 

 

-하노이탑

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var hanoiTop = function(n,a,b,c){
    if(n == 1){
        document.write("원판1을"+a+"에서"+c+"로 이동<br>")
    }else{
        hanoiTop(n-1,a,c,b);
        document.write("원판"+n+"을 "+a+"에서 "+c+"로 이동<br>");
        hanoiTop(n-1,b,a,c);
    }
}
console.log(hanoiTop(3,1,2,3));
//원판1을1에서3로 이동
//원판2을 1에서 2로 이동
//원판1을3에서2로 이동
//원판3을 1에서 3로 이동
//원판1을2에서1로 이동
//원판2을 2에서 3로 이동
//원판1을1에서3로 이동

-

반응형

'프로그래밍(programming)' 카테고리의 다른 글

03.검색 알고리즘-(2)  (0) 2019.06.03
03.배열-(1)  (0) 2019.05.24
02.순환-(1)  (0) 2019.05.17
01.자료 구조와 알고리즘-(3)  (0) 2019.05.14
Select 안에 Select 넣기  (0) 2019.05.12
Comments