공지: 기존 사이트는 old.codingdojang.com에서 확인할 수 있으며, 2026년 8월 3일 종료됩니다.
이 페이지는 코딩도장 데이터의 읽기 전용 정적 보관본입니다.

피보나치 수열 구하기

피보나치 수열이란, 첫 번째 항의 값이 0이고 두 번째 항의 값이 1일 때, 이후의 항들은 이전의 두 항을 더한 값으로 이루어지는 수열을 말한다.

예) 0, 1, 1, 2, 3, 5, 8, 13

인풋을 정수 n으로 받았을때, n 이하까지의 피보나치 수열을 출력하는 프로그램을 작성하세요

2014/10/17 14:57

Choi SeHyun

user_in = int(input()) x = [0,1] y = [] if user_in < 2: print(x[0]) elif user_in <3: print(x[0], x[1]) else: for i in range(2,user_in): y = x[-1] + x[-2] x.append(y) print(x) - skyrunner, 2020/03/11 16:06
+5 여기는 풀이를 쓰는 공간이 아닙니다. 학습자들을 위해 지워주세요. 스스로 작성해보는게 더 중요합니다. - yhpdoit, 2020/04/10 10:55

489개의 풀이가 있습니다.

n=13
a=0;b=1
print('0', end='')
while b<=n:
    print(', %d'%b, end='')
    a,b = b,a+b

2014/10/21 08:44

안 준환

n=1000000000

result=[0,1]

while 1:
    temp = result[-1]+result[-2]
    if temp < n: 
        result.append(temp)
    else:
        break

print(result)

2014/10/22 23:59

Lee SeungChan

array = [0,1]

def fibonach(n):
    i=0
    while array[i]+array[i+1] <= n:
        array.append(array[i]+array[i+1])
        i+=1

2014/10/28 15:26

원 동건

    public static void main(String args[]){
        int count = 8;
        for(int i=0; i<count; i++){
            System.out.print(fibonacci(i) + " ");
        }
    }

    public static int fibonacci(int n){
        if(n <= 1){
            return n;
        }else{
            return fibonacci(n-2) + fibonacci(n-1);
        }
    }

2014/11/15 12:05

전 수현

n = int(input())
pibonacci = [0, 1]
while pibonacci[-1] <= n:
    pibonacci.append(pibonacci[-1] + pibonacci[-2])
del pibonacci[-1]
print(pibonacci)

2020/03/05 13:56

n=int(input("정수를 입력하세요:"))
sequence=[0,1]
while True:
    number=sequence[-1]+sequence[-2]
    if number<=n:
        sequence.append(number)
    else:
        break
print(sequence)

2021/08/14 14:36

쥬쥬

void Fibo(int input) {
    int arr[2] = {0, 1};
    int temp = arr[0]+arr[1];

    printf("%d", arr[0]);
    while(temp <= input) {
        printf("%d ", temp);

        temp = arr[0]+arr[1];
        arr[0] = arr[1];
        arr[1] = temp;
    }
}

2014/11/14 21:17

좋은게좋은거

n = int(input())
array = [0, 1]
for i in range(1,n-1):
    array.append(array[i-1] + array[i])

print (array)

2014/11/21 09:54

superarchi

오류가 있네요. 4를 넣어보세요. 나와야 하는 값은 0,1,1,2,3 이지만 나오는 값은 0,1,1,2 입니다. - yhpdoit, 2020/04/10 11:57

Python

def fibo(n):
    # 두수를 더할 리스트 
    ar = [0,1]
    # 최초 0,1 은 그냥 출력하고
    print(ar[0])
    print(ar[1])

    # 무한 돌면서
    while 1:
        # 리스트 합계 구하고
        x = sum(ar)
        # 합계가 n 을 초과하면 스톱
        if (x >n):
            break
        # 데이터 스왑하고 출력
        ar[0] = ar[1]
        ar[1] = x
        print(x)

fibo(15)

2015/02/06 17:54

Kang MinSu

c 언어입니다.

#include <stdio.h>

int main(void)
{
    int num1 = 0, num2 = 1, num3 = 0, i = 0, n = 0;

    printf("피보나치 수열을 구할때 어느 숫자 이하까지 구하고 싶은가?");
    scanf("%d", &n);

    while(1)
    {
        if(n < 0)
        {
            printf("음수인 피보나치 수가 없습니다.");
            break;
        }
        printf("%d\n", 0);
        if(n==0)
        {
            break;
        }
        printf("%d\n", 1);

        i = 2;
        while(1) 
        {
            if(n - num1 + 1 <= num3)
                break;
            else
            {
                num3 = num1+num2;

                printf("%d\n", num3);
                num1 = num2, num2 = num3;           
            }
            i++;
        }       
        break;
    }
    return 0;
}

2015/04/08 14:59

전승빈

x = [0, 1]


y = int(input("정수 n을 입력해주세요 : "))

while x[len(x)-1] < y:
    x.append(x[len(x)-2]+x[len(x)-1])

print(x)

2021/11/23 15:27

이창현

def Fibonacci_fsequence(num):
    result = [0, 1]
    while result[-1] <= num:
        result += [result[-1] + result[-2]]
    result.pop()
    print(result)

print('인풋을 정수 n으로 받았을때, n 이하까지의 피보나치 수열을 출력하는 프로그램 입니다.')
num = input('정수 n을 입력하세요. : ')
Fibonacci_fsequence(int(num))

2022/03/13 14:48

고양이

int input = 13, n1 = 0, n2 = 1;

int fibonacci(int input, int n1, int n2) {
    if ((n1 + n2) >= input)
        return (n1 + n2);
    return (fibonacci(input, n2, n1 + n2));
}

2014/10/28 17:47

Ri No

clojure

