"함수 fibonacci()"의 두 판 사이의 차이

잔글 (봇: 자동으로 텍스트 교체 (-source +syntaxhighlight))
6번째 줄: 6번째 줄:
==C==
==C==
[[category: C]]
[[category: C]]
<source lang='C'>
<syntaxhighlight lang='C'>
/* http://stackoverflow.com/questions/2751458/fibonacci-function-question */
/* http://stackoverflow.com/questions/2751458/fibonacci-function-question */


12번째 줄: 12번째 줄:
     return (n == 2) ? c : fibonacci(n - 1, b, c, b + c);
     return (n == 2) ? c : fibonacci(n - 1, b, c, b + c);
}
}
</source>
</syntaxhighlight>
<source lang='C'>
<syntaxhighlight lang='C'>
#include<stdio.h>
#include<stdio.h>
int fibonacci(int x) {
int fibonacci(int x) {
22번째 줄: 22번째 줄:
     printf("%d", fibonacci(10)); // 55
     printf("%d", fibonacci(10)); // 55
}
}
</source>
</syntaxhighlight>


==Java==
==Java==
<source lang='java'>
<syntaxhighlight lang='java'>
public class MyClass {
public class MyClass {
static int fib(int n) {  
static int fib(int n) {  
35번째 줄: 35번째 줄:
}
}
}
}
</source>
</syntaxhighlight>


==PHP==
==PHP==
[[category: PHP]]
[[category: PHP]]
<source lang='PHP'>
<syntaxhighlight lang='PHP'>
/* http://stackoverflow.com/questions/15600041/php-fibonacci-sequence */
/* http://stackoverflow.com/questions/15600041/php-fibonacci-sequence */


45번째 줄: 45번째 줄:
     return $c < $n ? fibonacci($n, $c + 1, $n1, $n1 + $n2) : $n1 + $n2;
     return $c < $n ? fibonacci($n, $c + 1, $n1, $n1 + $n2) : $n1 + $n2;
}
}
</source>
</syntaxhighlight>
<source lang='PHP'>
<syntaxhighlight lang='PHP'>
function fibonacci($n) {
function fibonacci($n) {
     return $n < 3 ? 1 : fibonacci($n - 1) + fibonacci($n - 2);
     return $n < 3 ? 1 : fibonacci($n - 1) + fibonacci($n - 2);
}
}
</source>
</syntaxhighlight>


==Python==
==Python==
[[category: Python]]
[[category: Python]]
<source lang='Python'>
<syntaxhighlight lang='Python'>
#! python3
#! python3
def Fibonacci(n):
def Fibonacci(n):
62번째 줄: 62번째 줄:
print( Fibonacci(10) )
print( Fibonacci(10) )
# 55
# 55
</source>
</syntaxhighlight>


==같이 보기==
==같이 보기==
*[[피보나치 수열]]
*[[피보나치 수열]]
*[[재귀함수]]
*[[재귀함수]]

2020년 11월 2일 (월) 02:32 판

함수 fibonacci()
함수 fib()
함수 피보나치

1 C

/* http://stackoverflow.com/questions/2751458/fibonacci-function-question */

unsigned fibonacci(unsigned n, unsigned a, unsigned b, unsigned c) {
    return (n == 2) ? c : fibonacci(n - 1, b, c, b + c);
}
#include<stdio.h>
int fibonacci(int x) {
    if (x < 2) return x;
    return fibonacci(x-1) + fibonacci(x-2);
}
int main() {
    printf("%d", fibonacci(10)); // 55
}

2 Java

public class MyClass {
	static int fib(int n) { 
		if ( n < 2 ) return n; 
		return fib(n-1) + fib(n-2); 
	}
	public static void main(String args[]) {
		System.out.println( fib(10) ); // 55
	}
}

3 PHP

/* http://stackoverflow.com/questions/15600041/php-fibonacci-sequence */

function fibonacci($n, $c = 2, $n2 = 0, $n1 = 1) {
    return $c < $n ? fibonacci($n, $c + 1, $n1, $n1 + $n2) : $n1 + $n2;
}
function fibonacci($n) {
    return $n < 3 ? 1 : fibonacci($n - 1) + fibonacci($n - 2);
}

4 Python

#! python3
def Fibonacci(n):
    if n < 2: return n
    else: return Fibonacci(n - 1) + Fibonacci(n - 2)

print( Fibonacci(10) )
# 55

5 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}