(defn fib [a b]
  (cons a (lazy-seq (fib b (+' a b)))))


(take 100 (fib 0 1))
;=> (0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 317811 514229 832040 1346269 2178309 3524578 5702887 9227465 14930352 24157817 39088169 63245986 102334155 165580141 267914296 433494437 701408733 1134903170 1836311903 2971215073 4807526976 7778742049 12586269025 20365011074 32951280099 53316291173 86267571272 139583862445 225851433717 365435296162 591286729879 956722026041 1548008755920 2504730781961 4052739537881 6557470319842 10610209857723 17167680177565 27777890035288 44945570212853 72723460248141 117669030460994 190392490709135 308061521170129 498454011879264 806515533049393 1304969544928657 2111485077978050 3416454622906707 5527939700884757 8944394323791464 14472334024676221 23416728348467685 37889062373143906 61305790721611591 99194853094755497 160500643816367088 259695496911122585 420196140727489673 679891637638612258 1100087778366101931 1779979416004714189 2880067194370816120 4660046610375530309 7540113804746346429 12200160415121876738N 19740274219868223167N 31940434634990099905N 51680708854858323072N 83621143489848422977N 135301852344706746049N 218922995834555169026N)

2014/11/05 00:28

김 은평

lazy-seq가 cons를 포함하도록 하는 것이 더 일반적인 모양이라고 합니다. https://clojuredocs.org/clojure.core/lazy-seq#example-542692d3c026201cdc326feb - Han Jooyung, 2016/11/10 12:44
피드백 감사합니다. lazy-seq가 앞에 오는게 좀 더 lazy를 강조해 보이도록 하네요. 제가 전에 짰을때는 아마 cons를 좀 더 강조시키고 싶었나 보네요. ~~~clojure (defn fib [a b] (lazy-seq (cons a (fib b (+' a b))))) ~~~ - 김 은평, 2016/11/10 13:08

Scala


def fib(n: Int): List[Long] = {
    def fib: Stream[Long] = 0 #:: 1 #:: fib.zip(fib.tail).map{case (a, b) => a + b}

    fib.takeWhile(_ <= n).toList
}

fib(10).foreach(println)

2014/12/05 20:43

killbirds

제가 푼건 아니고 루비 api에 있는 예제에서 가져왔습니다.

def fib(n)
  Enumerator.new do |y|
    i = j = 1
    loop do
      y << i
      i, j = j, i + j
    end
  end.take(n)
end

이거 말고도 hash.new를 이용하는 법도 널리 알려진것같아요.

fib = Hash.new {|h, k| h[k] = h[k - 1] + h[k - 2]}
fib[0] = fib[1] = 1
(1..n).each { |i| p fib[i] }

2014/12/10 22:53

Shim Won

파이썬으로 풀어보았습니다.

def fibUpto(n):
    a, b = 0, 1
    while a <= n:
        print a,
        a, b = b, a+b
    print

fibUpto(100)


2014/12/11 15:02

룰루랄라

f=->(n) do 
  loop.
  lazy.
  with_object([0,1]).
  map{|_,v|v[0].tap{v[1]=v[0]+(v[0]=v[1])}}.
  take_while{|x|x<n}.
  to_a
end
f.call(100) # => [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

2014/12/14 09:51

nacyot

Perl

$a=<>;$n=1;$m=1;print "0";while($n<=$a){print ", $n";($n,$m)=($n+$m,$n)}

2014/12/31 17:03

*IDLE*

파이썬입니다.

def fib(n):
   a,b=0,1
   while a<n:
    print a
    a,b=b,a+b

fib(10000)

2015/01/01 11:16

깊은물

while a<=n: 이 아닐까 싶은데요.... - 이 호연, 2015/01/20 02:16

fibonacci.go

func fibonacci() func() int {
    x, y := 0, 1
    return func() int {
        x, y = y, x + y
        return x
    }
}

func main() {
    n := 8
    f := fibonacci()
    for i := 0; i < n-1; i++ {
        fmt.Printf("%d ", f())
    }
}

2015/01/12 17:22

전 수현

Scala 풀이

def fib(n:Int, a:Int = 0, b:Int = 1): List[Int] = {
    if(a > n) Nil
    else a +: fib(n, b, a+b)
}
print(fib(13).mkString(", "))

2015/01/20 02:10

이 호연

coding by python beginner

def pivo(n):
    if n == 0: print([0]); return
    t0 = [0,1]
    while t0[len(t0)-2] + t0[len(t0)-1] <= n:
        t0.append(t0[len(t0)-2] + t0[len(t0)-1])
    print(t0);

2015/01/23 11:25

vegan

Perl

my $end=$ARGV[0];
my @fibo=(0,1);
my $i=2;
my $v;
while(($v=$fibo[$i-1]+$fibo[$i-2])<$end)
{
    push @fibo,$v;
    $i++;
}
print "@fibo";

2015/01/24 04:56

이병곤

자바입니다.

public class Fibonachi {

    public static void main(String[] args) {
        System.out.println(Fibonachi.fiboSequence(8));
    }

    public static String fiboSequence(int n){
        StringBuffer sb = new StringBuffer();
        for(int i=1; i<=n; i++){
            if(i!=1) sb.append(", ");
            sb.append(fibonachi(i));
        }

        return sb.toString();
    }


    public static int fibonachi(int n){
        int result=0;
        if(n>2) {
            result = fibonachi(n-2)+fibonachi(n-1);
        }

        if(n<=2) result = n-1;

        return result;
    }


}

2015/01/24 23:23

mojo_kb

파이썬 2.7 사용했습니다.

ans = raw_input()
a = 0
b = 1
i = 0
print a
while loop :
    print b
    b = a + b
    a = b - a
    i = i + 1
    if i == ans :
        continue

2015/01/31 16:48

김한길

n = input("Enter number: ")

num_pre = -1L

def fibonacci(x,y):
    global num_pre
    if num_pre == -1L:
        num_pre = 1L
    temp = num_pre + x
    num_pre = x
    print temp
    return temp

fibo_n = reduce(fibonacci,[0]*n)
print fibo_n

2015/02/01 19:44

SPJung

0과 1를 구한다음 계속 수열을 만든다. 만든 값이 입력값보다 작거나 같을때까지 출력한다.

num=raw_input("number:")
last=int(num)
sum=0
value1=0
value2=1

while  value2 <= last:
        #print value1,value2
        new_value=value1+value2
        value1=value2
        value2=new_value
        print value1,

print ""

2015/02/02 15:08

이 승훈

package fibonacci;

import java.util.Scanner;

public class fibonacci {
    public static void main(String[] args)
    {
        Scanner scanner = new Scanner(System.in);

        System.out.print("피보나치 수열을 구할 정수 N을 입력하세요: ");
        int n = scanner.nextInt();

        int i=0;
        while( fibonacci(i)<=n ){
            i++;
        }   //정수n 이하의 피보나치 항수를 계산

        int count = i--;       
        for(i=0; i<count; i++){
            System.out.print(fibonacci(i) + " ");
        }

    }

    public static int fibonacci(int n){
        if(n <= 1){
            return n;
        }else{
            return fibonacci(n-2) + fibonacci(n-1);
        }
    }
}

2015/02/19 05:00

zerofury

Java. 자료형 long을 사용했습니다^^

package h_Fibonacci1;
import java.util.Scanner;
public class Secret {

    public static void main(String[] args) {
        Scanner in=new Scanner(System.in);
        long input=in.nextLong();
        long a=0l, b=1l, temp=0l;
        do{
            System.out.print(a+" ");
            temp=a;
            a+=b;
            b=temp;
        }while(a<=input);
    }
}

2015/02/22 21:32

Katherine

def seq(n):
    s_seq="0 1"
    prev,cur=0,1
    next=0
    while 1:
        next = prev + cur
        if next > int(n): break;
        s_seq += " "+str(next)
        prev, cur = cur, next
    print(s_seq)


if __name__ == "__main__":
    n = input()
    seq(n)


2015/03/16 12:45

임 진승

Using python

#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys

def fibo(n):
    a, b= 0, 1
    #print "0 ",
    while b<=n:
        print "%d " %b,
        a,b = b,a+b

try:
    fibo(int(sys.argv[1]))
except:
    print "Using : python %s number" %sys.argv[0]

2015/03/28 22:32

freeefly

# FibonacciNum

def fibonacciNum(n):
    fibList = [0, 1]
    i = 2
    while n >= fibList[i-2] + fibList[i-1]:
        fibList.append(fibList[i-2] + fibList[i-1])
        i += 1
    return fibList

print(fibonacciNum(13))

2015/04/11 16:51

Edi Slie

a = [];

a.append(0)
a.append(1)
Num = 0

while(Num <= 2 ):
    Num = int(input ("Input N(N>2)"))
    for i in range(2, Num):
        a.append(a[i-2]+a[i-1])

print (a[i], end=' ') 

2015/04/13 13:19

박 해수

#include <stdio.h>

int main(int argc, const char * argv[]) {

    int i=0, j=1, tmp;
    int n;

    scanf("%d", &n);
    printf("%d ", i);

    while(j<=n){
        printf("%d ", j);
        tmp = j;
        j = i + j;
        i = tmp;
    }

    return 0;
}

2015/05/09 12:34

이 정연

C로 풀었습니다. 재귀 호출을 이용해서 풀었습니다~

int Fibo(int);

int main()
{
    int num, i;
    printf("input : ");
    scanf_s("%d", &num);

    for(i=1; i<=num; i++)
        printf("%d ", Fibo(i));

    return 0;
}
int Fibo(int num)
{
    if(num==1 || num==0)
        return 0;
    else if(num==2)
        return 1;
    else
        return Fibo(num-2)+Fibo(num-1);
}

2015/05/10 22:20

JS.LIM

python

#461.py
def pibo(n):
    if n== 0 or  n==1:
        return 1
    else:
        return pibo(n-1)+pibo(n-2)

for i in range(int(raw_input())):
    print "%d "  %pibo(i),

2015/05/11 16:59

심재용

Python 2

n = int(raw_input("Input integer: "))
first = 0
second = 1
f = first + second

print first, second, f,

while f < n:
    first = second
    second = f
    f = first + second
    print f,

2015/05/11 21:47

bbutan

#include <iostream>
using namespace std;

int main()
{
    int n1=0,n2=1,count,i=1;
    cout << "n : ";
    cin >> count;
    if (count == 1 || count ==2) {
        count == 1 ? cout << i << " 번째 값 : " << n1 << endl : cout << i+1 << " 번째 값 : " << n2 << endl;
    }   
    else {
        do {
            i++;
            n2 += n1; 
            n1 = n2-n1;
            cout << i+1 << " 번째 값 : " << n2 << endl;
        } while (i<count-1);
    }   
}

2015/05/16 16:29

erkgojnheorighoei

int fib(int n)
{
  if(n <= 1)
   return n;
  else
   return fib(n-1) + fib(n-2)
}

int main()
{
   int n;
   cin >> n;

   for(int i=0; i<=n; i++)
     cout << fib(i) << "," ;
   cout << endl;
}

2015/05/25 15:57

sojin

C#으로 작성했습니다.

        public string FindFibonacci(int n)
        {
            var first = (ulong) 1;
            var second = (ulong) 2;
            var output = first + " " + second;
            for (int i = 2; i <= n; i++)
            {
                var temp = first;
                first = second;
                second += temp;
                output += " " + second;
            }
            return output;
        }

2015/06/11 15:10

Straß Böhm Jäger

#include <stdio.h>
int main(){
    int a,b[99999],i,j,sum=1,sam=1;
    scanf("%d",&a);
    b[1]=1;
    b[2]=1;
    for(i=3;i<=40;i++)
    {
        b[i]=b[i-1]+b[i-2];
    }
    for(i=1;i<=a;i++)
    {
        if(i==a)
        {
            printf("%d ",b[i]);
        }
        else
        {
            printf("%d, ",b[i]);
        }
    }
}

2015/06/13 00:03

코딩호빵이

using java

public class Main {

  public static void main(String[] args) {
      int fiboArr[] = {0, 1};

      Scanner keyboard = new Scanner(System.in);
      int n;
      n = keyboard.nextInt();

      while(true){
          if (fiboArr[0] >= n)
               break;

          System.out.println(fiboArr[0]);
          int temp = fiboArr[1];
          fiboArr[1] = fiboArr[1] + fiboArr[0];
          fiboArr[0] = temp; 
      }  
    }
}

2015/06/16 18:44

문성훈

static void Main(string[] args)
        {
            string input = Console.ReadLine();
            int num = int.Parse(input);

            for (int i = 0; i < num; i++)
            {
                if (pibo(i) > num)
                {
                    break;
                }
                else
                {
                    Console.Write("{0} ", pibo(i));
                }
            }
            Console.WriteLine();

        }

        static int pibo(int n)
        {
            if (n < 2)
            {
                return n;
            }
            else
            {
                return pibo(n - 1) + pibo(n - 2);
            }
        }

2015/06/19 22:39

허 빈

fibonacci = [0,1]
n = int(input("Enter a number"))
for i in range(n-2):
    fibonacci.append(fibonacci[i]+fibonacci[i+1])
print(fibonacci)

2015/07/14 12:57

renee

#include <stdio.h>
int a;
int Fibo[1000]={0,1};
void Fibonacci(int i)
{
 printf("%d ",Fibo[i]);
 if(i>a)
  return;
 Fibo[i++]=Fibo[i]-Fibo[i-1]
 Fibonacci(i);
}


int main(void)
{
 scanf("%d",&a);
 printf("%d",0);
 Fibonacci(1);
 return 0;
}

2015/07/15 16:24

남새

        static void Main(string[] args)
        {
            int n = Console.Read();
            int a = 1;
            int b = 0;
            int c = 0;
            int result = 0;
            for(int i = 1; i <= n; i++)
            {
                c = b;
                b = a + b;
                a = c;
                Console.WriteLine(a + " ");
            }
        }

2015/07/18 23:28

정우진

    static void exce69()
    {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        int a = 0, b = 1;

        if (n == 0)
            System.out.println(0);
        else if (n == 1)
            System.out.println(1);
        else
        {
            for (int i = 0; i < n - 2; i++)
            {
                if (a >= b)
                    b += a;
                else
                    a += b;
            }
            if (a > b)
                System.out.println(a);
            else
                System.out.println(b);
        }
    }

2015/08/28 16:18

조서현

        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            int a = 0;
            int b = 1;
            int result = 0;
            while(n >= b)
            {
                Console.WriteLine(b);
                int temp = b;
                b = a + b;
                a = temp;
            }

        }

2015/10/12 01:52

정우진


#include "stdafx.h"
#define MAX_NUMBER 100

int _tmain(int argc, _TCHAR* argv[])
{
    int n; int fibo[MAX_NUMBER];
    scanf("%d",&n); 

    for(int i=0;  ;i++){
        if(i==0 || i==1){
            fibo[i]=i; 
            if(fibo[i]>n) break; 
            printf("%d ",fibo[i]); 
        }
        else{
            fibo[i]=fibo[i-1]+fibo[i-2]; 
            if(fibo[i]>n) break; 
            printf("%d ",fibo[i]); 
        }

    }

    return 0;
}

n이하까지만 출력하고 멈추기가어렵네요ㅡㅡ생각보다 ㅎ 언어는 C언어입니다

2015/10/12 02:32

Kicia Park

파이썬입니다.

def fibo(n):
    lst = [0, 1]  # 초기값 설정
    index = 1  # 인덱스는 항상 리스트의 끝을 가리킴
    while lst[index] <= int(n):  # 마지막 원소가 n 이하이면  
        lst.append(lst[index] + lst[index - 1])  # 더해서 삽입
        index += 1
    return lst[:-1]  # 마지막 원소를 제외한 리스트 리턴

n = input()
print(fibo(n))

2015/11/18 19:13

김경호

파이썬 2.7

def fib(n):
    result = []

    a, b = 0, 1
    while True:
        result.append(a)
        a, b = b, a + b
        if b >= n:  # 찾은 피보나치가 인수값보다 크면 while 문을 빠져나온다.
            break
    return result

fibo_list = fib(150) # fibo함수의 인수값보다 작은 수의 피보나치 수열을 찾음

for i in fibo_list:
    print i,


결과:
0 1 1 2 3 5 8 13 21 34 55 89

2015/12/31 12:21

hana11

  • python으로 작성하였습니다.
stopN=input('enter n: ')
res=[0]
nextN=1
while(stopN>=nextN):
    res.append(nextN)
    nextN=sum(res[-1:-3:-1])

print res

2016/01/08 09:09

씨니컬우기님

ef fib(n):
    a,b,c = 0,1,0
    while c<=n:
        print c,
        a,b = b,c
        c = a + b

fib(13)

2016/01/21 22:46

상파

Ruby

n = 100000
fib = ->x{ x<2 ? x:fib[x-2]+fib[x-1] }
p (0..Float::INFINITY).lazy.map(&fib).take_while{|e|e<n}.force

# output
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025]

Haskell

let fibs = 0 : 1 : zipWith (+) fibs (tail fibs)
takeWhile (<100000) fibs

# output
[0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368,75025]

2016/01/29 02:49

rk

우선 0,1이 저장된 리스트를 만든 후,for문을 돌려서 마지막 두 숫자의 합이 입력할 정수의 값을 넘지않도록 break를 주었습니다.

def fibo(input_n):
    a=[0,1]
    total =0
    for i in range(1,input_n+1):
            total = a[i-1]+a[i]
            if total>input_n:
                break
            a.append(total)
    return a

2016/02/03 06:12

UNIST_BA

#coding: CP949
n=int(input('정수를 입력하라:'))
if n == 0:
    print([0])
elif n == 1: 
    print([0,1])
    print([0,1,1])

result=[0,1,1]
end=result[len(result)-1]
j=3
while end < n:
    result.append(result[j-2]+result[j-1])
    j+=1
    end=result[len(result)-1]
    if end>n:
        result.pop(len(result)-1)
        print(result)
    elif end==n:
        print(result)
파이썬 3.3

2016/02/25 22:38

lovegalois2

하스켈입니다.

fibonacci n = let fibo x y = x:fibo y (x+y) in print . take n $ fibo 0 1
main = do
    l <- getLine
    let n = read l :: Int
    fibonacci n

2016/03/15 10:04

룰루랄라

int fibo(int n) {
   if(n < 2) return n;
   return fibo(n-1) + fibo(n-2);
}

recursion을 이용한 java 코드

2016/03/16 02:08

mozzi

python 3.5

def fibonacci(number):
    a = 0
    b = 1
    while b<=number:
        a = b
        b = a+b
    return a

print(fibonacci(20))

2016/03/18 20:15

Lee Seul

파이썬3.4입니다.

n = int(input())
li = [0, 1]
while n >= (li[-1] + li[-2]):
    li.append(li[-1] + li[-2])
print(li)

2016/03/29 15:00

디디

이게 맞을려나..

    public int fibonacci(int n) {
        if(n == 0 || n==1)
            return n;
        else
            return fibonacci(n-1)  + fibonacci(n-2);
    }

    public int getFibonacci(int input){

        int result = 0, i = 0 ;
        result = fibonacci(i);
        while(result < input){
            i++;
            result = fibonacci(i);
            System.out.print(result + " ");
        }
        System.out.println();

        return result;
    }

2016/04/22 22:59

xeo

#파이썬3.4.2
def pibo(n):
    p = ['0','1']
    for i in range(2,n+2):
        p.append(str(int(p[i-2])+int(p[i-1])))
    return ' '.join(p)

print(pibo(int(input())))
참고로 다음 프로그램을 피보나치 수열을 누적으로 구할 수 있는 py입니다.
# 용량 주의
with open('fibonachi.txt','r') as ff:
    pibo = ff.read()
    pibo = pibo.split('\n')

def f(n):
    if (n-1) in range(len(pibo)):
        return int(pibo[n-1])
    else:
        return f(n-1) + f(n-2)

n = len(pibo)

try:
    print(n)
    while True:
        pibo.append('{}'.format(f(n+1)))
        n += 1
        if n % 1000 == 0:
            print(n)
except:
    print(n,f(n))
    with open('fibonachi.txt','w') as f:
        f.write('\n'.join(pibo))

2016/05/03 20:47

차우정

a=[0,1]
n=int(input())
while a[-1]<=n:
    i=len(a)
    b=a[i-1]+a[i-2]
    a.append(b)
print(a[:-1])

2016/05/06 01:17

Dr.Choi

파이썬 2.7입니다.


n = 1
if n > 1:
    a = 0
    b = 1
    c = 0
    result = "0"

    while 1:
        if a+b > n:
            break
        result += ", %s" %(b)
        c = a
        a = b
        b = a+c
elif n == 1:
    result = "0, 1"
elif n == 0:
    result = "0"

print result

2016/05/16 18:10

정민 허

#include <iostream> 
#include <cstdlib> 
#include <cstdio> 
#include <algorithm> 
using namespace std;

#define MAXN 45 // input으로 들어올 n의 최댓값이 얼마인지 모르므로 
long long dp[MAXN];  

int main(){
    int n; 
    scanf("%d",&n);  
    dp[1] = 0,dp[2] = 1;  
    for (int i = 3; i <= n; i++){
        dp[i] = dp[i-1]+dp[i-2]; 
    }
    for (int i = 1; i <= n; i++){
        printf("%lld ",dp[i]); 
    } 
    printf("\n"); 
    return 0;  
}  
우선 문제에서 n의 범위가 주어지지 않았으므로 적당한 크기의 n이라고 생각하겠습니다.  
만약 n의 값이 상당히 크다면 int overflow가 일어날 수 있으므로 C++는 string 객체를 이용해서 big int addition을 구현할 필요가 있습니다.  

그리고 제 코드는 시간복잡도 O(n) 인 다이나믹 프로그래밍을 이용한 코드인데 만약 n의 값이 굉장히 크다면 ( > 10^8) 피보나치 수를 구하는데 시간이 굉장히 오래 걸릴것입니다. 

2016/05/30 15:14

iljimae

package main

import "fmt"

func Pibonacci() func() int {
    now, next := 0, 1
    return func() int {
        now, next = next, now + next
        return now
    }
}

func main()  {
    var num int

    fmt.Print("Input number: ")
    fmt.Scanf("%d", &num)

    gen := Pibonacci()

    sep := ""
    for {
        v := gen()
        if v > num {
            break
        }
        fmt.Print(sep, v)
        sep = ", "
    }
}

2016/06/11 22:32

uuuuuup

def f():
    a, b = 0, 1
    yield a; yield b
    while 1:
        a, b = b, a + b
        yield b
def g(n):
    result = []; gen = f()
    while 1:
        temp = next(gen)
        if temp <= n:
            result.append(temp)
        else: break
    return result
while __name__ == '__main__':
    print('\n'.join(str(x) for x in g(int(input('>>>')))))

파이썬 3.5.1

2016/06/22 13:51

Flair Sizz

include

int main(void) { int num1 = 0, num2 = 1, num3 = 0, i = 0, n = 0;

printf("피보나치 수열을 구할때 어느 숫자 이하까지 구하고 싶은가?");
scanf("%d", &n);

while(1)
{
    if(n < 0)
    {
        printf("음수인 피보나치 수가 없습니다.");
        break;
    }
    else if(n==0)
    {
        printf("%d입니다. \n ", 0);
        break;
    }
    else if(n==1)
    {
        printf("%d 입니다. \n ", 1);
        break;
    }

    while(1) 
    {
        if(n - num1 + 1 <= num3)
            break;
        else
        {
            num3 = num1+num2;

            printf("%d\n", num3);
            num1 = num2, num2 = num3;           
        }
        i++;
    }       
    break;
}
return 0;

}

전승빈님 코드 약간 수정햇습니다.

2016/06/28 17:27

Song Ki Hyun

def fibo(first, second, limit):
    nums = [first, second]
    total = 0
    third = 0

    while first+second <= limit:
        third = first +second
        nums.append(third)
        first = second
        second = third
        total += third

    print(nums)
    return  nums, total


result = fibo(0, 1, 4000000)
print("numbers are... "+str(result[0])+"\nAnd Total number is .... "+str(result[1]))

2016/08/01 16:22

정 우주

늅늅입니다. 자바로 풀어봤습니다.

public static int maxNum = 5000;
    public static int result = 0;
    public static int arrayIndex = 0;
    public static ArrayList<Integer> numbers;

    public static void main(String args[])
    {
        numbers = new ArrayList<Integer>();
        numbers.clear();

        CalPibonachi(maxNum);
    }

    public static void CalPibonachi(int maxNum)
    {
        if(numbers.size() > 0)
        {
            while(true)
            {
                result = numbers.get(arrayIndex) + numbers.get(arrayIndex+1);

                if(result > maxNum)
                    break; 

                numbers.add(result);
                arrayIndex++;
            }

            Result();
        }
        else
        {
            numbers.add(result);

            result += 1;
            numbers.add(result);

            CalPibonachi(maxNum);
        }

    }

    public static void Result()
    {
        for (Integer number : numbers) 
        {
            System.out.print(String.valueOf(number) + " ");
        }
    }

결과 : 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181

2016/08/03 15:22

여우와향신료

class pibo{
    int a=0, b=1;
    int fin=10;
    int sum = a+b;
    pibo(){
        System.out.print(a+" "+b+" ");
        for(int i = 0; i<fin ; i++){
            System.out.print(sum+" ");
            a=b;
            b=sum;
            sum=a+b;
        }
    }
}
public class lv2_11 {
    public static void main(String[] args) {
        pibo p = new pibo();
    }
}

2016/08/11 02:23

김준호

#def_name = limit_fibonacci, input = integer to express where the limitation is, output = fibonacci, type of result : a series of numbers

def limit_fibonacci(number):
    result = [0,1]
    while max(result) <= number:
        if result[len(result)-2]+result[len(result)-1] <= number:
            result.append(result[len(result)-2]+result[len(result)-1])
        else:
            return result



print limit_fibonacci(15) # result : [0, 1, 1, 2, 3, 5, 8, 13]
print limit_fibonacci(100) # result : [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

2016/08/18 22:10

Kim Seong Hyeon

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Sequence {
    public static void main(String[] args) {
        String input= "";

        try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
            input = br.readLine();

        } catch (IOException e) {
            e.printStackTrace();
        }

        int number1 = 0;
        int number2 = 0;
        if(Integer.parseInt(input) != 0){
            while(number1 <= Integer.parseInt(input)){
                if(number1 == 0){
                    System.out.print(number1 + " ");
                    number1 ++;
                    System.out.print(number1 + " ");
                }else{
                    int num = number1;
                    number1 = number1 + number2;
                    if(!(number1 >Integer.parseInt(input))){
                        System.out.print(number1 + " ");
                        number2 = num;
                    }
                }
            }
        }else{
            System.out.println(input);
        }
    }

}

2016/10/21 16:55

???

def fibo(n):
    if n == 1:
        return 0
    if n == 2:
        return 1
    return fibo(n-1) + fibo(n-2)

Python 3.5.2

2016/10/30 22:03

Kim J.S.

int fib(int n) {
  return fib_(0, 1, n);
}

int fib_(int a, int b, int n) {
  while (b <= n) {
    b = b + a;
    a = b - a;
  }
  // now b is the first value > n
  // so a is the last value <= n
  return a;
}

2016/11/10 12:49

Han Jooyung

int fibo = 0;
int tg = 1000;
List<int> array = new List<int>() { 0, 1 };
int fibopos = 1;
while(fibo < tg) {
    fibo = array[fibopos - 1] + array[fibopos];
    array.Add(fibo);
    fibopos = array.Count - 1;
};
foreach (int v in array.Where(k => k < tg)) Console.WriteLine(v);

2016/11/23 16:12

lee jaekyoon

def fibonacci(num):
    if num < 0:
        return []    
    n1 = 0
    n2 = 0
    while n1 + n2 <= num:
        yield n1 + n2
        n1, n2 = n2, n1 + n2
        if n2 == 0:
            n1 = 1

def print_fibonacci(num):
    print(', '.join(map(str, fibonacci(num))))

print_fibonacci(13)

Python 3.5.2에서 작성하였습니다.

2016/11/29 13:56

Yeo HyungGoo

def fibonachi(limit, n = 0, nums = [0]):
    if nums[n] < limit:
        if n == 0 :
            nums.append(1)
        else:
            nums.append(nums[n] + nums[n-1])
        fibonachi(limit, n+1, nums)
        return nums

print(fibonachi(limit=100))     

재귀로 풀어보려고 했는데 이상하게 됐네요..

2016/12/04 21:32

바바

def fib(n):
    if n == 0: return 0
    if n == 1: return 1
    return fib(n-2) + fib(n-1)

n = int(input())

for i in range(n):
    print (fib(i))

2016/12/23 17:47

수련생

public class Lv2_02 {
    public static void main(String[] args) {
        Fibonacci f = new Fibonacci(10);
        f.play();
    }
}

class Fibonacci {
    private int numLength = 0;

    public Fibonacci(int num){
        this.numLength = num;
    }

    void play (){
        int [] arr = new int[numLength];
        arr[0] = 0;
        arr[1] = 1;

        for (int i = 2; i < arr.length; i++) {
            arr[i] = arr[i-2]+arr[i-1];
        }

        for (int i = 0; i < arr.length; i++) {
            if (i==arr.length-1) {
                System.out.print(arr[i]);
            }else{
                System.out.print(arr[i]+", ");
            }
        }

    }
}

2016/12/26 20:08

bbubbush

n,xy = int(input()),[0,1]
print('0, 1', end='')
while sum(xy) <= n:
    print(',',sum(xy),end='')
    xy = [xy[1],sum(xy)]

#### 2016.12.29 D-420 ####

2016/12/29 23:04

GunBang


#python 2.7.xx
def fibo(n):
    return n if n < 2 else fibo(n-2) + fibo(n-1)

print map(fibo,range(5))

간결하게 아름답게!

2016/12/31 16:19

Daniel

import java.util.Scanner;
public class pivo {
    public static int _pivo(int i){
        if(i<=1)
            return i;
        else{
            return _pivo(i-1)+_pivo(i-2);
        }
    }
    public static void main(String[] args) {
        int input,i=0;
        Scanner scan = new Scanner(System.in);
        input = scan.nextInt();
        while(_pivo(i)<=input){
            System.out.print(_pivo(i)+" ");
            i++;
        }
    }
}

2017/01/31 20:52

primary

가장 정석정인 c재귀

#include <stdio.h>

int fibo(int val);

void main() {
    int fib = 1;
    int n = 7;
    for(int i=0;i<n;i++) {
        printf("%d ", fibo(i));
    }
}

int fibo(int val) {
    if(val < 2) 
        return val;
    return fibo(val-2) + fibo(val-1);
}

2017/02/07 12:37

코딩초보

public class Test461 {

    static int limitNumber = 100;

    public static void main(String[] args) {
        pibo(0, 1);
    }

    public static void pibo(int s, int e){
        if (s == 0) System.out.print(s);
        if (e > limitNumber) {
            return;
        }
        System.out.print(", " + e);
        pibo(e, s + e);
    }
}

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89

2017/02/13 17:14

김경수

def pibonacci(n):
    if n==0:
        return [0]
    result=[0,1]
    for i in range(0,n+1):
        if sum(result[-2:])<=n:
            result+=[sum(result[-2:])]
    return result

2017/02/17 13:57

김구경

import java.util.Scanner;
import java.util.stream.IntStream;

public class Fibonacci {

    public static void main(String[] args) {
        IntStream.range(0, new Scanner(System.in).nextInt()).forEach(i -> System.out.println(fibonacci(i)));
    }

    private static int fibonacci(int n) {
        if (n == 0) return 0;
        if (n <= 1) return 1;
        return fibonacci(n - 1) + fibonacci(n - 2);
    }
}

2017/02/20 13:37

genius.choi

파이썬 2.7

n = input('n=')
fib = [0, 1]

while(1):
    tmp = fib[-2] + fib[-1]

    if tmp > n:
        break 
    fib.append(tmp)

print fib

2017/02/24 21:51

조현우

n = int(input('자연수 N 을 입력하세요. \n N 이하까지의 피보나치 수열을 반환합니다.'))
x = [0, 1]
while x[-1] <= n:
    print(x[-2])
    x.append(x[-2] + x[-1])
print(x[-2])

list 형으로 수열의 1,2 번째 항을 정의한 후에 계속 추가해 나가는 방식입니다.

2017/03/02 17:23

최해준

파이썬 3.5.3 연습용 코드입니다.

def pibo(n):
    a=[0,1]

    if n == 1:
        print('0')
    if n == 2:
        print('1')
    if n>2:
        for x in range(3,n+1):
            a.append(a[x-3]+a[x-2])

    print(a)

2017/03/08 21:50

JH

def fibonacci(n):
    result = [0]
    while result[-1] < n:
        result.append(max(1,sum(result[-2:])))
    return result

print(fibonacci(13))

2017/04/09 16:15

soleaf

#include <iostream>

using namespace std;
void Fibo(int n);

int main()
{
    int n;
    cin >> n;
    Fibo(n);
    return 0;
}

void Fibo(int n)
{
    int a1, a2, a3;
    a1=0, a2=1, a3 = 0;
    cout << a1 << " " << a2 << " ";
    while(1)
    {
        a3 = a1 + a2;
        if(a3 > n)
            break;
        cout << a3 << " ";
        a1 = a2;
        a2 = a3;
    }
}

2017/04/13 15:48

GyuHo Han

def fibo(n):
    fibo=[0,1]
    result=[]
    for i in range(n):
        fibo.append(fibo[i]+fibo[i+1])#피보나치수열
    for i in fibo:#n이상의 자연수 없애기..
        if i>n:
            result.append(i)
    for i in result:
        fibo.remove(i)
    return fibo

print(fibo(6))
print(fibo(10))
print(fibo(200))
print(fibo(50))

2017/04/19 14:41

조현

package codingdojang;

public class P2 {
    int fibonach(int n) {
        if (n <= 1)
            return n;
        else
            return fibonach(n - 1) + fibonach(n - 2);
    }

    public static void main(String[] args) {

    }
}

메소드만 구현해봤습니다.

2017/05/02 14:01

조상현

def fibo(n):
    a, b = 0, 1
    while n > 0:
        a, b = b, a + b
        n -= 1
    return a

lst=[0]

def new_lst(n):
    for i in range(1,n+1):
        lst.append(fibo(i))
    n_lst=[]
    for i in range(n):
        if lst[i]<=n:
            n_lst.append(lst[i])
    return n_lst

a=int(input("number는?"))
b=new_lst(a)

print(b)

2017/05/10 20:06

정세진

def fibo(n):
    a,b=0,1
    i=0
    while i<n:
        a,b=b,a+b
        i+=1
    return b


n=int(input("num은?"))

lst=[0,1]
for i in range(1, n+1):
    if fibo(i)<=n:
        lst.append(fibo(i))

print(lst)

2017/05/14 14:26

정세진

Python 3.6 출력형태를 지정하시지 않았기에 그냥 리스트 출력합니다. index 의 뒤에 두개를 계속 더해가며 비교하면 됩니다.

def fibonacci(n):
    f = [0,1]
    while f[-2]+f[-1] < n:
        f.append(f[-2]+f[-1])
    return print(f)

>>> range = int(input("Max? "))
Max? 1000
>>> fibonacci(range)
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987]

2017/05/25 13:25

예강효빠

javascript

자바스크립트의 클로저를 사용하여 피보나치 수열을 캐싱하였습니다.

캐싱하지 않았을 경우 아래 코드 주석처럼 호출횟수가 무지막지하게 늘어납니다.

var callcount = 0;
var fibonacci = (function(n) {
    var cache = [0, 1];

    // cache 사용
    // fibocacci 1~30 까지 호출시 86회 호출됨
    return function fib(i) {
        callcount++;
        if (typeof cache[i - 1] === "undefined") {
            cache[i - 1] = fib(i - 1) + fib(i - 2)
        }
        return  cache[i - 1];
    }

    // cache 미사용
    // fibocacci 1~30 까지 호출시 4356586회 호출됨
    //
    // return function fib(i) {
    //  callcount++;
    // 
    //  if (i == 1) return 0;
    //  if (i == 2) return 1;
    //  return fib(i - 1) + fib(i - 2);
    // }

})();

var print = function(n) {
    for (let i = 1; i <= n; i++) {
        console.log(`${i} : ${fibonacci(i)}`);
    }
};

print(30);
console.log(callcount)

2017/06/19 12:55

funnystyle

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        System.out.println("몇번째 피보나치 수열까지 볼려구요?");
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int sum1 = 0,sum2 = 1,sum3 = 0;
        for (int i = 0; i < n; i++) {
            sum3 = sum1 + sum2;
            sum1 = sum2;
            sum2 = sum3;
            System.out.printf("%d, ", sum1);
        }
        sc.close();
    }

}

자바....

2017/06/20 12:46

이한솔

파이썬으로 작성하였습니다.

num = int(input("숫자를 넣어 주세요 : "))

pit = [0, 1]

def pitvot(num):

sum = 0

total = 0

for i in range(num+1):

sum = pit[i] + pit[i+1]

if sum <= num:

    pit.append(sum)

else :

    break

print(pit)

for j in pit:

if j % 2 ==0:

    total += j

print("짝수의 합은 %d: "%total)

pitvot(num)

```

2017/07/05 22:49

semipooh

n = int(input('n='))

(t1, t2) = (0, 1)
while t2 < n:
    (t1, t2) = (t2, t1+t2)
    print(t1)

1부터 시작합니다.

2017/07/06 00:23

Noname

Python 3로 풀었습니다.

def solve(max_val):
    def fib(limit):
        a = [0,1]
        while a[0] < limit:
            yield a[0]
            a.reverse()
            a[1] += a[0]

    for x in fib(max_val + 1):
        print(x)

2017/07/06 17:01

SOUP

package java_tutorial;

import java.util.Scanner;

public class Pibonacci {

    public static void main(String[] args) {
        int pibo_a = 0;
        int pibo_b = 1;


        Scanner sc = new Scanner(System.in);

        System.out.print("Until? : ");
        int target_Num = sc.nextInt();

        System.out.print(pibo_a + " " + pibo_b + " ");
        while(pibo_b+pibo_a <= target_Num)
        {
                if(pibo_a > pibo_b)
                {
                        pibo_b = pibo_a + pibo_b;
                        System.out.print(pibo_b + " ");
                }
                else
                {
                        pibo_a = pibo_a + pibo_b;
                        System.out.print(pibo_a + " ");
                }
        }
    }

}

2017/07/20 19:04

최원석

import java.util.*;

public class Fibonacci {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int f1=0, f2=1, f3=1;
        if(n>=0) System.out.println(f1);
        if(n>=1) System.out.println(f2);
        while(f3 <= n) {
            System.out.println(f3);
            f1 = f2;
            f2 = f3;
            f3 = f1+f2;         
        }
    }
}

2017/07/31 09:31

곽철이

Python으로 작성했습니다.

def fibonacci(num):
    temp = [0, 1]
    for idx in range(num):
        temp.append(temp[idx] + temp[idx + 1])
    return(temp)

2017/08/01 11:28

arloe

R로 작성했습니다.

fibonacci <- function(num){
  temp <- c(0, 1)
  for(i in 1:num){
    temp[i + 2] <- temp[i] + temp[i + 1]
  }
  return(temp)
}
fibonacci(10)

2017/08/01 11:30

arloe

import java.util.Scanner;

public class test {
    public static void main(String[] args) {
        Scanner s=new Scanner(System.in);

        int num=s.nextInt();
        int x=0,y=1;
        int z=1;
        while(z<num){
            System.out.print(z+" ");
            z=x+y;
            x=y;
            y=z;
        }

    }
}

2017/08/01 11:44

김재인

C

#include <stdio.h>

int main(int argc,char* argv[])
{
    int start1 = 0;
    int start2 = 1;
    int tmp = 0;
    printf("%d %d ",start1,start2);
    for(int i=0;i>=0;i++)
    {
        if(i==0)
        {
            tmp = start1 + start2;
            continue;
        }
        else
        {
            start1 = tmp;
            tmp = tmp + start2; 
            start2 = start1;
        }
        if(tmp>atoi(argv[1]))
            return 0;
        printf("%d ",tmp);

    }

    return 0;
}

2017/08/11 09:41

임꺽정

뭐 저보다 좋은 코드가 많아서...

def fibonacci(n):
    result=[0,1]
    if n<= 1:
        return result[n]
    else:
        for i in range(n-1):
            result.append(result[i+1]+result[i])
        return result[-1]

def show(n):
    for i in range(n):
        print(fibonacci(i))

2017/08/12 11:34

고든

프밍 배운지 얼마 안 된 완전 초짜라 정말 기본적인 것들만 썼습니다. (아직 리스트도 안 배워서ㅎㅎ) 다른 분들 올리신 거 보고 많이 배우고 갑니다! 파이썬이에요.

def fib(num_1, num_2):
    fibonacci = "0" + " " + "1"
    i = 0
    N = int(input("till when? "))
    while i < N:
        num_3 = num_2
        num_2 = num_1 + num_2
        num_1 = num_3
        i += 1
        fibonacci = fibonacci + " " + str(num_2)
    return fibonacci


print(fib(0,1))

2017/08/13 11:39

김도연

다른 분들 리스트 쓰신 거 보고 막 리스트 배워서 새로 또 올려보아요! 여전히 길지만...

fib = [0,1]
def fibonacci(list,num):
    i = 0
    while i < num:
        new_list = [int(list[i]) + int(list[i+1])]
        list = list + new_list
        i += 1
    return list

num = int(input("till when? "))
print(fibonacci(fib,num))

2017/08/13 11:58

김도연

안녕하세요. 코드에 버그가 있어, 수정해 보았습니다^^ ======================================== fib = [0,1] def fibonacci(list,num): i = 0 while i <= num: new_list = [int(list[i]) + int(list[i+1])] list = list + new_list if int(list[i+2])>=num: break i += 1 return list num = int(input("till when? ")) print(fibonacci(fib,num)) - Jung Daehyun, 2017/08/23 00:25
def fibo(i):
    if i==0 :return 0
    if i==1 :return 1
    return fibo(i-2)+ fibo(i-1)

a=input("숫자를 입력하시오.")
for i in range(0,int(a)):

    print(fibo(i))

2017/08/20 21:11

정인준

user_input=input('사용자 입력:')
user_input=int(user_input)
first_num=0
second_num=1
pibo_list=[]
sum=0
while sum<user_input:
    sum=first_num + second_num
    if sum<user_input:
        first_num=second_num
        second_num=sum
        pibo_list.append(sum)
    if sum>user_input:
        break
pibo_list.insert(0,0)
pibo_list.insert(1,1)
print(pibo_list)

2017/08/22 23:43

Jung Daehyun

def getList(num):
    result = [0,1]
    while result[-1]<num:
        result.append(sum(result[-2:]))

    print(result)

getList(14)

2017/08/24 10:52

piko

public class Example69 {

    public static void main(String[] args) {
        Example69 ex = new Example69();
        //ex.Fibonacci(13);

        int input = 10;
        for (int i = 0; i < input; i++) {
            System.out.print(ex.Fibonacci(i) + " ");
        }
    }

    private int Fibonacci(int n) {
        if (n <= 1)
            return n;
        else
            return Fibonacci(n - 2) + Fibonacci(n - 1);
    }
}

2017/08/29 18:44

흑돼지

# python 3.6
def fibo(n):
    x = 0
    y = 1
    ret = list()
    while x <= n:
        ret.append(x)
        x, y = y, x + y
    return ret


inp = int(input())
print(fibo(inp))

2017/09/09 15:46

mohenjo

#include <iostream>
#include <vector>
#include <stack>
#include <math.h>
#include <Windows.h>
using namespace std;

int fibo(int num) {
    if (num == 1)
        return 0;
    else if (num == 2)
        return 1;

    else
        return fibo(num - 1) + fibo(num - 2);
}


int main() {
    int num = 0;
    cout << "type number : ";
    cin >> num;

    int count = 1;
    while (1) {
        int fibo_num = fibo(count);
        if (fibo_num > num)
            break;
        else {
            cout << fibo_num << endl;
        }
        count++;
    }
    return 0;
}

2017/09/19 16:30

김기훈

package codingdojang;

import java.util.Scanner;

public class ex69 {

public static int fib(int x) {
    if(x<=1) {
        return x;
    }
    return fib(x-1)+fib(x-2);
}

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner sc = new Scanner(System.in);

    int n = sc.nextInt(); sc.nextLine();
    int i=0;

    while(fib(i)<=n) {
        i++;
    }

    for(int j=0; j<i; j++) {
        System.out.print(fib(j)+" ");
    }

}

}

2017/10/16 10:51

이병호

import java.util.Scanner;
import java.util.Arrays;

public class GetPibonacci {
    static Scanner scan = new Scanner(System.in);
    static int firstNum = 0; static int secondNum = 1; static int slot = 2;

    public static void main(String[] args) {
        System.out.print("N 이하의 피보나치 수열을 구하기 위한 N값을 입력하세요 > ");
        int n = scan.nextInt(); int[] pibonacci = new int[n];
        pibonacci[0] = 0; pibonacci[1] = 1;

        while(pibonacci[firstNum] +pibonacci[secondNum] <= n) {
                pibonacci[slot] = (pibonacci[firstNum] +pibonacci[secondNum]);
                firstNum++; secondNum++; slot++;
        }
        for(int a = 0; a < slot; a++) {
            System.out.print(pibonacci[a] +" ");
        }
    }
}

2017/10/25 03:00

SungWook Jung

def Fibonacci(a0, a1, maxi):
    if not maxi: return([0])
    elif maxi<0: return([])
    result=[a0, a1]
    def inner(a, b, n, l):
        tmp=a+b
        if tmp>n: return(l)
        else:
            l.append(tmp)
            return(inner(b, tmp, n, l))
    return(inner(a0, a1, maxi, result))

num=int(input())
print(Fibonacci(0,1,num))

2017/12/17 03:16

빗나감

def fibo(lst):
    lst.append(lst[-2] + lst[-1])
    return lst
result=[0,1]
for i in range(5) :
    result = fibo(result)
print(result)

2017/12/17 14:56

얏홍

x,y=1,2
print(x,y,end=' ')
while y<100:
    x=x+y
    y=x+y
    print(x,y,end=' ')




2017/12/17 15:00

HYUN JUN KIM

Python

def pivo(n):
    result=[]
    for i in range(n):
        if i <=1:
            result.append(i)
        else:
            a=result[i-2]+result[i-1]
            if a>=n:break ##n이하 까지의 피보나치 수열
            result.append(a)
    return result

pivo(7)

2018/01/02 17:48

Ilhoon Kang

public class Solution {

    public long solution(int n) {

        if (n <= 1) {
            return n;
        }

        int value = 0;
        int[] values = new int[]{0, 1};

        for (int i = 2; i <= n; i++) {
            value = values[0] + values[1];
            values[0] = values[1];
            values[1] = value;
        }

        return value;
    }
}

2018/01/04 15:44

권석찬

l = int(input("숫자를 입력하세요"))-1
d = [0,1]
for c in range(0, l):
       x = d[c] + d[c+1]
       d.append(x)
print(d)

2018/01/09 19:28

김영성

파이썬 3.6

def pibonacci(n):
    result = []
    t,p = 0,0
    while t <= n:
        if t < 2:
            result.append(t)
            t += 1
        elif t >= 2:
            t = result[p] + result[p+1]
            if t <= n: result.append(t)
            if t == 1: t += 2
            p += 1
    print(result)

if __name__ == "__main__":
    n = int(input("정수 n을 입력하세요: "))
    pibonacci(n)

*결과값

정수 n을 입력하세요: 10
[0, 1, 1, 2, 3, 5, 8]

정수 n을 입력하세요: 100
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

정수 n을 입력하세요: 1000
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987]

2018/01/12 20:34

justbegin

fib<-function(x){
  temp<-NULL
  result<-NULL

  if(x>0){
    temp[1]<-1
    result[1]<-0
    for(i in 2:x){
      result[i]<-temp[i-1]
      temp[i]<-result[i-1]+temp[i-1]
    }
    result[length(result)+1]<-temp[length(temp)]
    print(result)
  }
}

2018/01/16 09:06

Dong-il kim

a=int(input("최대숫자: "))
n=0

def fibo(n):
    if n==0:
        return 0
    elif n==1:
        return 1
    else:
        return fibo(n-1)+fibo(n-2)

while a>=fibo(n):
    print(fibo(n))
    n=n+1

2018/01/16 10:47

chobchob

# 파이썬

input1 = int(input("입력 이하의 피보나치 수열 출력: "))


def fibonacci(i):
    a, b = 1, 0
    while 1:
        print(b, end=' ')
        a, b = b, a+b
        if b > i: 
            break


fibonacci(input1)

2018/01/30 10:29

olclocr

def fibonacci(n):
    a = [0, 1]
    while a[-1] + a[-2] <= n:
        a.append(a[-1] + a[-2])
    return a


print(fibonacci(int(input())))

2018/02/12 18:21

김동하

N=int(input("어디까지 구할지 입력하세요:"))
num_list=[0,1,1]
a=0
b=1
c=1
flag=1
while flag:
    a=b
    b=c
    c=a+b
    if c<=N:
        num_list.append(c)
    else:
        flag=0
print(num_list)

2018/02/22 00:49

D B

def pinum(n):
    numlist = [0, 1]
    while numlist[-1] <= n:
        numlist.append(numlist[-1] + numlist[-2])
    del numlist[-1]
    return numlist

2018/03/15 21:15

myyh2357

import java.util.Scanner;

public class Plus{
 public static void main(String[] args){
  Scanner sc = new Scanner(System.in);
  System.out.println("몇 이하의 피보나치 수열을 출력할까요?");
  int input = sc.nextInt();

  int a,b,c,i;

  a = 0 ;
  b = 1 ;
  c = a + b;

  System.out.print(a + ", " + b);
  while(c <= input){
   System.out.print(", " + c);
   a = b;
   b = c;
   c = a + b;
   }
 }
}

2018/03/25 17:51

배혜민

def Fibo(num) :

    prog = [0,1]
    i = 0

    while prog[i] + prog[i+1] < num :
        prog.append(prog[i] + prog[i+1])
        i += 1

    print(prog)

2018/03/25 22:06

박강민

// 자바입니다
public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        long n = sc.nextInt(); 

        long f0 = 0;
        long f1 = 1;
        long f = 0;
        for (long i=0; i<n; i++) {
            System.out.println(f);
            f = f1 + f0;
            f1 = f0;
            f0 = f;
        }
    }

2018/05/06 15:53

정몽준

user_input =  int(input())

def fib(num): # num 이하까지의 피보나치를 출력
    lst = [0,1]
    first = 0
    second = 1

    while True:
        first = first + second
        second = first + second
        lst.append(first)
        lst.append(second)

        if num in lst:
            break

    idx = lst.index(num)
    return lst[:idx+1]

print(fib(user_input))

2018/05/07 01:33

최우성

def fib(n, x, y):
    a = [x, y]
    while True:
        x += y
        if x > n: break
        a.append(x)
        y += x
        if y > n: break
        a.append(y)
    return a

2018/05/12 18:12

Hyuk

#include<iostream>
#include<vector>

using namespace std;

int fin(int input)
{
    int number = 0, n = 1;
    int result = 0;
    vector<int> v;
    v.push_back(number); v.push_back(n);

    while (result<input)
    {
        result = v[n - 1] + v[n];
        v.push_back(result);
        n++;
    }
    return v[n - 1];
}

int main()
{
    int input;
    cout << "정수를 입력하시오>>";
    cin >> input;

    cout<<fin(input)<<endl;
}

2018/05/23 16:32

Jun ki Kim

Python

d = [0, 1]
idx = 2
n = 100
while d[idx-2]+d[idx-1] < n:
    d.append(d[idx-2]+d[idx-1])
    idx += 1
print(d)

2018/06/07 16:31

Taesoo Kim

package test;

import java.util.Scanner;

public class test {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int a = 0, b = 1;
        do {
            System.out.print(a + " ");
            int temp = a;
            a += b;
            b = temp;
        } while (a <= n);
    }
}

2018/06/12 19:17

김지훈

import java.util.ArrayList;

public class Fibonacci {

    public static ArrayList<Integer> getFibonacci(int n) {
        ArrayList<Integer> fList = new ArrayList<Integer>();
        if (n == 0) { // input이 0일 때
            fList.add(0);

        }else { // input이 1 이상의 자연수일 때
            fList.add(0);
            fList.add(1);

            int num = 0;

            for (int i = 2;  ; i++) {
                num = fList.get(i-2) + fList.get(i-1);
                if (num <= n) {
                fList.add(num);
                }
                else {
                    break;
                }
            }   
        }
        return fList;
    }

    public static void main(String[] args) {
        int n = 100;
        ArrayList<Integer> result = Fibonacci.getFibonacci(n);

        System.out.println(result);
    }

}

2018/06/23 18:29

이호재

a, b = b, a+b는 알고는 있었는데 파이썬은 이것도 되겠네요;; 알고리즘 고민 너무 안하게 하는 부정적인 측면이;;

def fibo(n, a = [0, 1]):
    while(n > len(a)): a.append(a[-2] + a[-1])
    return a

print(fibo(10))


2018/07/07 19:44

재즐보프

n = int(input())
a,b = 0,1
print(a,b,end= ' ')
while 1:
    a,b = b,a+b
    if b>n: break
    print(b,end= ' ')

2018/07/21 07:34

Creator

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main() {
    int a = 0, b = 1;
    int c;
    int input_num;

    printf("피포나치 수열 구하기 첫번째항의값은 0 이고 두번째 항의 값은1입니다. \n");
    printf("정수 n을 입력하세요 : ");

    do
    {
        scanf("%d", &input_num);
        if(input_num>0)
            break;
        else
            printf("음수를 입력하셨습니다. 다시입력해주세요 : ");

    }while(1);

    printf("%d %d ", a ,b);

    while(1)
    {
        c = a+b;
        printf("%d ", c);
        a = b;
        b = c;

        if(c>=input_num)
            break;

    }
}

2018/08/14 22:53

이우경

a=[]
a.append(0)
a.append(1)

n=input()

while a[len(a)-1]<int(n):
    a.append(a[-1]+a[-2])

b=list(map(str,a[0:-1]))
b=",".join(b)

print(b)

2018/08/24 09:57

JW Yoo

n=int(input())
a,b=0,1
lst=[a,b]

while b<=n:
    a,b=b,a+b
    lst.append(b)

print(lst)

2018/09/07 10:40

전형진

import java.util.Scanner;
class Pibonachi {
    public static void main(String[] args) {
        int a = 0;      //f0 , 초기값 0 , 후 fn역할
        int b = 1;      //f1 ,초기값 1, 후 전값을 저장
        int c = 0;      //계산용 공간
        System.out.print("정수값 입력 : ");
        Scanner input = new Scanner(System.in);
        int num = input.nextInt();
        for (int i=1;i<=num;i++) {
            System.out.print(a+" ");    // 수열값 출력
            c = b;      //C에 B(전 값)을 저장
            b = a;      //아래식을 계산하기 전에 A(전 값)을 B에 저장
            a = a + c;  //전값과 자기값을 더함

            if(a>num) { //수열값이 100을 넘으면
                System.out.println();
                break;  //반복문 종료
            }
        }
    }
}

2018/10/05 14:26

13265


fibo = [0,1]

def fibo_cal(n):
    i = 1
    value = 0
    while True:
        i = i + 1
        value = fibo[i-2]+fibo[i-1]
        if value <= n:
            fibo.append(value)
        else:
            break

fibo_cal(30)
print(fibo)

2018/10/25 14:05

Dae Su Jeong

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int num = scan.nextInt();
        for(int i=1;i<=num;i++)
        {
            System.out.println(fibo(i));
        }
    }
    public static int fibo(int n)
    {
        if(n<=1)
        {
            return n;
        }
        else
        {
            return fibo(n-2)+fibo(n-1);
        }
    }
}

2018/10/29 06:30

수빈

최소한 의 코드로 시도해 봅니다.

public class Stating {
    public static void main(String args[]) {
        int count = 3;
        int[] i = {1,1};
        for(int j = 0; j < count; j++) {
            System.out.print(i[j % 2] + ",");
            i[j % 2] += i[(j+1) % 2];
        }

    }
}

2018/11/04 17:49

최시우

import java.util.Scanner;

public class KimSanghyeop
{
    public static void main(String[] args)
    {
        Scanner sc =new Scanner(System.in);

        System.out.print("숫자를 입력하세요.");
        int n=sc.nextInt();

        int a=0,b=1;
        int c=a+b;
        System.out.print(a+" "+b+" ");
        while(c<=n)
        {
            System.out.print(c + " ");

            a=b;
            b=c;
            c=a+b;
        }
    }
}

2018/11/05 15:45

김상협

fibonacci <- function (n){
  fn <- rep(NA)
  fn[1:2] <- c(0, 1)

  i <- 1

  while (fn[i] <= n){
    fn[i + 2] <- fn[i + 1] + fn[i]
    i <- i + 1
  }

  return(head(fn, -2))
}

2018/11/09 13:40

physche

n=int(input('숫자입력: '))
a=0
result =[0,1]

while a < n:

    result.append(result[-1]+result[-2])
    a+=1
print(result)

2018/12/19 15:30

S.H

import java.util.ArrayList;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        ArrayList<Integer> arr = new ArrayList<>();
        arr.add(0);
        arr.add(1);
        int n = scan.nextInt();

        for (int i = 0; i < n; i++) {
            arr.add(arr.get(i) + arr.get(i+1));
            System.out.println(arr.get(i));
        }

    }

}

풀어봤는데 고칠점 지적해주시면 감사하겠습니다!!

2018/12/23 19:22

장희식

fir = 0; sec =1
fibo_lis = []
in_int = int(input("피보나치 수를 몇 번째 항까지 구할까요? : "))

for rep in range(in_int):
    fibo_lis.append(fir)
    thi = fir + sec
    fir, sec = sec, thi

print(fibo_lis)

2019/01/07 19:40

김하마

%피보나치 수열
n=input('몇번째 항까지 출력할 것인가?');
a(1)=0;
a(2)=1;
for i=3:n
    a(i)=a(i-1)+a(i-2);
    if i==n
         fprintf('%d번째까지의 피보나치의 수: %d\n',n);
         disp(a);
         break
    end
end
fprintf('\n')

2019/01/20 19:46

GammaKnight

/*C로 작성*/
#include <stdio.h>

void main()
{
    int Oddnum = 0, Evennum = 1, Maxnum ;
    for (;;)
    {
        Maxnum = 0;
        printf("입력한 수 이하까지의 피보나치 수열을 구합니다.\n");
        scanf("%d", &Maxnum);

        if (Maxnum < 0)
        {
            printf("값이 너무 작습니다");
            continue;
        }
        else break;
    }
    for (;;)
    {
            printf("%d,", Oddnum);
            Oddnum = Oddnum + Evennum;
            if (Evennum > Maxnum) break;
            printf("%d,", Evennum);
            Evennum = Evennum + Oddnum;
            if (Evennum > Maxnum && Oddnum > Maxnum) break;
    }
    printf("\b ");
}

2019/01/22 21:56

Gandcrab

def fib(n):
    fibo = [0,1]
    i = 0
    while True:
        if fibo[len(fibo)-1] > n:
            fibo.pop()
            break
        else:
            fibo.append(fibo[i]+fibo[i+1])
            i += 1
    return fibo

n = int(input())
print(fib(n))

2019/01/31 16:06

D.H.

function fib(n) {
    if (n <= 1) {
        return n;
    } else {
        return fib(n - 1) + fib(n - 2);
    }
}

var tmp = '';

for(var i = 0; i < 10; i++){
    tmp += fib(i) + " " 
}

console.log(tmp);

2019/02/25 23:37

이계민

namespace codingdojang__
{
    class Program
    {
        static void Main(string[] args)
        {
            Fibonacci(10);
        }
        static void Fibonacci(int input)
        {
            List<int> fibonacci_list = new List<int> { 0, 1 };
            for (int i = 0; i < input - 2; i++)
            {
                fibonacci_list.Add(fibonacci_list[i] + fibonacci_list[i + 1]);
            }
            Console.WriteLine(fibonacci_list[input - 1]);
        }
    }
}

2019/02/26 18:14

bat

while True:
    number=int(input("Input a non-negative integer: " ))
    if number==0: print([0])
    elif number==1: print([0,1,1])
    else:
        fib=[0,1,1]
        i=2
        while True:
            i+=1
            t=fib[i-2]+fib[i-1]
            if t<=number: fib.append(t)
            else: break
        print(fib)


2019/02/28 20:37

ykleeac

재귀호출을 써서 만들었습니답

def fib(n):
    if  n == 0: return 0
    if n == 1: return 1
    return fib(n-2) + fib(n-1)

for i in range(10):
    print(fib(i))

2019/03/01 13:33

아도경

def main():
    n=int(input())
    print("="*30)
    #피보나치수열
    def fibo(n):
        if n==1 or n==0 :
            return n
        return fibo(n-2)+fibo(n-1)

    #출력
    for i in range(n):
        print(fibo(i))

2019/03/07 12:07

쨔이

def fibonacci(n):
  if n == 0:
    return 0
  elif (n == 1) or (n == 2):
    return 1
  else:
    return fibonacci(n-1) + fibonacci(n-2)

2019/03/14 00:30

Gerrad kim

비쥬얼 스튜디오로 작성했습니다. 추가로 n 이하의 피보나치 수열의 합을 구하는 프로그램까지 작성해봤어요

#include <stdio.h>

void main() {

    int x;
    printf("x의 값 : ");
    scanf("%d", &x);

    int a = 0, b = 1;
    int c = 1, sum = 0;

    printf("x 이하까지의 피보나치 수열 : %d ", a);
    while (c <= x)
    {
        printf(" %d ", c);
        sum += c;
        c = a + b;
        a = b;
        b = c;
    }

    printf("\nx 이하까지의 피보나치 수열의 합 : %d", sum);

}

2019/03/14 09:29

Albert

def fibonacci(lst,n):
    if lst[-1] > n:
        return lst[:-1]
    else:
        lst.append(sum(lst[-2:]))
    return fibonacci(lst[-2:],n)

fibonacci([0,1],15) [0, 1, 1, 2, 3, 5, 8, 13]

2019/03/20 00:45

dodoman

def fibo(num):
    list=[0,1]
    for i in range(2, num + 1):
        if list[i - 1] + list[i - 2] <= num:
            list.append(list[i - 1] + list[i - 2])
        else:
            break
    print(list)

2019/03/21 23:04

김성근

n = int(input('정수 n입력:'))
if n != 0:
    lst=[0,1]
    while lst[-1] + lst[-2] <= n:
        lst.append(lst[-1] + lst[-2])
    print(lst)
else:
    print(0)

2019/04/08 16:42

김동률

재귀를 사용하면 굉장히 큰 시간이 걸립니다 O(2^N) 까지는 아니더라도 한 함수에서 재귀호출을 2번 사용하므로 꽤나 큽니다. 메모이제이션을 사용하면 O(N)으로 줄일 수 있지만 여기선 단순 출력하는 문제이므로 3개짜리 배열로 !

#include <iostream>
using namespace std;

void fibo(int N)
{
    int ans[3] = {0, 1, 1};
    while(N > 1)
    {
        cout << ans[0] << ',';
        ans[0] = ans[1];
        ans[1] = ans[2];
        ans[2] = ans[0] + ans[1];
        N--;
    }
    cout <<ans[0];
}

int main()
{
    int N;
    scanf("%d", &N);
    fibo(N);
    return 0;
}

2019/05/01 19:59

이기준

n=int(input());inp=[0,1];ans='0 1'
while 1:
    if inp[len(inp)-2]+inp[len(inp)-1]>n:
        break
    ans+=' '+str(inp[len(inp)-2]+inp[len(inp)-1])
    inp.append(inp[len(inp)-2]+inp[len(inp)-1])

print(ans)

기본 내장함수에 있는 join함수를 이용 해 보여 하였지만, 수열이 두자리수 이상이 될 경우, 어떻게 잘라야 할 지 애매해져서 그냥 리스트를 하나 선언 해 두고 출력하느것이 낫겠더군요. 물론 그냥 리스트만으로 해도 되겠지만은, 그냥 문자열로 하여 출력도 하여 보았읍니다. 그나저나 처음으로 난이도 투표를 하여 보았는데, 저의 한표로 난이도가 바뀌어 버렸군요. 미안합니다.^^;;

2019/05/06 20:02

암살자까마귀

#include <stdio.h>

int number_i = 0;
int number_i_plus = 1;
int maximum;
int temporary;

void fibbonaci(int maximum){
    while(number_i_plus < maximum)
    {
    temporary = number_i_plus;
    number_i_plus = number_i + number_i_plus;
    number_i = temporary;

    printf("%d\n", number_i);
    }
}

void main(){
    scanf("%d",&maximum);
    printf("%d\n",number_i);
    fibbonaci(maximum);
}

2019/05/08 16:40

Wonsang Kim

#include <stdio.h>

int main()
{
    int Max, num1=0, num2=1, num3=0;
    printf("input ==>");
    scanf("%d", &Max);

    while (num3 <= Max)
    {
        printf("%d\n", num3);
        num3 = num1 + num2;
        num1 = num2, num2 = num3;
    }
    return 0;
}

c언어로 작성했슴다.

2019/05/12 17:02

김예준

파이썬 3.7.2

n = int(input("원하는 정수 n의 값을 입력하세요\n> "))
result = [0, 1]
m = 1
while result[m-1]+result[m] <= n:
    result.append(result[m-1]+result[m])
    m += 1
print("n 이하의 피보나치 수열 :\n"+str(result)[1:len(str(result))-1])

2019/05/15 17:12

CT_EK

python3.6

input_num = int(input('input num (int) : '))
x1, x2 = 0, 1
while x2 <= input_num:
    print('%d, ' % x1, end='')
    x1, x2 = x2, x1+x2
print(x1)

2019/05/17 20:36

최상혁

n = input(int('type number: '))  -> 인풋을 정수형으로 바꾸어 변수 n 에 저장한것입니다.
a = 0 {
b = 0 -- 변수를 만든것 입니다.
c = 1 }
for i in range(n): -> n 만큼 반복하기입니다.
    c = a + b -> 변수 c 를 변수 a + b 로 하고
    a = b  -> 더하는 숫자들을 바꾸고
    b = c -> b 도 바꿉니다.
    if c < n: -> 변수 c 가 인풋 n 보다 크면 안되니까 조건문을 넣고 
        print(c) -> 만약 변수 c 가 n 보다 작으면 변수 c 를 프린트 하고
    else: -> 아닐땐
        break -> 이 반복문을 깨뜨려(나가) 더이상 피보나치 수열을 만들지 않습니다.


코딩 초보자의 풀이 입니당!

2019/05/18 22:33

Firelight

#피보나치
#n을 입력받아서 n이하의 피보나치 수열을 출력하기
n = int(input())

pibo = []
cnt = 0
while 1:
    if cnt < 2:
        pibo.append(cnt)
    elif cnt >= 2:
        pibo.append(pibo[cnt-2]+pibo[cnt-1])
    if pibo[cnt] > n:
        print(pibo[:cnt])
        break

    cnt+=1

2019/05/20 13:16

이준성

#피보나치
#n을 입력받아서 n이하의 피보나치 수열을 출력하기
n = int(input())

pibo = []
cnt = 0
while 1:
    if cnt < 2:
        pibo.append(cnt)
    elif cnt >= 2:
        pibo.append(pibo[cnt-2]+pibo[cnt-1])
    if pibo[cnt] > n:
        print(pibo[:cnt])
        break

    cnt+=1

2019/05/20 13:18

이준성

#include<stdio.h>

int main(void)
{
    int i, input, a=0, b=1, c=a+b;

    printf("100이하의 정수 중 하나를 입력하세요 : ");
    scanf("%d",&input);

    if(input>=0 && input<=100)
    {
        if(input==0)
            printf("%d",a);
        else
        {
            printf("%d %d ",a, b);
            for(i=0; i < input; i++)
            {
                if(c<=input)
                {
                    printf("%d ", c);
                    a=b;
                    b=c;
                    c=a+b;
                }
            }
        }
    }else
    printf("잘못입력 했습니다.\n");
}

2019/05/21 11:18

No

a=1
b=2
c=a+b
result = 0

while a<=4000000:
    if a%2==0:
        result+=a
    a=b
    b=c
    c=a+b

print(result) #4613732

2019/05/24 12:08

cheer

파이썬 3.7 사용.

def Fibonacci(n): 
    result=[0,1] #초기값.
    while(True): 
        tmp=result[-1]+result[-2]
        if tmp<n: 
            result.append(tmp)
        else:
            break
    return result


if __name__ == '__main__':
    while(True):
        n=input('n을 입력하세요: ')
        try:
            n=int(n)
            if n>0:
                break
            else:
                print('입력 에러. 다시 입력하세요')
        except:
            print('입력 에러, 다시 입력하세요')

    print(Fibonacci(n))

2019/06/06 16:00

왕초보

a = int(input("Write down a number : "))  # type: int
print("You typed {}.".format(a))
print("Let's pibonach this")
b = 1
for i in range(1, a+1):
    b *= i
print("Result is {}".format(b))

2019/06/06 22:24

김선우

maxnumber = 0

while maxnumber < 1:
    maxnumber = int(input('1 이상인 정수를 입력해 주세요 : '))

fibo = [0, 1]

while (fibo[-2] + fibo[-1]) < maxnumber:
    fibo.append(fibo[-2] + fibo[-1])

print(fibo)

2019/06/08 23:15

배우자 파이썬

inp = int(input())

array = [0, 1]

for i in range(1, inp - 1):
    array.append(array[i-1] + array[i])

print(array)

2019/06/17 14:49

파이썬주니어

package Project;

import java.util.Scanner;

public class PBNC {

    public static void main(String[] args) {

        Scanner n = new Scanner(System.in);
        int num = n.nextInt();
        System.out.print("0, ");//미리 0 출력
        int a = 1;//첫번째 수
        int b = 1;//두번째 수
        int c;//세번째 수

        for (int i = 0; i < num; i++) {
            c = a + b;//첫번째와 두번째 를 더해서 세번째값에 넣음
            System.out.print(a + ", ");//첫번째 일단 출력
            a = b;//첫번째수를 이제 두번째 수로 바꾸어줌
            b = c;//두번째수는 세번째 수가 됨
//반복
        }

    }

}

2019/06/18 15:46

wldus

def pibo(n):
    if n == 1:
        return 0
    elif n == 2:
        return 1
    else:
        return pibo(n-2) + pibo(n-1)

print('정수입력: ', end = '')
a = int(input())
print(pibo(a))

2019/06/18 20:56

김형채

public class Fibonacci {

    static int[] calculated = new int[50]; // All elements are initialized to 0 by default

    public static void main(String[] args) {
        int n = 30;
        for(int i=0; i<=n; i++) {
            System.out.print(fibonacci(i)+" ");
        }
    }

    private static int fibonacci(int n) {
        if(n == 0)
            return 0;
        if(n == 1) {
            return 1;
        }
        else if( n == 2)
            return 1;
        else {
            if( calculated[n] != 0)
                return calculated[n];
            else return calculated[n]= fibonacci(n-2) + fibonacci(n-1);
        }
    }
}

2019/06/20 05:24

Seohwan Moon

def Fib(n):
    if n==1: return 1
    if n==2: return 1
    return Fib(n-1)+Fib(n-2)
n=int(input('양의 정수:'))
for i in range(1,n+1):
    print(Fib(i),end='  ')


2019/06/28 18:54

김승규

int main()
{
    int n;
    int prev2Number = 0, prevNumber = 1, currentNumber;

    cin >> n;

    if (n >= 1) cout << prev2Number;
    if (n >= 2) cout << ", " << prevNumber;

    for (int i = 2; i < n; ++i)
    {
        currentNumber = prev2Number + prevNumber;
        cout << ", " << currentNumber;
        prev2Number = prevNumber;
        prevNumber = currentNumber;
    }

    return 0;
}

2019/07/02 15:39

캐니

def fibonachi(n): t = [0,1] while(True): t.append(t[-1]+t[-2]) if t[-1] > n: return t[:-1] break

print(fibonachi(13)) print(fibonachi(15))

2019/07/04 09:50

최은미

def fibonachi(n):
    t = [0,1]
    while(True):
        t.append(t[-1]+t[-2])
        if t[-1] > n:
            return t[:-1]
            break

print(fibonachi(13))
print(fibonachi(15))

2019/07/04 09:51

최은미

N = int(input('Enter int : '))
a = 0; b = 1
while a <= N and b <= N :
    print(a, b, end = ' ')
    a += b
    b += a

2019/07/04 16:40

조현우

temp=0
previous=0
current=1
i=1
while i<=20:
    print(current)
    temp=previous
    previous=current
    current=temp+previous
    i=i+1

2019/07/06 11:48

̇크리철

int n;
cin>>n;
void pivo(int n){
  if(n==0) return 0;
  if(n==1)return 1;
  return pivo(n-1)+pivo(n-2);
}
cout<<pivo(n);`

2019/07/08 00:24

coding boy

n = int(input("숫자를 입력하세요:"))
result = [0,1]
temp = result[-1]+result[-2]
while temp <= n:
    result.append(temp)
    temp= result[-1]+result[-2]
print(result)

2019/07/15 10:35

YAPING CAO

n=int(input(''))
a=0
b=1
print(a,end='')
while n>=b:
    c=a+b
    a=b
    b=c
    print(',%d'%a,end='')

2019/07/16 23:16

유선종

max_num = int(input("Input the number"))
a, b = 0, 1

print('%d,%d' % (a, b), end='')
while 1:
    c = a + b
    if(c >= max_num):
        break
    else:
        print(',%d' %c, end='')
    a = b
    b = c

2019/07/20 00:57

불나방

n= int(input("양의 정수를 입력하세요: "))
p_list = [0, 1]
if n == 1:
    print('0')
elif n ==2:
    print('0, 1')
elif n > 2:
    t = 0
    while t < n-2:
        a = p_list[t]+p_list[t+1]
        p_list.append(a)
        t = t +1
    print(p_list)
else:
    print("양의 정수를 입력해주세요")

2019/07/23 19:31

김다희

def fibo(n):
   num=[0,1]
   while num[0]<n:
      num.append(sum(num))
      print(num.pop(0))

fibo(100)

2019/07/24 07:43

전병수

python

n = int(input())
def fib(index):
    if index == 0:
        return 0
    if index == 1:
        return 1
    if index >= 2:
        return fib(index-2) + fib(index-1)
seq = []
index = 0
while True:
    s = fib(index)
    if s > n:
        break
    seq.append(s)
    index += 1
print(seq)

2019/07/30 16:33

apriori

a = int(input('숫자 입력 : '))
x = list()
x.append(0)
x.append(1)
total = ''
for i in range(0,a):
    if x[i]+x[i+1]>a:
        break
    x.append(x[i] + x[i+1])

for j in range(0,len(x)):
    b = str(x[j])
    total+=b
    total+=', '
print(total)


2019/07/31 19:32

코딩뉴비

def fibo(num):
    a=0
    b=1
    result=0
    listA=[0,1]

    while(1):
        result=a+b
        if(result>num):
            break
        a=b
        b=result
        listA.append(result)

    return listA


result=fibo(15)
print(result)

2019/08/01 14:52

Hwain Choi

python 3.7

num = int(input())

def Fib(n):
    if n==1 or n==2 : return 1
    else: return Fib(n-1)+Fib(n-2)

print([Fib(i) for i in range(1, num+1)])

2019/08/05 01:54

Sechi

num=int(input("정수입력:"))

num1=0
num2=1
result=[num1,num2]
while num2<num or num1<num:
    num3=num1+num2
    num4=num2+num3
    if num3<=num:
        result.append(num3)
        if num4<=num:
            result.append(num4)
    num1=num3
    num2=num4

print(result)

2019/08/06 04:33

박재욱

newlist = [0, 1]

num = int(input("Enter number: "))

for k in range(3, num):
    x = len(newlist)
    y= newlist[x-1] + newlist[x-2]
    newlist.insert(x, y)
    print(newlist)

2019/08/08 19:54

Minseok Choi

num = int(input())
I = [0, 1]
for x in range(0, num):
    k = I[x] + I[x+1]
    if k > num:
        break
    I.append(k)

print(I)

2019/08/14 11:09

수현수

Python 3.7

num = int(input())
a = [0, 1]
while a[-2]+a[-1] < num:
    a.append(a[-2]+a[-1])
print(a)

2019/08/14 14:46

AY

def fibonacci(n):
    if n <= 1:
        return n
    else:
        return fibonacci(n - 1) + fibonacci(n - 2)
for i in range(int(input('Enter a number: '))):
    print(fibonacci(i), end = ' ')

2019/08/15 12:25

박어진

# make list
fibonacci = [0, 1]

# input number what you want
a = int(input())

# algorithm
for i in range(2, a):
    a = fibonacci[i-2] + fibonacci[i-1] # find last list's argument in fibonacci, a
    fibonacci.append(a)                 # append a on fibonacci list

# output
print(fibonacci)

2019/08/16 19:02

이명운

N = int(input())
def fibonacci(n):
    if n == 1:
        return 0
    elif n == 2:
        return 1
    else:
        return fibonacci(n - 2) + fibonacci(n - 1)
i = 0
while True:
    i = i + 1
    if fibonacci(i) <= N:
        print(fibonacci(i), "", end='')
    else:
        break

2019/09/03 23:49

철쇄아

n = int(input())
memo = [0 for i in range(n+1)]
def fibo(n):
    if n == 1 or n == 0:
        memo[n] = n
        return memo[n]
    else:
        if memo[n] > 0:
            return memo[n]
        else:
            memo[n] = fibo(n-1)+fibo(n-2)
            return memo[n]
fibo(n)
print(memo)

2019/09/04 22:33

world Hello

n = int(input('정수 n은?>'))

pibo = [0, 1]


for i in range(n):
    pibo.append(pibo[i] + pibo[i + 1])
    if n < pibo[i+2]:
        break
del pibo[-1]
print(pibo)

2019/09/08 22:41

이지훈

Scanner sc = new Scanner(System.in);
        System.out.print(">> 정수 n을 입력하세요 => ");
        int n = Integer.parseInt(sc.nextLine());
        int[] num = new int[9999];
        int m = 0;

        for(int j=2; j<9999; j++) {
            if(n>2) {
                num[0] = 0;
                num[1] = 1;
                num[j] = num[j-1] + num[j-2];
                if( (num[j]>n) ) {
                    m = j; 
                    break; 
                }

            }
            else if (n==1){
                num[0] = 0;
            }
            else if(n==2) {
                num[0] = 0;
                num[1] = 1;
            }
        }

        for(int i=0; i<m; i++) {
            String str = ((i!=m)&&(i!=0))?", ":"";
            System.out.print(str+num[i]);

        }

        sc.close();

2019/09/09 15:23

yeeun shim

#include <stdio.h>

int main(void)
{
    int a1 = 0, a2 = 1;
    int a3 = 0;
    int n = 0;
    printf("정수 입력: ");
    scanf_s("%d", &n);

    printf("%d %d ", a1, a2);

    while (1)
    {
        a3 = a1 + a2;
        if (a3 > n)
            break;
        printf("%d ", a3);
        a1 = a2;
        a2 = a3;
    }
    return 0;
}

2019/09/09 22:39

이지우

int main()
{
    int n, temp, a = 0, b = 1;
    printf("정수 n을 입력하세요 : ");
    scanf_s("%d", &n);

    while (a < n)
    {
        printf("%d ", a);
        temp = a;
        a += b;
        b = temp;
    }

    printf("\n");
}

2019/09/10 18:13

OverEasy

PHP

$fibonacci = function(int $n) use(&$fibonacci) : int {
    return $n <= 1 ? $n : $fibonacci($n - 1) + $fibonacci($n - 2);
};
$result = [];
foreach (range(0, 7) as $n) {
    $result[] = $fibonacci($n);
}
print_r($result); // [0, 1, 1, 2, 3, 5, 8, 13]

2019/09/11 14:28

d124412

import java.util.Scanner;

public class Fibonacci {
    public static void main(String[] args)
    {
        @SuppressWarnings("resource")
        Scanner scn = new Scanner(System.in);

        System.out.print("n 이하까지의 피보나치 수열을 출력. n값 입력: ");
        int n = 0;

        try {
            n = scn.nextInt();
            int i=0;

            while( fibo(i)<=n ){
                i++;
            }

            for(int j=0; j<i; j++){
                System.out.print(fibo(j) + " ");
            }

        } catch (Exception e) {
            System.out.println("숫자를 입력해주세요");
            e.printStackTrace();
        }



    }

    public static int fibo(int n){
        if(n <= 1){
            return n;
        }else{
            return fibo(n-2) + fibo(n-1);
        }
    }
}

2019/09/16 21:14

최재현

maximum = int(input())
count = 0
a, b = 0, 1
box = []

while count < maximum:
    if count == 0:
        box.append(a)
    elif count == 1:
        box.append(b)
    else:
        box.append(box[count - 2] + box[count - 1])
    count += 1


print(box)

2019/09/18 00:30

농창

#include <iostream>
using namespace std;

int main(void)
{
  int n, i;
  int arr[100]

  cout << "정수를 입력하시오 : ";
  cin >> n;

  for(i=1;i<=n;i++)
      cout << PB(arr,i) << " ";
}

int PB(int* arr, int n)
{
    if (n == 1) 
       {         
          arr[0] = 0;
          return 0;
        }
    else if (n==2)
        {         
          arr[1] = 1;
          return 1;
        }
    else if (n>0)
     {
       arr[n-1]= arr[n-2]+arr[n-3];
       return arr[n-1];
    }
}

2019/09/18 18:17

eunhyu tb

inp = int(input("input :"))
result = [0, 1]
for k in range(2, inp) :
    result.append(result[k-2]+result[k-1])
result

결과

input :10 [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

2019/09/27 14:42

GG

n=int(input("정수를 입력해주세요(1 이상의 정수):"))
plist=[0,1]
i=2
while True:
    new=plist[i-1]+plist[i-2]
    if new <= n:
        plist.append(new)
    else:
        break
    i=i+1
print(plist)

2019/09/29 21:52

김다희

n=int(input())  #n값을 int형태로 input
list=[0,1]      
for i in range(1,n-1):  #0,1이 기존에 있으므로 2개 뺌
    list.append(list[i-1]+list[i])  #바로앞 수와 더해서 리스트에 추가

print(list)

2019/09/29 22:18

김보리

(2)

def fib(n):
    list=[0,1]
    i=0
    for i in range(2,n):
        list.append(list[i-2]+list[i-1])
    print(list)
    return ''
n=int(input("정수 n값을 입력하시오."))
print(fib(n))

2019/09/30 22:54

김보리

# 피보나치 수율
value = int(input("몇개의 피봇 : "))
pivo = [0,1]
for i in range(value-2):
    pivo.append(pivo[i]+pivo[i+1])
print(pivo)

2019/10/02 19:25

semipooh

n=input('피보나치 수열을 몇 이하까지 구할까? : ')
n=int(n)
a=0
b=1

if n<0:
    print('음수의 피보나치 수는 없다.')
else:
    while a<=n:
        print(a)
        a,b=b,a+b

파이썬입니다

2019/10/13 17:09

Shiroha

Python 3.7.4

limit = int(input('한계 숫자를 입력하세요:'))
Lpro = [0, 1]

while (Lpro[-2]+Lpro[-1]) <= limit:
    Lpro.append(Lpro[-2]+Lpro[-1])

print(Lpro)

2019/10/15 22:33

Koh KT

n_number=input('Enter number: ')

fibonacci=list()

num_1=1
num_2=0
fibo=2

fibonacci.append(num_1)
fibonacci.append(fibo)

while True:
    num_2=fibo
    fibo+=num_1
    if fibo<int(n_number):
        fibonacci.append(fibo)
        num_1=num_2
    elif fibo>int(n_number):
        break


print(fibonacci)

2019/10/25 10:07

생선집알바

import java.util.Scanner; public class FibonacciSequence2 { public static void main(String[] args) { Scanner fibo = new Scanner(System.in); //int input = fibo.nextInt(); 이문장의 경우 Scanner에서 입력받은 값을 nextInt 메소드로 입력받은 후 input 변수에 대입. int n = fibo.nextInt(); int a = 0, b = 1;

    if(n==0) {
        System.out.println(0);
    }
    if(n==1) {
        System.out.println(0);
        System.out.println(1);
        }
    if(n!=0&&n!=1) {
        System.out.println(0);
        for(int i=0; i<n-2; i++) {
            if(n>=a&&n>=b) {
                if(a<b) {
                    a+=b;
                    System.out.println(b);
                }
                else {
                    b+=a;
                    System.out.println(a);
                }
            }
            else {
                System.exit(0); 
            }
            }
        }
    }

}

2019/10/28 20:18

big Ko

import java.util.Scanner; public class FibonacciSequence2 { public static void main(String[] args) { Scanner fibo = new Scanner(System.in); //int input = fibo.nextInt(); 이문장의 경우 Scanner에서 입력받은 값을 nextInt 메소드로 입력받은 후 input 변수에 대입. int n = fibo.nextInt(); int a = 0, b = 1;

    if(n==0) {
        System.out.println(0);
    }
    if(n==1) {
        System.out.println(0);
        System.out.println(1);
        }
    if(n!=0&&n!=1) {
        System.out.println(0);
        for(int i=0; i<n-2; i++) {
            if(n>=a&&n>=b) {
                if(a<b) {
                    a+=b;
                    System.out.println(b);
                }
                else {
                    b+=a;
                    System.out.println(a);
                }
            }
            else {
                System.exit(0); 
            }
            }
        }
    }

}

2019/10/28 20:20

big Ko

파이썬 입니다.

def fibonacci(n):
    a=0
    b=1
    print('0', end='')
    while b <= n:
        print(f',{b}',end='')
        a,b=b,a+b 

함수형태로 감싸봤습니다.

2019/11/04 17:36

data big

파이썬과 함께.. def num(n): if n == 0: return n + 1 if n == 1: return 1 return num(n-2) + num(n-1)

for i in range(): #빈칸에 임의의 정수를 넣어 피보나치 수열을 counable 하게끔 함 print(num(i))

2019/11/04 22:18

박지훈

def num(n):
    if n == 0:
        return n + 1
    if n == 1:
        return 1
    return num(n-2) + num(n-1)

for i in range(): #빈칸에 임의의 정수를 넣어 피보나치 수열을 counable 하게끔 함
    print(num(i))

파이썬으로 재업로드만 세번째 ㅠㅠ

2019/11/04 22:20

박지훈

n = int(input('자연수를 입력하세요:'))

a = 0
b = 1

print(a, end= '')

while b <= n:
    print(', %d' %b, end = '')
    a, b = b, a+b

2019/11/14 14:24

재리

def fib(n):
    if n == 0: 
        return 0
    if n == 1 or n == 2:
        return 1
    else:
        return fib(n-2) + fib(n-1)

def test(n):
    for i in range(n):
        print fib(i)

test(10)

2019/11/15 13:53

jcchoi

def fib(n): a=0 b=1 c=a+b i=0 while i < n: i=i+1 a=b b=c c=a+b print(a,"+",b,"=",c)

2019/11/22 12:45

Kong

파이썬 3.6 입니다

def fibo(n):
    result = [0, 1]

    while (result[-1] + result[-2]) < n:
        result.append(result[-2] + result[-1])
    return result

print(fibo(14))

2019/11/27 17:59

vkospi

list_pibo = [0, 1]
n = int(input("n의 값을 입력하시오."))
sum = 1
i = 0
while True:
    sum = list_pibo[i] + list_pibo[i+1]
    i += 1
    if sum < n:
        list_pibo.append(sum)
    else:
        break
print(list_pibo)

2019/12/12 16:45

김민규

파이썬입니다.

n= int(input('숫자를 입력하세요'))

a, b= 0, 1
print('0', end='')
while b <= n:
  print(', {}'.format(b), end='')
  a, b= b, a+b


2019/12/18 11:27

Sean

n1 = 0
n2 = 1
n3 = 0
num = input("피보나치 수의 상한 값을 입력하세요: ")
while n3 < int(num):
    n1 = n2
    n2 = n3
    n3 = n1+n2
    print(n3)

ex)20을 입력 0+1=1 1+1=2 1+2=3 2+3=5 3+5=8 5+8=13 8+13=21

2019/12/21 21:32

프리

X = int(input('정수를 입력하세요'))

lst = [0,1]
cnt = 0

while True:
    new_item = lst[cnt] + lst[cnt+1]
    if new_item <= X:
        lst.append(new_item)
        cnt += 1
    else:
        break

print(lst)

2019/12/22 17:08

py_code

int* pibonazziz(int n)
{
int pi_array_size_counter;

int *temp = new int;
int pi_array_size_counter =0;
for(int i =0; i<n;i++)
{
i ==0 ? temp[0] = 0: i==1? temp[1] = 1:0;
i>1? temp[i] = temp[i-1]+temp[i-2]:0;
pi_array_size_counter++;
}

int result[pi_array_size_counter];
for(int i=0;i<pi_array_size_counter;i++)
{
result[i] = temp[i];
}
delete[] temp;
return result;
}

2019/12/22 17:24

Anderson

num=input("정수 n을 입력하시오: ")
n=int(num)
list = [0,1]

def fo(n):
    if n==0:  #0도 정수이므로 0을 입력했을 시 [0]을 받기 위함
        del list[1]
        return list
    while list[-1]+list[-2] <= n:
        list.append(list[-1]+list[-2])
    return list
print(fo(n))

2019/12/24 17:45

박시원

a=0 b=1 Fibo =[]

n = int(input("How long do you want Fibonazi to go?"))

if n == 1:

Fibo.append(a)

print(Fibo)

elif n == 2:

Fibo.append(a)

Fibo.append(b)

print(Fibo)

else : Fibo = [a,b]

for i in range (3,n+1) :

    i+=1

    c = a + b

    Fibo.append(c)

    a = b

    b = c


print (Fibo)

2019/12/28 14:46

HyukHoon Kim

incldue

using namespace std;

int main() { cout<<"test"<<endl; }

2020/01/01 15:33

박종근

n = int(input("값을 넣으세요!: "))

a = 0

print(a)

b = 1

while True:

print(b)

c = a + b

a = b

b = c

if b > n :
    break

2020/01/08 17:46

김희준

inNum = int(input("Put the limit number"))

fiboLst = [0,1]
tmpLst = 0
outLst = [0,1]

while True:
    tmpLst=(fiboLst[0]+fiboLst[1])
    outLst.append(tmpLst)
    fiboLst[0] = fiboLst[1]
    fiboLst[1] = tmpLst

    if tmpLst>=inNum:
        break

print(outLst)

2020/01/09 18:21

Jung Marco

n=int("n=")
a=0
b=1
c=0
result=[]
while c<=n:
    c=a+b
    a=b
    b=c
    result=result+[c]
print[result]

2020/01/14 12:47

Michael

파이썬 3 수열을 리스트에 저장하지 않고 출력만 했습니다.

n = int(input())

x, y = 0, 1

def Fibonacci_fn(a,b): # b를 a로 옮기고 b는 a+b로 출력
    return b, a+b

while x <= n:
    print(x,end='')
    x, y = Fibonacci_fn(x,y)
    if x <= n: print(end=', ')

2020/01/16 22:03

우재용

public class Fibonacci {

    int fibonacci(int n) {
        if(n== 0 || n==1) {
            return n;
        }
        else{
            return fibonacci(n-2) + fibonacci(n-1);
        }
    }

}

``````{.java}
public class Fibonacci {

    int fibonacci(int n) {
        if(n== 0 || n==1) {
            return n;
        }
        else{
            return fibonacci(n-2) + fibonacci(n-1);
        }
    }

}
import java.util.Scanner;

public class FibonacciArray1 {
    public static void main(String[] args) {
        Fibonacci fibo = new Fibonacci();
        Scanner Sc = new Scanner(System.in);

        System.out.print("정수를 입력하시오: ");
        int n = Sc.nextInt();
        int i=0;
       while(fibo.fibonacci(i)<=n) {
           i++;
       }
       for(int l=0; l<i; l++) {
           System.out.print(fibo.fibonacci(l)+" ");
       }
        Sc.close();
    }
}

2020/01/20 19:38

김강민

def pibonacci(n):
    result = [0,1]
    for i in range(0,n):
        result.append(result[i]+result[i+1])
        if result[i+2] > n:
            break
    del result[-1]
    print(result)

2020/01/26 18:38

꺼비

num=int(input())

fibonach=0
fibonach_pre=1
print('0',end=' ')
for i in range(1,num+1):

    print(fibonach,end=' ')
    fibonach,fibonach_pre=fibonach+fibonach_pre,fibonach

2020/01/29 21:12

생선집알바

def fib(n): if n == 0 : return 0 if n == 1 : return 1 return fib(n-2) + fib(n-1)

for i in range(10): print(fib(i))

2020/02/06 17:08

이국성

파이썬입니다.

def pib(num):
    i=1
    a=[0,1]
    while i<num:
        a.append(a[i-1]+a[i])
        i=i+1

    return a

print(pib(15))

>>[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610]

2020/02/10 10:18

지창현

def fibonacci(n):
    n = int(input('정수를 입력하세요:'))
    a, b = 0,1
    answer = [0,1]
    while b <= n:
        answer.append(a+b)
        a, b = answer[-2], answer[-1]
        if answer[-1] > n:
            answer.pop()
            break
    return answer

2020/02/14 09:49

KMH

파이선 3.8

def find_under_Fibonacci(num):
    Fibo = [0, 1]
    while 1:
        Fibo.extend([Fibo[-2] + Fibo[-1]])
        if Fibo[-1] > num:
            return Fibo[:-1]

print("-- 100 이하의 피보나치 수들 --")
print(find_under_Fibonacci(89))

2020/02/25 21:44

우제훈

n = int(input())

l=[0,1]

for i in range(2,n):
    l.append(l[i-1]+l[i-2])

print("{0} 이하까지의 피보나치 수열:".format(n), l)

2020/02/26 11:25

황예진

set=[0,1]
n=13
for i in range(n):
   if set[i]+set[i+1] >n:
       break
   else:
       set.append(set[i]+set[i+1])

2020/03/02 16:54

sunny

def Lower_Fib(num):
    Cu1=1
    Cu2=0
    Mid=0
    while Cu2<=num:
        Mid=Cu2
        Cu2+=Cu1
        Cu1=Mid
        print(Cu1, end=" ")
print(Lower_Fib(int(input())))

2020/03/03 13:30

Caplexian _

print ("n?",end="")
num=int(input())
a=0
b=1
print(a)
print(b)
c=a+b

while (c<=num):
print (c)
a=b
b=c
c=a+b

2020/03/05 00:23

Buckshot

파이썬으로 만들어 봤어요

while True:
    try:
        a = int(input("MAX\n:"))
        break
    except:
        pass

b = 0
c = 1

list_1 = []

list_1.append(b)
list_1.append(c)


while True:
    b += c
    list_1.append(b)

    if list_1[-1] > a:
        del (list_1[-1])
        break

    c += b
    list_1.append(c)

    if list_1[-1] > a:
        del(list_1[-1])
        break


print("{}".format(list_1))

2020/03/05 19:18

Amsters

fibo=[] n=int(input()) for i in range(n): if i==0 : fibo.append(0) elif i==1: fibo.append(1) else: fibo.append(fibo[i-1]+fibo[i-2]) print(fibo[n-1])

2020/03/06 13:24

sotmef222

i = 0
a = 0
b = 1

press = int(input("몇 까지 피보나치 수열을 이어갈 지 입력하시오: "))

print(a) # 0
print(b) # 1

while i != press:
    a = a + b
    if a > press:
        break
    else:
        print(a) # a = 1
    b = a + b # b = 2 
    if b > press:
        break
    else:
        print(b)
    i += 1

2020/03/09 20:12

안재길

n=int(input("Input the number of terms you want: "))
m=1

a=1
b=0
c=0
print(b)
print(a)

while m<n:
    c = b
    b = a
    a=b+c
    print(a)
    m+=1

2020/03/09 20:40

여종헌

i = int(input('몇 번째 피보나치 수열까지 구할지 작성하시오 : '))
j = [0, 1]

def Fibonacci_Sequence(a):
    for ii in range(a-2):
        j.append(int(j[ii]+ j[ii+1]))
    print(j)

Fibonacci_Sequence(i)

2020/03/10 19:17

WooChan Jeon

# 피보나치 수열이란, 첫 번째 항의 값이 0이고 두 번째 항의 값이 1일 때, 이후의 항들은 이전의 두 항을 더한 값으로 이루어지는 수열을 말한다.
# 인풋을 정수 n으로 받았을때, n 이하까지의 피보나치 수열을 출력하는 프로그램을 작성하세요

n = int(input("整数を入力してください。"))
i = 0
result = [0, 1]

while result[-1] + result[-2] <= n:
    result.append(result[-1] + result[-2])
    i = result[-1]

print(result)

2020/03/11 11:21

inca1735

user_in = int(input())

x = [0,1] y = []

if user_in < 2: print(x[0]) elif user_in <3: print(x[0], x[1]) else: for i in range(2,user_in): y = x[-1] + x[-2] x.append(y)

print(x)

2020/03/11 16:07

skyrunner

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>


void main()
{
    int n;
    int p1 = 0 , p2 = 1, p;

    printf("정수를 입력해 주세요.");
    scanf("%d", &n);
    p = 1;
    if (n < 0)
    {
        printf("해당 수 이하의 피보나치 수가 없습니다.");
    }
    else if (n == 1)
    {
        printf("0");
    }
    else if (n == 2)
    {
        printf("0, 1, 1");
    }
    else
    {
        while (p <= n)
        {
            printf("%d ", p);
            p = p1 + p2;
            p1 = p2;
            p2 = p;
        }
    }
}

2020/03/13 00:44

Seung Hyun Kim

파이썬

#입력 : 정수 n
#출력 : n이하까지의 피보나치 수열

n = int(input("정수 n을 입력하라"))

a=0
b=1
print(a,end=" ")

while True:
    if b<=n:
        print(b, end=" ")
        a,b=b,a+b
    else : break

2020/03/17 19:09

신지환

PYTHON

def fib(n):
    a, b = 0, 1
    while a <= n:
        print(a, end=' ')
        a,b = b, a+b
    print()

print(fib(13))

2020/03/17 21:09

장래희망코인물

val = int(input("숫자를 입력하시오: "))

pre = 0
i = 1
print(pre, ", ", end="")
while pre+i <= val:
    print(pre + i, ", ", end="")
    pre = i
    i += 1

2020/03/19 01:13

뤼크

val = int(input("숫자를 입력하시오: "))

def fibonacci(n):
    a = [0, 1]
    while n >= (a[-1] + a[-2]):
        a.append(a[-1] + a[-2])
    print(a)

fibonacci(val)

2020/03/19 01:16

뤼크

#include <iostream>
using namespace std;

int FiboNachi(int n) {
    if (n == 1)return 0;

    if (n == 2)return 1;

    return FiboNachi(n - 2) + FiboNachi(n - 1);
}

int main() {
    //13: 0,1,1,2,3,5,8, 13
    int num;
    cout << "값을 입력하세요 :";
    cin >> num;

    for (int i = 1; i < num; i++)
        if (FiboNachi(i) <= num)cout << FiboNachi(i) << " ";
}

2020/03/19 17:08

++C

def pibonachi(first,second,last): #첫번째, 두번째로 시작하는 피보나치 수열을 last 값만큼 구한다. 
    result = []
    result.append(first)
    result.append(second)
    for i in range(1,int(last)+1): 
        sum=result[i-1]+result[i]
        if sum <=last:
            result.append(result[i-1]+result[i]) 
        else: break
    return result

a= pibonachi(0,1,int(input("숫자를 입력하세요")))
print(a)

2020/03/25 20:46

우당탕탕탕

num = int(input())

sequence_ = [0, 1]
a = 0
b = 1
nxt_ = 0 

while nxt_ <= num:
    nxt_ = a+b
    a = b
    b = nxt_ 
    if nxt_ > num:
        print(sequence_)
        break
    sequence_.append(nxt_)

2020/03/31 17:44

기둘비

x = int(input("x  "))
num = [0, 1]

while 1 :
    new = num[-2] + num[-1]

    if new < x :
        num.append(new)

    else :
        break

print(num)

2020/04/02 21:51

조민섭

n=int(input("숫자를 입력하세요 : "))

def pib(num):
    if num==1:
        return 0
    elif num==2:
        return 1
    else :
        return pib(num-2)+pib(num-1)

for i in range(1,n+1):
    print(pib(i),end=' ')

2020/04/09 11:28

조윤재

+1 이렇게 하면 20까지 피보나치가 아니라 20개의 피보나치 수열을 출력합니다 - yhpdoit, 2020/04/10 11:49
num = 10

def pibo(num) :
    if num == 1 : return 0
    elif num == 2 : return 1
    else : 
        return pibo(num-2) + pibo(num-1)

print([pibo(num) for num in range(1,num+1)])

2020/04/09 16:24

Polarbear1111

+1 역시 10개의 피보나치 수열을 출력합니다 문제가 원하는건 정수 이하까지 피보나치 수열입니다 - yhpdoit, 2020/04/10 11:50

파이썬 풀이입니다.

maxNumber=int(input("정수를 입력하세요 : "))
value=0
numList=[0,1]
if maxNumber==0:
    print("List : ",[0])
elif maxNumber==1:
    print("List : {}".format(numList))
else:
    while(True):
        addValue=numList[value]+numList[value+1]
        if addValue>maxNumber:        
            break        
        numList.append(addValue)
        value+=1
    print("List : {}".format(numList))

2020/04/10 11:47

yhpdoit

n=int(input("입력 : "))
list_p=[]
cur=0
last=1
while True:
    temp=last
    last+=cur
    list_p.append(cur)
    cur=temp
    if(cur>n):break

print(list_p)

2020/04/20 22:08

kim center


n=int(input(' 수열  리미트? : '))

piv=[0,1]

for i in range(n):
    piv+=[piv[-1]+piv[-2]]
    if piv[-1]>n : break

print(piv[0:-1])

2020/04/21 01:08

양양짹짹

def fib(n):
    result = [0, 1]
    if n < 1:
        print([0])
    elif n <2:
        print([0, 1, 1])
    else:
        i = 0
        while result[-1] < n:
            result.append(int(result[i]) + int(result[i+1]))
            i += 1
            if  result[-1] > n:
                print(result[:-1])
                break
            print(result)


fib(1)

2020/04/21 23:04

ptjddn95

def make_fibo(num):
    i = 2
    fibo_list = [0, 1]

    while True:
        fibo_value = fibo_list[i-2]+fibo_list[i-1]
        if fibo_value > num:    
            break
        else:
            fibo_list.append(fibo_value)
        i += 1
    return fibo_list

num = int(input('Enter number: '))
print(make_fibo(num))

2020/04/22 10:21

잘해보자

def p(n):
    a = 0
    b = 1
    c = a + b
    result = [a]
    while c < n:
        result.append(c)
        c = a + b
        a = b
        b = c
    return result

print(p(100))

2020/04/22 13:43

umtitled

int main(void) {
    int n;
    printf("인풋 정수 입력: ");
    scanf("%d", &n);
    printf("0, 1, ");
    int arr[100] = {0,1,};
    for (int i = 2;; i++) {
        arr[i] = arr[i - 2] + arr[i - 1];
        if (arr[i] > n)
            return 0;
        else
            printf("%d, ", arr[i]);
    }
}

c로 풀어봤습니다. 배열을 사용하지않고 풀어보려했으나 힘들어서 포기했습니다

2020/04/26 20:33

ᄀᄉ

import java.util.ArrayList;
import java.util.Scanner;

public class Q069{

    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.print("Input : ");
        int n = scan.nextInt();
        ArrayList<Integer> result = new ArrayList<Integer>();
        for(int i=0; i<n; i++) {
            if(i==0||i==1) {
                result.add(i);
            }
            else if(i>1) {
                result.add(result.get(i-1)+result.get(i-2));
            }
        }
        System.out.println("result : " + result);
        scan.close();
    }
}

java

2020/05/03 14:05

Daniel Park

def fib_seq(n):
    seq_list = [0, 1]
    while seq_list[-1] <= n:
        seq_list.append(seq_list[-1] + seq_list[-2])
    return seq_list[:-1]

2020/05/06 17:57

김준혁

n = input()
i = 0
a = [0,1,1]

while a[-1] <= int(n):
    if (a[-1] + a[-2]) > int(n):
        break
    else:
        a.append(a[-1] + a[-2])
        i += 1
print(a)

2020/05/07 00:39

Money_Coding

n = int(input('숫자를 입력하세요: '))
F = [0, 1]
while (F[-1] + F[-2]) <= n:
    F.append(F[-1] + F[-2])
print(F)

2020/05/14 17:34

재미있는영상어디없나

def fibonacci(n): if n == 0: return 0 if n == 1: return 1 return fibonacci(n-2) + fibonacci(n-1)

insert = int(input("insert : ")) for i in range(insert): print(fibonacci(i))

2020/06/01 09:39

mir

#Fibonacci_numbers.py

fibonacci_numbers = [0,1]

n = int(input("input a positive number : "))

i=0
while(fibonacci_numbers[i]+fibonacci_numbers[i+1] <= n):
    fibonacci_numbers.append(fibonacci_numbers[i]+fibonacci_numbers[i+1])
    i = i+1

print(fibonacci_numbers)

2020/06/07 00:27

Chris

n=int(input())
a=[0, 1]
while a[-1]<=n:
    a.append(int(a[-1])+int(a[-2]))

print(a[:-1])   

2020/06/11 06:56

SREBP1c

def pivo(n):
    a1=0
    a2=1
    a3=0
    a=[a1,a2]
    if n==0 :
        print(a[0])
    elif n==1 :
        print(a[0],a[1],a[1])
    elif n > 1 :
        while a3 < n :
            a3 = a1 + a2
            if a3 <= n :
                a.append(a3)
            a1 = a2
            a2 = a3
        print(a)


2020/06/17 16:15

YSM

package codingdojang;

import java.util.Scanner;

public class example006_피보나치수열 {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);


        while(true) {
            System.out.println("정수 n을 적어주세요.");
            int intValue = 0;

            try {
                intValue = sc.nextInt();
                if(intValue <1) {
                    System.out.println("1보다 적은 수를 적을 수 없습니다.");
                }else {

                        valueList(intValue);

                }

                System.out.println(valueList(intValue));

            }catch(Exception e) {
            System.out.println("정수를 적어주세요.");
            }


        }
    }

    public static int valueList(int num) {
        if(num <= 1) 
            return num;
        else {
            return valueList(num-2) + valueList(num-1);
        }
    }


}


2020/06/19 19:30

Y재진

#include <iostream>
using namespace std;
int main()
{
    int input = 0, max = 0;
    cin >> input;
    int arr[100];
    for (int i = 0; max < input; i++) {
        if (i < 2) {
            arr[i] = i;
            cout << arr[i] << " ";
        }
        else {
            arr[i] = arr[i - 1] + arr[i - 2];
            if (arr[i] < input)cout << arr[i] << " ";
        }
        max = arr[i];
    }
    return 0;
}

C++ array

2020/07/03 00:46

채수현

def fibo(n):
    s = []
    for i in range(10):
        if i > 1:
            s.append(s[i-1] + s[i-2])
        else:
            s.append(i)
    return s

print(fibo(10))

2020/07/10 15:26

Chang-Hoon Lee

import java.util.Scanner;

public class main {

    public static void main(String[] args) {

        Scanner scan = new Scanner(System.in);
        System.out.print("어디까지 출력하실?");
        int n = scan.nextInt();

        int[] pabonaci = new int[100];
        pabonaci[0] = 0;
        pabonaci[1] = 1;

        for(int i=0;i<100;i++)
        {
            if(i!=0 && i!=1)
                {
                pabonaci[i] = pabonaci[i-1] + pabonaci[i-2];

                }
            if(pabonaci[i]>n)
                break;
            System.out.print(pabonaci[i]+ " ");
        }
    }

}

2020/07/14 11:07

허병우

public class Multiples {
    public static void main(String[] args){
    int under=100;
    int x1=0;
    int x2=1;
    int sum=0;
    while(sum<under){
        System.out.println(sum+"\n");
        sum=x1+x2;
        x1 =x2;
        x2=sum;
    }

}
}

2020/07/15 23:37

문정민

public static int[] makePibo(int num) {
        int[] result = new int[num];
        result[0]=0;
        result[1]=1;

        for(int j=2;j<num;j++) {
            result[j]=result[j-2]+result[j-1];
        }
        return result;
    }

2020/07/21 00:13

이소영

def Fibo(n):
    arr = [0,1]
    i=0
    while (arr[i]+arr[i+1])<n:
        arr.append(arr[i+1]+arr[i])
        i+=1
    print(arr)

num = int(input("정수 n을 입력세요. 피노나치수열 출력!"))
Fibo(num)

2020/07/22 15:10

JaeWon Lee

N = input("> ")

L=[0,1]
def fibonachi(L):
    L.append(L[-1]+L[-2])

while L[-1]<int(N):
    fibonachi(L)
L.pop()
print(L)

2020/07/27 15:50

김병관

"""
파이썬을 이용하였습니다.
이용자가 정수값을 입력하는 방식을 사용하였고, 양의 정수 이외에 다른 것을 입력하면 프로그램이 끝나도록 만들었습니다.
리스트 인덱싱과 while 반복문을 이용하여 피보나치 수열을 구하는 방식입니다.
"""
num = input("Input positive integer: ")
try:
    num = int(num)
    if num<=0:
        print("Error! Input positive integer please!")
    else:
        lst = [0,1]
        n=0
        c=int()
        while c<=num:
            c = lst[n]+lst[n+1]
            if c>num :break
            lst.append(c)
            n = n+1
        print(lst)
except:
    print("Error! Input correct positive integer please!")

2020/07/29 02:18

코딩수련수련자

n = int(input("정수 n = "))

p=[0,1]

while p[len(p)-1] <= n:
    p.append(p[len(p)-2]+p[len(p)-1])

del p[len(p)-1]
print(p)

2020/08/01 20:36

송인성

package Lv_1;

import java.util.Scanner;
import java.util.ArrayList;

public class fibonacci {
    int size;
    ArrayList<Integer> list = new ArrayList<Integer>();

    //피보나치 함수 생성
    public fibonacci(int n) {
        this.size = n;
        list.add(0);
        list.add(1);
        if(size<1) {
            list.remove(1); //정수 0을 입력하였을 시 1삭제
        } else {
            for(int i=2; i<(size*3); i++) { //3이하의 수 입력시 오출력 방지를 위해 배열 크기 2배화
                list.add(list.get(i-2)+list.get(i-1));
                if(list.get(i)>size) {
                    list.remove(i);
                    break;
                }
            }
        }

    }
    //피보나치 함수 출력
    public void print() {
        System.out.println(size + " 이하 까지의 피보나치 수열");
        System.out.println(list);
    }

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        Scanner sc = new Scanner(System.in);
        int i;

        while(true) {
            System.out.print("정수를 입력하세요 : ");
            i = sc.nextInt();
            if(i<0) {
                System.out.println("0 이상의 정수 입력 필요");
            } else break;
        }
        fibonacci fi = new fibonacci(i);
        fi.print();     
    }

}

2020/08/03 16:32

김승현

import java.util.Scanner;
public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int sum = 0;
        int[] arr = new int[sc.nextInt()];
        arr[0] = 0;
        arr[1] = 1;
        System.out.print("0, 1");
        for(int i=2;i<arr.length;i++) {
            arr[i]=arr[i-2]+arr[i-1];
            System.out.print(", "+arr[i]);
        }

    }

2020/08/03 16:36

정우

wjdtn=0

wjdtn = int(input("정수 값을 입력하시오 : "))

a,b = 0,1

while 1:
    print (a,end = " ")
    if a >= wjdtn or b > wjdtn:
        break
    a = a+b

    print (b,end = " ")
    if b>= wjdtn:
        break
    b = b+a

코딩 이제 막 시작한 병아립니다. 조언 부탁드려요

2020/08/04 16:20

gree Yu

plist=[0,1]
num=0

# 항이 12개까지인 피보나치 수열
for num in range(0,10):

    plist.append(plist[num]+plist[num+1])
    num=num+1

newValue=int(input("숫자를 입력해주세요:"))

for i in plist:
    if i<=newValue:
        print(i)

2020/08/04 21:24

‍조민선[ 학부재학 / 미디어학부 ]


number = int(input("1 이상의 정수 n을 입력하세요 : "))
result = [0,1]
m = 0

while int(result[m]+result[m+1]) <= number:
    result.append(result[m]+result[m+1])
    m += 1

print(result)

초보입니다. 피드백 주시면 감사하겠습니다. :)

2020/08/11 13:45

Juna


def Pibo(n):
    a = [0,1]
    if n == 0:
        return 0
    if n == 1:
        return [0,1]
    else:
        for i in range(2,n+2):
            c = a[i-1]+a[i-2]
            if c >= n:
                break
            else:
                a.append(c)
                continue
    print(a)
    return a

2020/08/19 23:05

Hans920

def fibo(i):
    l = [0, 1]
    while True:
        r = int(l[-1]) + int(l[-2])
        if int(r) < int(i):
            l.append(r)
        else:
            break
    return l

while True:
    ib = input("피보나치 수열 구하기, 원하는 숫자 입력(나가기 : q) : ")
    if ib == "q":
        break

    try:
        n = int(ib)
        if n > 0:
            result = fibo(n)
            print("{} 이하 피보나치 수열 => {}".format(n, result))
            print("")
        else:
            print("'0'보다 큰 수를 입력하세요")
            input("Enter를 치세요~")
            print("")
            continue

    except:
        print("잘못된 입력입니다.")
        print("")

2020/08/21 13:54

SIS

n = int(input("정수 입력>>> "))

def fibonacci_seq(num):
    sequence_list = [0, 1]

    i = 2
    while (sequence_list[i - 2] + sequence_list[i - 1]) <= num:
        sequence_list.append(sequence_list[i - 2] + sequence_list[i - 1])
        i += 1

    return sequence_list

print(fibonacci_seq(n))

2020/08/30 01:14

YoungJun-Ryu

n=int(input())
a=0
b=1
result=[a]

while b<=n:
    result.append(b)
    temp=b
    b=a+b
    a=temp

print(result)

2020/09/02 15:13

ShinKyu Kang

def run(n):
    pre = 0
    cur = 1
    print('0', end='')
    while cur <= n:
        print(f', {cur}', end='')
        pre, cur = cur, pre + cur
    print("")

run(5)

2020/09/07 01:00

BigMango

n=int(input))

result=[ ] for i in range(n):

if i==0:

result.append(i)

elif i==1: result.append(i)

else: i=result[-2] + result[-1] result.append(i)

print(result)

2020/09/08 07:02

kim ih

import java.util.*;

public class test4 {
    public static void main(String[] args) {
        int n = 10;
        Stack<Integer> list = new Stack<>();
        list.push(0);
        list.push(1);
        System.out.print("0,");

        while(true) {

            int a = list.pop();
            int b = list.pop();

            int c = a + b;

            if(c > n) {
                break;
            }
            System.out.print(c+",");

            list.push(c);
            list.push(b);
        }
    }
}

스택을 이용해서 풀어봤습니다,

2020/09/11 17:39

nazunamoe

#include<stdio.h>

/*
파보나치 수열 구하기

http://codingdojang.com/scode/461
*/

int main(){
    int a1=0;
    int a2=1;
    int n=2;
    int temp,input;
    printf("n이하의 파보나치 수열을 구하자\nn값은?:");
    scanf("%d",&input); 
    printf("1:0\n2:1\n");
    while(1)
    {
        temp=a1+a2;
        a1=a2;
        a2=temp;
        n++;
        if (input>temp)
            printf("%d:%d\n",n,temp);
        else
            break;
    }
    return 0;
} 

C언어- while안에 조건문을 넣으면 입력한 숫자에서 한번 더 계산하네요 그래서 if문을 넣었습니다만... 어렵네요 do while도 같은 결과가 나오는데 뭘까요

2020/09/12 23:00

June

n = (int(input("give me numbers: ")))

def p(n) a = [] for i in range(n): a.append(i) if len(a) > 1 and i <= a[-1]: c = i + a[i-2] a.append(c) return a print(a)

2020/09/16 09:18

Chris Cheon

public class Fibonacci {
    private static int NUMBER = 0;
    private static int[] FIBONACCI = new int[10];
    public static void main(String[] args) {
        scanNumber(NUMBER);
        printNumber(NUMBER);
    }

    public static void scanNumber(int num) {
        Scanner scan = new Scanner(System.in);
        System.out.println("숫자를 입력해주세요.");
        NUMBER = scan.nextInt();
    }

    public static void printNumber(int num) {
        int temp = 0;
        int i = 0;

        FIBONACCI[0] = 0;
        FIBONACCI[1] = 1;

        while(temp < num) {
            temp = FIBONACCI[i] + FIBONACCI[i+1];
            FIBONACCI[i+2] = temp;
            i++;
        }

        for (int j = 0; j < FIBONACCI.length; j++) {
            System.out.print(FIBONACCI[j] + ",");
        }
    }
}

2020/09/23 16:24

gunhee0323

public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        System.out.print("1번 항 : ");
        int num1 = sc.nextInt();
        System.out.print("2번 항 : ");
        int num2 = sc.nextInt();
        System.out.print("수열의 길이 : ");
        int length = sc.nextInt();
        sc.close();

        List<Integer> list = new ArrayList<>();
        list.add(num1);
        list.add(num2);

        for(int i = 2; i < length; i++) {
            list.add(i, (list.get(i-2) + list.get(i-1)));
        }

        System.out.println(list);
    }

2020/09/23 20:39

B A

seq=[0,1]
k=int(input())
for i in range(k):
    m=seq[-2]+seq[-1]
    if m>k:
        break
    seq.append(m)
print(seq)

2020/09/25 10:18

AppleFarmer

n = int(input('number : '))
a = [0,1]

while a[-1] <= n :
  a.append(a[-1] + a[-2])
if a[-1] > n :
  a.pop()
print(a)

2020/09/25 11:14

익명

#include <iostream>
#include <queue>
using namespace std;

int main() {
    queue<int> fibo;

    fibo.push(0);
    fibo.push(1);

    int n;
    cin >> n;

    for (int i = 0;; i++) {
        int temp = fibo.front();
        fibo.pop();
        fibo.push(temp + fibo.front());
        if (temp > n)
            break;
        cout << temp << " ";
    }

    return 0;
}

2020/10/01 00:26

김동현

def pibo(n):  #n>=3 
    a = [0, 1]
    for i in range(1,n-1):
        a.append((a[i-1] + a[i]))
    return print(a)

pibo 함수로 정의하였습니다.

2020/10/01 00:38

유태훈

using System;

namespace _62일차_10월02일
{        
    class MainApp
    {
        static void Main(string[] args)
        {
            Console.Write("Input Number : ");
            string Input_Num = Console.ReadLine();

            int First = 0;
            int Second = 1;
            int Result = 0;
            while (Result <= int.Parse(Input_Num))
            {
                Result = First + Second;
                First = Second;
                Second = Result;

                if (Result < int.Parse(Input_Num))
                {
                    Console.Write($"{Result} ");
                }               
            }            
        }
    }
}

2020/10/02 13:43

MinSeung Kang

class FiboGenerator:
    def __init__(self):
        self.b = []
    def getFibo(self,n):
        self.b.append(0)
        self.b.append(1)
        i = 2
        while True:
            m = self.b[i-2]+self.b[i-1]
            if m>n:
                break
            else:
                self.b.append(m)
            i += 1
        return self.b

n = 100
a = FiboGenerator()
b = a.getFibo(n)
print(b)

2020/10/04 16:54

footsize

n=13
a=0;b=1
print('0', end='')
while b<=n:
    print(', %d'%b, end='')
    a,b = b,a+b

2020/10/07 12:10

김빈's life

n=int(input("number"))

a=0 b=1 print(a, ",", b, end="" )

x=1 while (x<=n): print(",", x, end="") a=b b=x x=a+b

2020/10/11 20:27

임민진

파이썬입니다, 피보나치 수를 반환하는 함수와 for loop으로 출력하는 함수 두개 작성했습니다.

def fib(n):

    if n <= 0:
        return 0

    elif n <= 1:
        return n

    else:
        return fib(n-2) + fib(n-1)


def fib_nums(n):

    for num in range(n):
        print(fib(num), end=', ')


fib_nums(10)

2020/10/14 16:04

방금프로그래밍시작함

a1=0
a2=1

n=int(input())

if n==0:
   print(a1)
if n==1:
   print(a1)
   print(a2)
   print(a2)
elif n>1:
   print(a1)
   print(a2)

   while(1):

      sum=a1+a2
      if sum>n:
        break
      print(sum)
      a1=a2
      a2=sum

2020/10/14 23:06

장래희망파이썬마스터

python while 로 풀어보았습니다.

n = int(input()) # 입력 받은 정수의 값
def fibo(n):
    fibo_list = [0, 1]
    index = 0
    while True:
        sum = fibo_list[index] + fibo_list[index + 1]
        if sum <= n:
            fibo_list.append(sum)
        else:
            break
        index += 1
    print(", ".join(list(map(str, fibo_list))))
fibo(n)

입력 값 : 100 결과 : 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89

2020/10/16 00:08

vcne0705

n = int(input("type an integer n: "))
fib=[0,1]
for i in range(n):   
    temp = fib[-2]+fib[-1]
    if temp <= n:
        fib.append(temp)
    else:
        break
print(fib)

2020/10/16 09:28

aryagaon

fibo_list = [0, 1]
n = int(input("정수를 입력 : "))
for i in range(2, n):
    next_fibo = fibo_list[i-1] + fibo_list[i - 2]
    fibo_list.append(next_fibo)
print(fibo_list)

2020/10/17 15:36

YZ S

Input = int(input())
def fibonach(a) :
    lst = ['0','1']
    for i in range(2,a) :
        lst.append(str(int(lst[i-2]) + int(lst[i-1])))
    return ', '.join(lst)
print fibonach(Input)

2020/10/18 23:50

Centro

start=0

end=int(input())

numbers=[]
numbers.append(start)
while True:
    if start==0:
        if start>end:
            for x in numbers:
                print(x,end=' ')
            break
        else:
            start=start+1
            numbers.append(start)
            numbers.append(start)

    if start==1:
        if start>end:
            for x in numbers:
                print(x,end=' ')
            break
        else:
            start=start+1
            numbers.append(start)


    if numbers[-1]+numbers[-2]>end:
        for x in numbers:
            print(x,end=' ')
        break
    else:
        numbers.append(numbers[-1]+numbers[-2])

2020/10/25 20:11

안녕하세요

def add(a,b):
    c = a + b
    return c
l = [0,1]
p = 1
w1 = 0
w2 = 0
w3 = 0
while True:
    w1 = l[p-1]
    w2 = l[p]
    w3 = add(w1,w2)
    p = p + 1


2020/11/04 15:34

고태욱


num = int(input())

lst = [0 ,1]

i = 0
while True:
    if lst[len(lst)-1] < num:
        lst.append(lst[i] + lst[i+1])
        i += 1
    else:
        break
print(lst[:-1])

어렵게 풀었네요 ;; ? 다른분의 파이썬 풀이를 보니 ! "아!!.."

2020/11/07 15:49

안상원


n=int(input())
x=[0,1]
y=0

if n<2:
    print (x[0])

elif n==2:
    print (x[0],x[1])

else:
    for i in range(2,n):
        y=x[i-1]+x[i-2]
        x.append(y)
print(x)

2020/11/08 22:54

n = int(input("n is :"))
pibo = [0, 1]

i = 0
while pibo[i] + pibo[i+1] < n :
    pibo.append(pibo[i]+pibo[i+1])
    i += 1

print(pibo)

2020/11/09 08:59

DSHIN

pibonachi = [0, 1]
result = pibonachi


def pibonachiSequence(n):
    i = 3
    while i:
        result.append(pibonachi[i - 3] + pibonachi[i - 2])
        if result[i - 1] > n:
            result.pop()
            if n == 0:
                result.pop()
            break
        elif result[i - 1] == n:
            break
        i += 1

    return result

inp = int(input("정수를 입력하세요:"))
print(pibonachiSequence(inp))

2020/11/13 17:25

김우석

package codeDojang;

import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Scanner;

public class Prac {
    public static void main(String[] args){

        int num=0;
        Scanner sc = new Scanner(System.in);
        System.out.print("정수 입력: ");
        num = sc.nextInt();

        ArrayList<Integer> ar = new ArrayList<>();
        ar.add(0);
        ar.add(1);


        int i=0;
        while(true) {
            if(ar.get(i)>num) {
                break;
            }
            ar.add(ar.get(i)+ar.get(i+1));
            i++;
        }

        System.out.println(ar);

    }
}

2020/11/18 13:15

yijun kim

a=int(input("write your n :"))

def pibonachi(n):

 k=[0,1]

 for i in range(n):

   c=k[i]+k[i+1]

   k.append(c)

print(k[:n])

pibonachi(a)

2020/11/22 23:10

전준혁

    Scanner sc = new Scanner(System.in);

        System.out.println("숫자를 입력하시오. ");
        int input = sc.nextInt();
        int num1, num2, sum;
        num1=0; num2=1; sum=1;
        System.out.print(0+" ");
        for(int i=0; i<input-1; i++) {
            System.out.printf(sum+" ");
            sum=num1+num2;
            num1=num2;
            num2=sum;
        }

2020/11/26 23:21

씨앗나무

import java.util.Scanner;

public class fibo {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner sc = new Scanner(System.in);
        System.out.println("수 입력");
        int a = sc.nextInt();
        for(int i =0; i<a; i++) {
            System.out.println(i + "번째 계산중...");
            System.out.println(fibona(i));
        }
    }

    public static int fibona(int num) {
        if(num<=1)
            return num;
        else
            return fibona(num-2) + fibona(num-1);
    }

}

2020/12/08 22:56

이정섭

package main;

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int[] arData = {0,1};
        int temp = 0;
        int temp1 = 1;
        int n = sc.nextInt();//반복 횟수
        for (int i = 0; i < n; i++) {
            if(temp ==0&&temp1==1) {
                System.out.println(temp);
                System.out.println(temp1);
            }
            int temp2 = temp+temp1;
            temp = temp1;
            temp1 = temp2;
            System.out.println(temp2);
        }

    }
}

2020/12/10 23:24

김준혁

n=int(input())
array=[0,1]
while array[-1]<=n:
    array.append(array[-1]+array[-2])

if array[-1]>n:
        array.remove(array[-1])
print(array)

2020/12/11 23:36

코딩팡팡

n = int(input("이 프로그램은 입력하는 정수 n 이하까지의 피보나치 수열을 출력하는 프로그램입니다.\n원하는 정수 n의 값을 입력하세요:"))

a = [0, 1]
i = 1

while a[i-1] + a[i] <= n:
    a.append(a[i-1] + a[i])
    i += 1

print(a)

2020/12/14 13:41

코딩뚜

피보나치 수열의 스펠링은 이게 아니더군요. 파이썬입니당.

def pivo(number):
    i=2
    pset=[0,1]
    while pset[i-2]+pset[i-1] <= number:
        pset.append(pset[i-2]+pset[i-1])
        i+=1
    return pset

print(pivo(10))

2020/12/20 00:22

형제는못말려

def fibonacci(n):
    data = [0,1]
    if n==1:
        return 0
    elif n==2:
        return data
    else:
        for i in range(2,n):
            data.append(data[i-1]+data[i-2])
    return data

2020/12/22 23:57

hankyu

fibo_li = [0, 1]
def fibo(input):
    if input == 1:
        return fibo_li[0]
    elif input == 2:
        return fibo_li[:2]
    else:
        for i in range(0, input - 2):
            next_fibo = fibo_li[i] + fibo_li[i+1]
            fibo_li.append(next_fibo)
fibo(int(input()))
print(fibo_li)

2020/12/25 11:53

Y Sung

def fibo(n):
    if n == 1:
        return 0
    elif n == 2:
        return 1
    else:
        return fibo(n-2) + fibo(n-1)

n = int(input())
i = 0
while True:
    i += 1
    if n < fibo(i):
        break
    print(fibo(i),end=' ')

2021/01/05 13:11

박성진

a = [0, 1] n=int(input())

while a[0]<=n : print(a[0]) t=a[1] a[1]+=a[0] a[0]=t

2021/01/06 02:29

SOGO

Python code with recursive function

num = int(input("Enter the number: "))

def fibo(n):
    if n == 0 :
        return 0
    elif n == 1:
        return n
    else:
        return n+ fibo(n-1)


if __name__ == '__main__':
    print(fibo(num))

2021/01/06 13:42

DPark

def fibo_(n):
    a=[0,1]
    i=2
    while True:
        a.append(a[i-2]+a[i-1])
        if a[i]>n:
            a.remove(a[i])
            break
        i=i+1      
    return a

print(fibo_(10000000000000000000))

2021/01/09 22:13

dong hoon

def fibo(n):
    memo = [0, 1]
    i = 2
    while memo[i-1] + memo[i-2] <= n:
        memo.append(memo[i-1] + memo[i-2])
        i += 1
    return memo

n = int(input())

x = fibo(n)

for i in x :
    print(i, end=" ")

2021/01/15 16:36

asdfa

n = int(input())
Fibonacci = [0,1]
while(Fibonacci[-1]+Fibonacci[-2]<n):
    Fibonacci.append(Fibonacci[-1]+Fibonacci[-2])
print(Fibonacci)

2021/01/19 10:42

손우민

f_list = [0, 1]

num = int(input("n: "))

for i in range(2, num):
    f_list.append(f_list[-1] + f_list[-2])


print(f_list)

2021/01/19 23:25

Jino

const array = [0, 1]

const fibonacci = (n) => {
  for (let i = 0; i < n - 2; i++) {
    array.push(array[i] + array[i + 1])
  }
  return array
}

console.log(fibonacci(8))

2021/01/21 14:51

ZE

def fibonach(n):
    list1 = [0, 1]
    while list1[-2] <= n and list1[-1] <= n:
        list1.append(list1[-2] + list1[-1]
    if list1[-1] >= n:
        list1.pop(-1)
    return list1

n = int(input("피보나치 수열 구하기:"))

fibonach(n)

2021/01/22 16:00

팝코니

n = 100
a= [0,1]
for i in range(n):
    a.append(a[i]+a[i+1])

print(a)

input 대신 그냥 100넣었습니다

2021/01/26 21:16

fox.j

public class CodingTest {

    public static void main(String[] args) {

        fibonacci(15);
    }

    public static void fibonacci(int n) {
        int[] nums = new int[n];
        nums[0] = 0;
        nums[1] = 1;

        for(int i = 0; i < n-2; i++)
            nums[i+2] = nums[i+1] + nums[i];

        for(int i = 0; i < n; i++) {
            if(i==n-1)
                System.out.print(nums[i]);
            else
                System.out.print(nums[i]+", ");
        }
    }
}

2021/01/28 00:17

김용현

a = int(input())
list = [0,1]
sum = 0
while(1):
    sum = list[-2] + list[-1]
    if sum < a:
        list.append(sum)
    else:
        break

print(list)

2021/01/31 23:36

개촙오

n = int(input("Input Number : ")) 

def f(n):
    if n == 0:
        return 0
    if n == 1:
        return 1
    return f(n-1) + f(n-2)

i = 0
f_numbers = []
while True:
    if f(i) <= n:
        f_numbers.append(f(i))
    else:
        break
    i += 1

print('Fibonacci Numbers : ', f_numbers)

2021/02/01 16:15

Ha

n = int(input("정수 n을 입력하시오\n:"))
fibo = [0, 1]

for i in range(0, 100):  # 피보나치 수열 만듦, 항 102개로 제한
    sum = fibo[i]+fibo[(i+1)]
    fibo += [sum]


under_N = []
for j in range(0, 102):  # n 이하의 숫자 필터링
    if n >= fibo[j]:
        under_N += [fibo[j]]


print(under_N)

건전한 피드백 환영합니다

2021/02/01 17:22

PenLoo


def main():
    N = int(input('Number : '))
    P = [0,1]
    if N < 2:
        N = int(input('Number : '))
    else:
        while 1:
            if P[-1]+P[-2] < N:
                P.append(P[-1]+P[-2])
            else:
                break
    print(P)

if __name__ == '__main__':
    main()

2021/02/02 13:12

서해원

코드입니다.

def fib(n):
    result = []
    if n >= 0: result.append(0)
    if n >= 1: result.append(1)
    while True:
        result.append(result[-1] + result[-2])
        if result[-1] > n:
            del result[-1]
            break
        if result[-1] == n:
            break
    return result

실행 예제입니다.

print(fib(10))
print(fib(100))
print(fib(500))

결과입니다.

[0, 1, 1, 2, 3, 5, 8]
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377]

2021/02/08 17:28

이준우

def fibonazzi(n):
    previous, current = 0, 1

    while previous <= n:
        print(previous)
        previous, current = current, current + previous

print(fibonazzi(100))

2021/02/12 14:55

오세훈

n = int(input("정수를 입력하세요."))
array=[0,1]
while True: # 참의 조건
    s = array[-1]+array[-2] # 맨 뒤의 항 + 그 뒤의 항
    if s < n:
        array.append(s)
    else:
        break
print(array)

while문으로 해봤어요

2021/02/18 18:49

원유준

이제 막 점프투파이썬 펼친 걸음마단계에요.

문제가 흥미로워서 머릿속으로 구상하고 이걸 어떻게 표현하나 책에서 사전처럼 찾아서 풀다보니 조금 조악할 수 있는거 같아요.

특히 그랬던 점이

F.remove(F[-1]) break

이쪽인데, F.remove(F[-1]) 없이 출력했을 때는 n을 넘어서게 되는 최초의 마지막항이 포함된 리스트가 출력되더라구요. 예를들어서 n=100을 넣으면, 89까지 출력되면 좋겠는데 143까지 출력되는 식으로요. 그래서 n을 넘는 순간 마지막항을 강제로 지우라는 명령을 해야만 했어요. 이 부분은 조금 맘에 안들더라구요. 너무 작위적인거 같아서요.

그리고 break가 없으니 이게 무한히 리스트를 출력하더라구요?? 제가 while문을 잘못 이해했는지 모르겠는데, F의 마지막 항이 n을 넘지 않으면 자동으로 멈춰야할텐데 F.remove를 넣어서 그런지 얘가 무한히 출력해서 당황했습니다 ㅠㅠ

이 부분을 Fancy하게 처리할 방법을 아시는 분이 도와주신다면 너무너무 감사할것 같습니다! 고맙습니다.

F = [0,1]
n = float(input("수를 입력하세요: "))
while F[-1] < n :
    F.append(F[-1]+F[-2])
    if F[-1]> n:
        F.remove(F[-1])
        print(F)
        break

2021/02/24 00:59

이동그람

import java.util.Scanner;
public class main {

    public static void main(String[] args) { 
        Scanner s = new Scanner(System.in);
        System.out.println("피보나치 수열의 범위를 입력히세요.");
        int num = s.nextInt();
        int one = 1, two = 1;
        int[] arr = new int[100];
        // 배열의 인덱스가 0,1 일때는 값이 1
        for(int i=0; i<100; i++) {

            if(i== 0 || i == 1) arr[i] = 1;
            else {
                arr[i] = one + two;
                one = two;
                two = arr[i];
            }

        }
        for(Integer t : arr) {
            if(t >= num) break;
            System.out.println(t);
        }
    }

}

2021/03/01 00:33

khj

def fib(n):
    result = ["0", "1"]
    while int(result[-1]) + int(result[-2]) <= n:
        result.append(str(int(result[-1])+int(result[-2])))
    return ','.join(result)

<파이썬 3> [풀이] 결과리스트의 마지막 두개항의 합이 n(입력값)보다 작거나 같을때까지, 마지막 두개항을 합한 값을 결과리스트에 추가해줍니다.

2021/04/04 10:38

Ruo Lee

Python입니다.

>>> def fib(n):
...     if n == 0:
...         return [0]
...     elif n == 1:
...         return [0, 1]
...     else:
...         last = fib(n - 1)
...         return last + [last[-2] + last[-1]]
...
>>> fib(0)
[0]
>>> fib(1)
[0, 1]
>>> fib(2)
[0, 1, 1]
>>> fib(3)
[0, 1, 1, 2]
>>> fib(4)
[0, 1, 1, 2, 3]
>>> fib(5)
[0, 1, 1, 2, 3, 5]
>>> fib(6)
[0, 1, 1, 2, 3, 5, 8]
>>> fib(7)
[0, 1, 1, 2, 3, 5, 8, 13]

2021/04/11 04:47

최용

#include <stdio.h>
#include <stdlib.h>

int main() {
    int a, i;

    printf("3 이상의 정수를 입력하세요 : ");
    scanf_s("%d", &a);

    int* result = malloc(a * sizeof(int));
    result[0] = 0;
    result[1] = 1;

    for (i = 2; i < a; i++) {
        result[i] = result[i - 1] + result[i - 2];
    }
    printf("주어진 값 까지의 피보나치 수열 : ");
    for (i = 0; i < a; i++)
        printf("%d ", result[i]);

    free(result);
    return 0;
}

C언어로 작성했습니다

2021/04/12 19:44

argo

a = 0
b = 1
lista = []
n = int(input())
while a <= n:
    lista.append(a)
    a, b = b, a+b
print(lista)

2021/04/21 09:46

하이퍼

import java.util.Scanner;
public class Main
{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int a = 0;
        int b = 1;
        while(true) {
            if(a+b > n) break;
            a = a+b;
            System.out.printf(" %d", a);
            if(a+b > n) break;
            b = a+b;
            System.out.printf(" %d", b);

        }
    }
}

2021/04/28 00:24

고은우

n = int(input())
x = [0, 1]


for i in range(2, n):
    if i < 2:
        print(x[0], x[1], end=" ")
    else:
        x.append(x[i-1] + x[i -2])

print(x)

2021/04/28 16:27

임동열

starter = [0,1]

def pebo(n): i = 0 while (starter[i]+starter[i+1]) <= n: starter.append(starter[i]+starter[i+1]) i += 1 return(starter)

print(pebo(13))

2021/05/07 16:34

ss2663

n = int(input("2 이상 정수를 입력하세요 : "))

num_list = [0, 1]

while n <= 1 :
    n = int(input("2 이상의 양의 정수를 입력하세요. : "))

while n >= (num_list[-2] + num_list[-1]) :
    num_list.append(num_list[-2]+ num_list[-1])

print(num_list)

2021/06/08 20:46

최벽문

def pivo(n): if n==0: return 0 if n==1: return 1 if n>=2: return pivo(n-1)+pivo(n-2)

pivo(3) pivo(10)

for i in range(10): print(pivo(i))

2021/06/22 00:25

들숨엔재력날숨엔건강

from random import *

def 피보나치수열(n):

    NACHIlist=[]

    for i in range(0,n):
        if i == 0:
            NACHIlist.insert(0, 1)
        elif i == 1:
            NACHIlist.append(1)
        elif i >1:
            NACHIlist.append(NACHIlist[i-1]+NACHIlist[i-2])
        else:
            pass

    return NACHIlist

2021/06/22 22:08

inkuk ju

n=int(input('정수 입력'))
list1=[]; a=0; b=1
while True:
    if a>n:
        break
    list1.append(a)
    sum1=a+b
    a=b
    b=sum1
print(list1)

2021/06/29 20:04

김민준

def fibonacci(n):
    list = [0, 1]
    i = 0
    while list[i] + list[i + 1] <= n:
        list.append(list[i] + list[i + 1])
        i += 1
    return list
print(fibonacci(6))

2021/07/01 16:14

김준규

a = int(input("정수를 입력하세요 : "))

def fibo(n): if n == 0: return 0 elif n == 1:return 1 return fibo(n-2) + fibo(n-1)

for i in range(0,(a+1)): print(fibo(i))

2021/07/06 22:53

Youngchul Kwon

#codingdojing_fibonacci

# f(3) = f(2) + f(1) = f(1)+f(0)+f(1)
# f(4) = f(3) + f(2) = f(1)+f(0)+f(1) + f(1)+f(0)

def fibo(n):

    if n == 1:
        return 0
    elif n == 2:
        return 1
    else:
        return fibo(n-1) + fibo(n-2)


n = eval(input("please enter the number: "))

for i in range(1, n+1):
    print(fibo(i))

2021/07/08 14:06

Jaeman Lee

n=int(input('정수를 입력해주세요: '))

z=[0,1]

while True:
    a=z[-1]+z[-2] # 끝에서 두 숫자를 더합니다
    if a>n: # 근데 그 더한게 n보다 크면 반복문을 깹니다
        break
    z.append(a) # 아니면 리스트에 더한 숫자를 추가해줍니다
print(z)

2021/07/14 15:14

김용왕

users_input = int(input("Enter any numbers: "))
fibonacci_numbers = [0, 1]; a = 0; b = 1
while fibonacci_numbers[a] + fibonacci_numbers[b] < users_input: 
    fibonacci_numbers.append(fibonacci_numbers[a] + fibonacci_numbers[b])
    a += 1; b += 1
print(fibonacci_numbers)

2021/07/18 20:07

Annoymouse

f = int(input()) a = 0;b = 1 print('0', end = " ") while b<=f: print('%d'%b, end = " ") a,b = b,a+b

2021/07/23 16:29

서현준

import UIKit

var input = 3

func solution(_ inputNum: Int) -> Int {

    // Properties
    var intArr = [0, 1] // 1
    var resultInt = Int()

    var index = 1
    while (resultInt <= inputNum) {

        let a = intArr[index - 1] // 첫 번째 항
        let b = intArr[index]     // 두 번째 항
        resultInt = a + b
        intArr.append(resultInt)  // 이전 두 개의 항을 더한 값을 추가
        index += 1
    }
    intArr.popLast()
    let result = intArr.last!
    print("DEBUG>> intArr \(intArr) ")
    return result
}

solution(34)

2021/08/02 11:51

Uno

n=int(input())
Fib_list=[0,1]
while n>Fib_list[-1]:
    Fib_list.append(Fib_list[-1]+Fib_list[-2])
if n<Fib_list[-1]: 
    Fib_list.remove(Fib_list[-1])
print(Fib_list)

2021/08/08 23:29

Percy

import java.util.Scanner;

public class Ex04 {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        System.out.print("정수를 입력하세요" );
        int num = sc.nextInt();

        for(int i =0; i < num; i++) {
            System.out.print(fibo(i) + " ");
        }
        sc.close();
    }

    private static int fibo(int num1) {

        if (num1 <= 1) {
            return num1;
        }else {

//      예를 들어 5를 입력하면 0 1 1 2 3  이 나와야 하는데 
//      1까지는 for문을 돌면서 그대로 출력 
//      2부터는 0+1 로 1이 만들어 진 것이기 때문에
//      0 + 1의 조건을 만들어 줘야 한다
//      0은 입력받은 값의 -2 이고 1은 입력받은 값의 -1이다 
//      이렇게 더해서 반환해주는 것이다

        return fibo(num1 -2) + fibo(num1-1);
    }
}

java

2021/08/15 00:03

전채

a = input('숫자를 입력하세요. : ', )
b = 0
n = 0
m = 0
fibo = [0,1]

while n < 100:
    fibo.append(fibo[n]+fibo[n+1])
    n = n + 1

c = len(fibo)
while m <= int(a):
    if int(a) >= fibo[m]:
        m = m + 1
    else:
        print(fibo[0:m])
        break

2021/08/23 15:55

Beom Yeol Lim

## 5 이하에서는 while 함수 flase가 되면서 꺼져버린다. 또한 피보나치 수열을 무한대로 만들경우 파일용량이 늘어난다. - Beom Yeol Lim, 2021/08/23 16:10
n = int(input(""))
fib = [0,1]
while (fib[-1]+fib[-2]) < n :
    fib.append(fib[-1]+fib[-2])

2021/08/31 16:49

//python

p = [0, 1]
s = 0
c = 0

n = int(input('정수를 입력하세요: '))

while True:
  s = p[c] + p[c+1]
  if s > n:
    break
  p.append(s)
  c += 1

print('정수n이하의 피보나치 수열: {}'.format(p))

2021/09/14 16:03

Charles

n=int(input('숫자를 입력하세요:'))
A=[0, 1]
while True:
    a = A[-1]+A[-2]
    if a<=n:
        A.append(a)
    else:
        break
print(A)

2021/09/14 20:50

trim39r

Total = [] N1 = 0 #피보나치 수열 첫번 쨰 N2 = 1 #피보나치 수열 두번 째 N3 = 0 #피보나치 수열 세번 째 N_P = int(input("숫자를 입력하세요")) while N1 < N_P : Total.append(N1) N3 = N1 + N2 N1 = N2 N2 = N3

print(Total)

2021/09/26 17:29

권숙철

public class Test {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("정수 입력 : ");

        int n = sc.nextInt();
        int i=0;
        ArrayList<Integer> arr = new ArrayList<Integer>();
        arr.add(0);
        arr.add(1);

        while(true){
            if(arr.get(i)<=n){
                if(i!=0){
                    System.out.print(", "); 
                }
            }else{
                break;
            }

            System.out.print(arr.get(i));
            arr.add(arr.get(i) + arr.get(i+1));
            i++;
        }
    }
}

2021/10/01 08:59

tm k

fibonach = [0, 1]
n = int(input("숫자를 입력(2이상): "))
for i in range(n):
    if i < 2:
        print(fibonach[i])
    else:
        fibonach.append(fibonach[i-2] + fibonach[i-1])
        print(fibonach[-1])


2021/10/01 11:03

송효근

def fib(n):
    if n < 3:
        return 1
    else:
        return fib(n-1) + fib(n-2)

print(fib(int(input("입력 : "))))

2021/10/03 02:37

[w]*눈꽃*

# 피보나치 수열 코드

# 피보나치 수열을 나열할 수 있는 코드를 작성하라
# 사용한 핵심 전략 : for 반복문

# 1. 초기 변수 입력
n1=0
n2=1
numlist=[]

numlist.append(n1)
numlist.append(n2)

# 2. 출력할 피보나치 수열 개수
x=20

# 3. 피보나치 수열 함수 코딩
for i in range(x-2):
    n3=n1+n2
    numlist.append(n3)
    n1=n2
    n2=n3

# 4. 출력
print(numlist)

2021/10/05 12:47

이성재

=> 자바로 작성하였습니다.

package Lv1;
import java.util.*;
public class Fibonacci {

    public static void main(String[] args) {

        //설명 : 피보나치수열이란 이전항 두개를 더해서 나온 수
        // 예 : 0 1 1 2 3 5 8 13 ... 
        // 문제 => 인풋을 정수 n으로 받았을때, n 이하까지의 피보나치 수열을 출력하는 프로그램을 작성하세요

        int []fibonacci = new int[100];

        // An = An-1 + An-2 ; n>=3
        // a1 = 1, a2 = 2;
        fibonacci[0] = 0;
        fibonacci[1] = 1;
        fibonacci[2] = 1;

        for(int i = 3 ; i < 100 ; i++) {
            fibonacci[i] = fibonacci[i-1] + fibonacci[i-2]; 
        }

        Scanner sc = new Scanner(System.in);
        System.out.println("출력하고자 하는 피보나치 수열 n 을 입력하세요.(n이하 출력)");
        int n = sc.nextInt();
        for(int i = 1 ; i < n ; i++) {
      if(array[i]<n)
            System.out.printf("피보나치 %d번째 값은 %d%n",i,array[i]);  

        }

2021/10/09 16:38

김민석

n=int(input("정수 n을 입력하세요: "))
p=[0,1]
while n>=p[-1]+p[-2]: p.append(p[-1]+p[-2])
print(p) if n>0 else print([0])

2021/10/11 01:09

LSW

n = int(input('Enter the number: ')) n_1 = 0 n_2 = 1 N = 0 while N < n: print(N, end=' ') N = n_1 + n_2 n_1 = n_2 n_2 = N

2021/10/15 23:25

성준모

static int fib(int x) {
        if(x == 0)
            return x;
        else if(x == 1)
            return x;
        else
            return fib(x-2) + fib(x-1);
    }

    public static void main(String[] args) {
        for(int i = 0; i <11; i++)
            System.out.print(fib(i) + " ");

    }

2021/10/24 09:54

박대현

input_n = int(input("정수를 입력하세요."))
nums = [0, 1]
while nums[-1] <= input_n:
    nums.append(nums[-2] + nums[-1])
del nums[-1]
print(nums)

2021/11/12 15:00

최승철

arr = [0,1]

n = int(input("정수를 입력하세요"))

print(n)

for i in range(n):
    arr.append(arr[i]+arr[i+1])
    if arr[i+2] > n:
        arr.remove(arr[i+2])
        break

print(arr)    

2021/11/22 10:37

정설경

var sum = 0;

function fibonacci(x) {
var arrays = [0,1];
if(x == 0) arrays = [0];
else{
    for(i=0; i<x; i++) {
        sum = arrays[i] + arrays[i+1]
        if(sum <= x) {
            arrays.push(sum)
        }
    }
}
console.log(arrays)
}

fibonacci(0)
fibonacci(13)

2021/11/23 14:03

유정효

n = int(input('n을 입력하세요'))

list = [0,1]
x = 2
if n == 0:
    print([0])


else:    
    while True:

        list.append(list[x-1] + list[x-2])
        if list[x] > n :
            break
        x += 1
    list.pop()
    print(list)

2021/11/29 11:53

황성민

Num = [0, 1]
final = 1
num = int(input('정수 n을 입력하시오.'))
while 1:
    final += Num[len(Num)-2]
    if final > num:
        break
    Num.append(final)
print(Num)

2021/12/14 18:44

박제준

n = 13

m1 = 0
m2 = 1
m3 = 0

print(m1)
print(m2)

while m3 < n : 
    m3 = m1+m2
    m1 = m2
    m2 = m3
    print(m3)

2021/12/15 11:05

양캠부부

fibo = [0,1]
n = input("마지막 정수를 입력해주세요:")
for i in range(int(n)+1):
        a = fibo[i] + fibo[i+1]
        if a >= int(n):
            break
        fibo.append(a)
print(fibo)

2021/12/15 14:24

김대연

fibonacciNumbers = [0,1] # 최초 피보나치 수열을 정의

n = int(input('정수 n을 입력하시오 : ')) # 정수 n을 입력

i = 1
while True:
    add = fibonacciNumbers[i-1] + fibonacciNumbers[i] # 순서대로 더해주어 다음 값을 구한다.
    if add <= n: # 다음 값이 입력한 정수 n보다 작은 경우,
        fibonacciNumbers.append(add) # 수열을 추가해주고,
        i+=1 # i 값을 증가시킨다.
    else: # 다음 값이 입력한 정수 n보다 큰 경우,
        break # 반복문을 종료한다.
print(fibonacciNumbers) # 완성된 수열을 출력한다.

2022/01/12 17:23

ㅎㅎ

n = input("어느 값까지 피보나치 수열을 구할까요?")
seq = [0,1]

i = 1
while i < int(n):
    i = seq[-1] + seq[-2]
    if i < int(n):
        seq.append(i)
print(seq)

2022/01/18 15:58

로만가

def Fibo(n):
    if n == 1 : return 0
    elif n == 2 : return 1
    return Fibo(n-1)+Fibo(n-2)


_input = int(input())
i = 1
while( Fibo(i) <= _input) :
    print(Fibo(i), end=' ')
    i+=1

2022/01/24 17:59

강태호

// Rust

use std::str::FromStr;

fn main() {

// command line입력을 u32 type으로 변환
let n = std::env::args().skip(1).next().unwrap();
let n = usize::from_str(&n).unwrap();

fibonacci()                 //전체 피보나치 수열을 주는 iterator
    .filter(|&i| i<=n)      //n이하만 주는 iterator
    .for_each(|j| {         //각 Item에 대해 인쇄
        println!("{}", j);
    });

}

fn fibonacci() -> impl Iterator {

let mut state = (0, 1);
vec![0].into_iter().chain(
    std::iter::from_fn(move || {
        state = (state.1, state.0 + state.1);
        Some(state.0)
    })
)

}

2022/01/25 21:26

JW KIM

public static void main(String[] args) {
        List<Integer> arr = new ArrayList<Integer>();
        Scanner scan = new Scanner(System.in);
        int sum = 0;
        int cnt1 = 0;
        int cnt2 = 1;
        int breakNum = scan.nextInt();

        for (int i = 0; i < 2; i++) {
            arr.add(i);
        }

        while (true) {
            sum = 0;
            sum = arr.get(cnt1++)+arr.get(cnt2++);

            if(sum > breakNum) {
                break;
            }

            arr.add(sum);
        }
        System.out.println(arr.toString());
    }

2022/01/31 18:20

김우연

value = int(input('Input an integer'))

n0 = 0
n1 = 1
n2 = 0

print (n0,',', n1, end ='')
while n1 + n0 <= value:
    print(', ', end = '')
    n2 = n1 + n0
    n0 = n1
    n1 = n2
    print(n2, end ='')

2022/02/03 14:45

엄태용

def Fibonacci(n):
    fib=[0, 1]
    while(True):
        temp=fib[-1]+fib[-2]
        fib.append(temp)
        if temp>n:
            break
    return fib    

print(Fibonacci(10000))

2022/02/04 15:32

qkrthals

num = int(input("숫자 입력: "))

pibos = [0,1]

for i in range(2, num):
    pibo = pibos[i-1] + pibos[i-2]
    if pibo <= num:
        pibos.append(pibo)
    else:
        break

print(pibos)

2022/02/09 01:59

신성호

previous=0
current=1
i=1
n=input('정수 입력 : ')
while i<=int(n):
    print(current)
    temp = previous
    previous = current
    current = current + temp
    i = i + 1

2022/02/12 08:23

오원석

def fib(n): if n == 0: return 0 elif n == 1 or n == 2: return 1 else: return fib(n-1) + fib(n -2)

for i in range(0,11): print(fib(i))

2022/02/28 16:39

김태현

x = [0, 1]

def fi(n):
    i = 2
    while True:
        a = int(x[int(i-2)]) + int(x[int(i -1)])
        x.append(int(a))
        i = i + 1
        if a >= n:
            x.pop()
            break
    print(x)

2022/03/01 21:10

박건호

Fibo=[0,1]
n=input()
while Fibo[-1]<=int(n):
    Fibo.append(Fibo[-1]+Fibo[-2])

Fibo.pop()
print(Fibo)

2022/03/03 15:00

코딩초보박영규

def Fibonacci_fsequence(num):
    result = [0, 1]
    while result[-1] < num:
        result += [result[-1] + result[-2]]
    result.pop()
    print(result)

print('인풋을 정수 n으로 받았을때, n 이하까지의 피보나치 수열을 출력하는 프로그램 입니다.')
num = input('정수 n을 입력하세요. : ')
Fibonacci_fsequence(int(num))

2022/03/13 14:44

고양이

def fibonacci(n):
    answer = [0, 1]
    running = True # 실행 변수
    while running:    
        if (answer[-1]+answer[-2]) <= n: # answer 리스트의 -1번째, -2번째를 더한 수가 입력보다 작으면
            answer.append(answer[-1]+answer[-2]) # 두 숫자를 더해서 리스트에 추가
        elif (answer[-1]+answer[-2]) > n: # 입력보다 크면
            print(answer) # 지금까지 저장된 리스트를 출력하고
            return answer
            running = False # while문 종료

fibonacci(34) # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

재밌게 풀었습니다~

2022/03/15 08:15

kh ahn

max_val = int(input("정수 입력:"))
Fibo = [0,1]

for i in range(0,max_val+1):
    next_val = Fibo[i] + Fibo[i+1]
    if next_val <= max_val:
        Fibo.append(next_val)
    else:
        break

print(Fibo)    

2022/03/22 14:06

seolgyung jeong

def fibo(n):
    a, b = 0, 1
    for i in range(n):
        yield a
        a, b = b, a+b


n = int(input('>> '))
fib = fibo(n)
for i, j in enumerate(fib):
    print('{}'.format(j), end = ' ')

2022/03/26 17:21

고래상어

# 피보나치 수열이란, 첫 번째 항의 값이 0이고 두 번째 항의 값이 1일 때, 이후의 항들은 이전의 두 항을 더한 값으로 이루어지는 수열을 말한다.
# 예) 0, 1, 1, 2, 3, 5, 8, 13

# 인풋을 정수 n으로 받았을때, n 이하까지의 피보나치 수열을 출력하는 프로그램을 작성하세요

n = int(input("정수 n을 입력하세요 : "))
seq_fibo = [0, 1]
a, b = seq_fibo
while b <= n:
    a += b
    if a > n:
        break
    else:
        a, b = b, a
        seq_fibo.append(b)

print(seq_fibo)

2022/03/29 19:38

소망꿀

n = int(input("0 이상의 정수를 입력하세요: "))
a, b = 0, 1
while a <= n:
    print(a)
    a, b = b, a + b

2022/04/03 18:40

21chAlien

f=[0,1]
n=int(input())
while 1:
    fi=f[-2] + f[-1]
    if fi<=n:
        f.append(fi)
    else:
        break
print(f)

2022/04/08 10:12

thank

def phi(n): if n == 1: return (0) elif n == 2: return (0,1) else: i = 2 a = 0 b = 1 li=[0,1] while i < n: i += 1 a = a + b li.append(a) i += 1 if i <= n: b = b + a li.append(b) return(li) print(phi(9))

2022/04/15 19:11

yunjae

def fib(n): if n == 1: return (0) elif n == 2: return (0,1) else: a = 0 b = 1 li=[0,1] while a < n and b < n: a = a + b if a<n: li.append(a) b = b + a if b<n: li.append(b) return(li) print(fib(119))

2022/04/15 19:17

yunjae

number = int(input("정수를 입력하세요"))
a = [0,1]
for i in range(number):
    if i > 0 :
        a.append(a[i - 1] + a[i] )
        if a[-1] > number :
            del a[-1]
            break
print(a)

2022/04/24 15:08

장예찬

n = int(input('입력:'))
a = 0
b = 1
while True:
  a += b
  b += a
  if b > n:
    result = a
    break
  elif a + b > n:
    result = b
    break
  else:
    continue
print(result)

아...! 수열의 마지막 숫자 구하는 거인 줄... ㅜㅜ

a = [0, 1]
n = int(input('양의 정수를 입력하시오 : '))
while True:
  b = a[-2] + a[-1]
  a.append(b)
  if (a[-2] + a[-1]) > n:
    break
print(a)

2022/04/26 12:39

Jack Maker

def phi(n):
    if n==1 or n==2:
        return (1)
    return(phi(n-1)+phi(n-2))

print(phi(10))


n=int(input("#"))
i=1
n1=0
n2=1
print(n1,n2,end=" ")
while i<n:
    i+=1
    n3=n1+n2
    n1=n2
    n2=n3
    print(n3,end=" ")

2022/05/10 13:46

yunjae

def phi(n):
    if n==1 or n==2:
        return (1)
    return(phi(n-1)+phi(n-2))

print(phi(10))


n=int(input("#"))
i=1
n1=0
n2=1
print(n1,n2,end=" ")
while i<n:
    i+=1
    n3=n1+n2
    n1=n2
    n2=n3
    print(n3,end=" ")
``````{.python}
# n=int(input("#"))
# n1=0
# n2=1
# n3=0
# print(n1,end=" ")
# while n3<=n:
#     n3=n1+n2
#     print(n2, end=" ")
#     n1=n2
#     n2=n3

2022/05/10 14:13

yunjae

N = int(input("정수를 입력하세요:"))
a = 0 #홀수항
b = 1 #짝수항
sequence = [a, b]
while True:
  sequence.append(sequence[-2]+sequence[-1])
  if sequence[-1]>N:
    sequence.pop(-1)
    break
print(sequence)

2022/05/27 13:29

이승훈

자바로 풀어 봤습니다.

import java.util.Scanner;
import java.util.ArrayList;
import java.util.Arrays;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        ArrayList<Integer> Fibonacci = new ArrayList<>(Arrays.asList(0, 1));

        int inputData, m, n, i=0;

        while(true) {
            System.out.println("양의 정수를 입력하시오:");
            inputData = scan.nextInt();

            if(inputData>0) {
                break;
            }else {
                System.out.println("잘못된 정수를 입력하셨습니다. 다시 입력하세요.\n");
            }
        }

        while(true) {       
            m = Fibonacci.get(i);
            n = Fibonacci.get(i+1);

            if(m+n>inputData) {
                break;
            }else {
                Fibonacci.add(m+n);
                i++;
            }
        }

        System.out.println(String.format("%d 까지의 피보나치 수열은 다음과 같습니다.\n", inputData)+Fibonacci);
    }
}

2022/06/05 21:50

유로


n= input('숫자를 넣으세요 : ')
a= [0,1]
b=0
for i in range(1,n):
    if b < n:
        b= a[i-1]+a[i]
        a.append(b)

for item in a:
    if item > n:
        a.remove(item)

print(a)

2022/06/17 18:50

준희


sequence_list = []

n = int(input("n의 값을 설정하시오: "))

for i in range(n):
    if sequence_list == []:
        sequence_list.append(0)

    elif sequence_list == [0]:
        sequence_list.append(1)

    else:
        sequence_list.append(sequence_list[-1] + sequence_list[-2])

print(sequence_list)

파이썬으로 풀었습니다

2022/06/19 01:45

박종훈

---- JAVA ----

import java.util.Scanner;

public class Fibonacci 
{
    public static void main(String[] args)
    {
        Scanner in = new Scanner(System.in);
        System.out.print("피보나치 수열을 몇번 까지 구하시겠습니까? : ");
        int userAnser = in.nextInt();
        // int maxNumber = 10;
        int firstNumber = 0;
        int secondNumber = 1;
        int sum = 0;
        for(int i = 0; i < userAnser; i++)
        {
            sum = firstNumber + secondNumber;
            firstNumber = secondNumber;
            secondNumber = sum;
            System.out.print(sum + " ");
        }
        in.close();
    }
}

2022/06/22 14:17

tajan

list_1 = [0, 1]

def list_plus(list_1):
    num = len(list_1)
    list_1.append(int(list_1[num-1]) + int(list_1[num-2]))

    return list_1

n = int(input("사용자 번호:"))
while True:
    list_plus(list_1)
    if list_1[len(list_1)-1] > n:
        break
    list_1[len(list_1)-1] > n
list_1.pop()

print(list_1)

초봅니다....

2022/07/05 13:25

송동준

n=int(input("피보나치 수열을 반환할 숫자를 입력하세요 : "))
m=[0,1]
while True :
    a = m[-1]+m[-2]
    if a <= n : m.append(a)
    else : break
print(m)

2022/07/07 13:16

김보라

{.python}

n = int(input("input number = "))

fibonacci = [0, 1]

for i in range (n-2): fibonacci.append(fibonacci[i]+fibonacci[i + 1])

print(fibonacci)

2022/07/08 15:01

구모

def fibo(ui):
    fb = [0, 1]
    while fb[-1]+fb[-2] <= ui:
        fb.append(fb[-2] + fb[-1])
    return fb

ui = int(input("n 이하의 피보나치 수열을 출력합니다. n 입력 >> "))
if ui == 0:
    print([0])
else: print(fibo(ui))

파이썬 3.8.5

2022/07/10 00:22

Estelle L

n = int(input("enter n:"))
result = [0, 1]

while True:
    lastnum = int(result[-1]) + int(result[-2])
    if lastnum <= n:
        result.append(lastnum)
    if lastnum > n:
        break
print(result)

2022/07/20 17:03

쑥갓

python

n = int(input("정수를 입력하시오: "))

fibonacci = [0,1]

i = 0
while fibonacci[-1] <= n:
    fibonacci.append(fibonacci[i]+fibonacci[i+1])   
    i+=1
print(fibonacci[:-1])

2022/07/29 10:03

세라

n = int(input("정수를 입력하시오:"))

def fibo(n):
    if n == 1 or n == 2:
        return 1
    else:
        return fibo(n-1) + fibo(n-2)

print(fibo(n))

2022/08/02 21:44

JYS

i=input("원하는 숫자를 입력하시오. :")
ia=int(i)
result=[]
for a in range(0,ia):
    #a1=a-1
    if len(result)<2:
        result.append(a)
    elif len(result)>=2 and (result[-1]+result[-2])<=ia:
        result_tem=result[-1]+result[-2]
        result.append(result_tem)
        a=result_tem

2022/08/09 14:07

나무늘보

public class FibonacciSequence {
    public String solve(int num) {
        return Arrays.toString(this.solveFibonacciNumber(num));
    }

    // === private ===
    private Integer[] solveFibonacciNumber(int num) {
        List<Integer> result = new ArrayList<>();

        int begin = 0;
        int prev = 1;
        int next = 0;
        result.add(begin);
        while (next <= num) {
            result.add(prev);
            next = begin + prev;
            begin = prev;
            prev = next;
        }
        return result.toArray(Integer[]::new);
    }
}

2022/08/16 15:47

정이언

package test;

import java.util.Arrays;
import java.util.List;

public class Fibo {
    public static void main(String[] args) {
        int[] fibo = new int[30];
        fibo[0] = 0;
        fibo[1] = 1;

        for (int i = 2; i < fibo.length; i++) {
            fibo[i] = fibo[i-2] + fibo[i-1];
        }
        System.out.println(Arrays.toString(fibo));

    }
}

2022/08/30 22:25

Jay Choi

user_in = int(input())
x=[0,1]
while True:
    if x[-1]+x[-2]>user_in:
        break
    else:
        x.append(x[-1] + x[-2])
print(x)

2022/09/02 20:34

준표장

def fibo(n, last):
    if n==0:
        global arr
        arr=[]
        arr.append(0)
    elif n==1:
        arr.append(1)
    else:
        arr.append(arr[n-2]+arr[n-1])

    if arr[n]>last:
        arr.pop()
        print(arr)
    else:
        fibo(n+1,last)

fibo(0,int(input('정수 n을 입력 >> ')))

2022/09/04 19:56

JML

import java.util.Scanner;

public class up006 { public static void main(String[] args) {

    Scanner scan = new Scanner(System.in);
    System.out.print("n이하 까지의 피보나치 수열을 출력하겠습니다.\n정수 n을 입력하세요.");
    int num = scan.nextInt();

    pibonaci(num);
}

private static void pibonaci(int n) {
    int num1 = 0;
    int num2 = 1;
    int temp = 0;

    System.out.print(num1 + ", ");

    for(int i=0; i<n; i++) {
        System.out.print(num2 + ((i==(n-1))? " ": ", "));
        temp = num2;
        num2 = num1 + num2;
        num1 = temp;
    }
}

}

2022/09/15 14:28

연뚜리뚜리

n = int(input('정수를 입력하세요. : '))

수열 = [0, 1]
for i in range(2, n):
    수열.append(수열[i-1] + 수열[i-2])

print(', '.join(str(s) for s in 수열))

2022/09/29 09:42

봄과일

Python. 마지막 1, 2번째 수를 더한 후 해당 수를 n과 비교하여 결과에 추가하는 것이 포인트였던 것 같습니다.

#fibonacci.py
#인풋을 정수 n으로 받았을때, n 이하까지의 피보나치 수열(0,1,1,2,3,5,8...)을 출력하는 프로그램을 작성하세요.

def fib(n): #입력된 임의의 숫자 n 이하의 피보나치 수열을 출력하는 함수 fib를 생성
    result=[0, 1] #최초의 수열 [0, 1]을 설정
    while True:
        temp=(int(result[-2])+int(result[-1])) #result의 끝에서 2번째 수와 마지막 수를 더하여 temp로 지정
        if temp<n:
            result.append(temp) #temp의 수가 인풋 n보다 작을 경우 result의 끝에 추가
        else:
            break #temp의 수가 인풋 n보다 클 경우 함수 빠져나감
    return result

print(fib(30))
#결과 : [0, 1, 1, 2, 3, 5, 8, 13, 21]

2022/10/03 20:01

Frye 'de Bacon

user_input = int(input('input : '))

x = [0,1]
i = 0

while True:
    if x[i] + x[i+1] <= user_input:
        x.append(x[i] + x[i+1])
        i += 1
    else:
        break

print(x)

2022/10/19 17:26

jh

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);
System.out.println("배열의 개수를 입력하세요.");
int num = sc.nextInt();
int[] arr = new int[num];
System.out.println("첫번째 정수를 입력하세요.");
arr[0] = sc.nextInt();
System.out.println("두번째 정수를 입력하세요.");
arr[1] = sc.nextInt();

for(int i=0; i<arr.length-2; i++) {
    arr[i+2] = arr[i]+arr[i+1];
}
System.out.println(Arrays.toString(arr));

}

2022/11/01 01:18

정승수

파이썬 입니다.

a=0

b=1

end=int(input("몇번째 이하까지 할까요?"))

while True:

print(a)

c=a

a=b+a

if a>end:

break

b=c

2022/12/01 17:58

조랭이떡

def fibo(n):
    if n <= 1:
        return 0
    elif n == 2:
        return 1
    return fibo(n-1) + fibo(n-2)

n = int(input())
list = []
for i in range(1, n+1):
    list.append(fibo(i))
print(list)

Python

2022/12/21 14:53

마라떡볶이

def p(n):
    pivot = 0
    list = [0,1]
    for i in range(1,n):
          pivot = list[i] + list[i-1]
          if pivot < n :
                list.append(pivot)
          else:
              break
    return list

2023/01/15 22:01

김성훈

n = 100 a = [0, 1] while sum(a[-2:]) < n: a.append(sum(a[-2:]))

print(a)

2023/01/16 23:13

이성로

n = int(input("좋아하는 수를 넣어주세요.")) pibonacci = [0,1] while pibonacci[-1] <= n: pibonacci.append(pibonacci[-1] + pibonacci[-2]) del pibonacci[-1] print(pibonacci)

2023/02/14 14:26

신찬희

def fib(n): result = []

a, b = 0, 1
while True:
    result.append(a)
    a, b = b, a + b
    if b >= n:  # 찾은 피보나치가 인수값보다 크면 while 문을 빠져나온다.
        break
return result

fibo_list = fib(150) # fibo함수의 인수값보다 작은 수의 피보나치 수열을 찾음

for i in fibo_list: print(i)

2023/02/14 15:40

신찬희

j=0
back=[]
asp=0
plus=0
n=int(input("n1:"))
for i in range(n):
    if j==0:
        print(0)
        print(1)
        print(1)
        j=1
        back.append(1)
        back.append(1)
    plus=back[1]+back[0]
    if plus>n:
        breakz
    print(back[1]+back[0])
    plus=plus+back[1]+back[0]
    asp=back[1]+back[0]
    back[0]=back[1]
    back[1]=asp

2023/02/23 19:55

dhwnstjr

n = int(input('정수 입력'))
pibo =[0, 1]

if n == 0:
    pibo =[0]
elif n == 1: #n은 1일때 [0,1,1]까지해야하는지 [0,1]로 해야하는지 의문이었음.
    pibo =[0,1,1]
elif n>0 and n!=1:
    while pibo[-1] < n: 
        pibo.append(pibo[-1]+pibo[-2])
    if pibo[-1] > n:
        pibo.pop()
elif n == -1:
    pibo =[0,-1,-1]
elif n<0 and n!=-1:
    pibo=[0,-1]
    while pibo[-1] > n:
        pibo.append(pibo[-1]+pibo[-2])
    if pibo[-1] < n:
        pibo.pop()

print(pibo)


2023/03/11 20:55

나는치킨이조아

def fibo(n):
  if n==0 : return 0
  elif n <= 2 : return 1
  return fibo(n-1)+fibo(n-2)


n = int(input())
for i in range(n):
  print(f"{i} : {fibo(i)}")

2023/03/20 13:22

최준하

JAVA

package temp; import java.util.Scanner; public class FibonacciArray { public static void main(String[] args) { int a1= 0 , a2= 1, a3=0, n;

    System.out.print("n Interger Input : ");
    Scanner scn = new Scanner(System.in);
    n = scn.nextInt();

    System.out.print(a1+", "+a2+", ");
    while (a1+a2<=n) {
        a3 = a1 + a2;
        a1 = a2;
        a2 = a3;
        System.out.print(a3);
        if(a1+a2<=n)
        System.out.print(", ");

    }

}

}

2023/03/21 12:46

Do Il Yoon

pibo_list = [0, 1]

while(1):
    max_len = input('정수 n : ')
    try:
        max_len = int(max_len)
        break
    except:
        print("잘못된 입력입니다.")

pibo_num = 0
i = 0
while(1):
    pibo_num = pibo_list[i] + pibo_list[i + 1]
    if pibo_num < max_len:
        pibo_list.append(pibo_num)
        i += 1
    else:
        break

print(pibo_list)

2023/04/03 14:28

HoHyeon Kim

number = int(input())
a = 0
b = 1

while a <= number:
    print(a, end=' ')
    if b > number:
        break
    print(b, end=' ')
    a += b
    b += a

2023/06/08 15:46

아보카토

def pivonachi(n):
    arr = [0,1]
    for i in range(n+1) :
        arr.append(arr[i] + arr[i+1])
    print(arr)
n = int(input())
pivonachi(n)

2023/06/29 11:37

오우석

sequence = [0,1]
num = int(input("Enter Num:"))

for i in range(2,num):
   sequence.append(sequence[i-1]+sequence[i-2])
print(sequence)

2023/08/09 15:19

siu yoon

def fibo(n):
    if n == 0:
        return 0
    elif n == 1:
        return 1
    return fibo(n-1) + fibo(n-2)

number = int(input('숫자를 입력하시오'))

for n in range(number):
    pibonum = fibo(n)
    if pibonum <= number:
        print(pibonum, end=', ')
    else:
        break

2023/08/12 22:23

이광진

number = int(input("정수를 입력하세요"))
list = []

def num(n):
    first = 0
    second = 1
    if n == 0:
        print(list)
    elif n == 1:
        list.append(n)
        print(list)
    elif n > 1:
        list.append(first)
        list.append(second)
        while first+second <= n:
            third = first+second
            list.append(third)
            first = second
            second = third
        print(list)

num(number)

2023/08/28 15:11

jaemirong

a={1:0,2:1} def fibonacci(n): if n in a: return a[n] else: output = fibonacci(n-1)+fibonacci(n-2) a[n]=output return output

b= int(input("원하는 정수를 입력하세요: ")) for i in range(1,b+1): print(fibonacci(i))

2023/10/02 23:22

TOP CODE

def fib(n):
    fib_seq = []
    a, b = 0, 1

    while a <= n:
        fib_seq.append(a)
        a, b = b, a+b

    return fib_seq

n = int(input())
print(fib(n))

2023/10/16 03:23

NH Kim

pibolist = [0, 1]

idx = int(input())

for i in range(0, idx+1):
        if pibolist[-1] > idx:
            del pibolist[-1]
            break
        else:
             pibolist.append(pibolist[i] + pibolist[i+1])

print(pibolist)

2023/11/19 12:07

세이건칼

package codingdojang;

public class Fibonacci1 { public static void main(String[] args) { int count = 8; for(int i = 0; i < count; i++){ System.out.print(fibonacci(i) + " "); } }

public static int fibonacci(int n) {
    if(n <= 1){
        return n;
    }else{
        return fibonacci(n-2) + fibonacci(n-1);
    }
}

}

2024/02/05 22:28

헐헐헐

prev = 0
current = 1 
total = 0

for total in range(n + 1):
    temp = prev
    prev = current
    current = current + temp
    total += 1


print(current)

2024/04/10 02:45

예즤YeZ

nums = int(input("정수를 입력하세요"))
#최초값
f_nums = [0,1]  
#두 수의 합
result = 0

while True:
  result = f_nums[-2] + f_nums[-1]
  #마지막 두 수의 합이 입력받은 수보다 작을 때만 리스트에 추가
  if result <= nums:          
    f_nums.append(result)
  #아니면 스탑 
  else:
    break
#수열 출력
print(f_nums)

2024/04/22 22:37

czarmagnate

가장 기본적인 풀이입니다.

total=1
save=0
before=1

a=input("수를 입력하세요")

while total>=a:
    save=total
    total=before+total
    before=save

print("결과값은 " +total+ "입니다.")

여기서 total을 변하게 한 뒤 before를 원래 total로 바꾸기 위해 save 변수를 넣었습니다.

2024/06/12 20:34

ksu

n = int(input("n: "))
result = []
for i in range(n):
    if i == 0:
        result.append(0)
    elif i == 1:
        result.append(1)
    else:
        result.append(result[i-1] + result[i-2])
print(result)

2024/08/10 15:39

먼지

def fi(n):
    result = []
    for i in range(n+1):
        if i == 0:
            result.append(0)
        elif i == 1:
            result.append(1)
        else:
            result.append(result[i-1] + result[i-2])
            if result[i] >= n and not result[i] == n:
                result.pop()
                break 
    return result

2024/09/02 21:13

전쿵

def fibo(n): r = [0,1]; [r.append(r[i-2]+r[i-1]) for i in range(2,n)]; return r;
fibo(10)
> [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

2024/10/08 04:09

무므뭇

n = int(input())

a1 = 0
a2 = 1
a3 = a1 + a2
print(a1)
print(a2)

while a3 <= n :
  print(a3)
  a1 = a2
  a2 = a3
  a3 = a1 + a2

2024/11/04 14:41

김빛나

var x = [0, 1];
var y = 10;

for (let i = 0; i < y; i++) {
    if (x != 0) {
        x.push(x[i] + x[i + 1]);
    }
}
console.log(x);

2024/12/03 19:29

Kideok KIM

def fibonacci(n) :
    number_list2 = [0, 1]
    i = 0
    j = 1

    while j < n :
        j = number_list2[i] + number_list2[i+1]
        number_list2.append(j)
        i += 1

    return number_list2

2024/12/07 11:10

Orange

n = int(input())
fibonacci = []
for i in range(1, n+1):
    if i == 1:
        fibonacci.append(0)
        print(0)
    if i == 2:
        fibonacci.append(1)
        print(1)
    if i > 2:
        fibonacci.append(fibonacci[i-2] + fibonacci[i-3])
        print(fibonacci[i-1])

2024/12/13 09:01

전세원

fib = [0, 1]

fibNum = int(input("숫자를 입력하시오"))
fibleng = len(fib)-1
fibsum = fib[fibleng-1] + fib[fibleng]

while fibsum < fibNum:
  fib.append(fibsum)
  fibleng = len(fib)-1
  fibsum = fib[fibleng-1] + fib[fibleng]

print(fib)

2025/02/21 20:37

Dasol Lee

n = int(input("정수를 하나 입력하세요. "))
i = 0
a = [0,1]

while True:
    if (a[i]+a[i+1]) > n:
        break
    a.append(a[i]+a[i+1])
    i+=1
print(a)

2025/08/12 11:20

허거덩

def p_number(n):
    a=[0,1]
    if n>=2:
        for i in range(2,n+1):
           a.append(a[i-2]+a[i-1])
    return a[:n+1]

2025/11/30 16:31

k

limit = int(input('Enter number: '))

a, b = 0, 1
while a <= limit:
    print(a, end = ' ')
    a, b = b, a + b

2026/05/14 01:22

우영재

목록으로