게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
기초c언어 질문입니다(피보나치 관련)
게시물ID : programmer_3617짧은주소 복사하기
작성자 : 수입소보로
추천 : 0
조회수 : 834회
댓글수 : 6개
등록시간 : 2014/05/29 23:37:18
옵션
  • 본인삭제금지
현재 학교에서 함수에 대해서 배우고 있습니다!
피보나치와 관련된 예제인데요,

Enter a number: 1   //1입력 후 엔터
fibonacci number is 1    //피보나치 수열의 첫번째 값을 구한 후 출력
Enter a number: 2    // 2입력 후 엔터
fibonacci number is 1    // 피보나치 수열의 두번째 값을 구한 후 출력

Enter a number: -1    // -1입력 후 엔터
                               //프로그램 종료

그니까 숫자 n을 입력하면 피보나치 수열의 n번째 값이 나오는 프로그램을 작성해야 합니다 (단 -1 입력시 프로그램 종료)



#include <stdio.h>

int get_fibonacci_number(int n);
int get_number();

int main(void)

{
    int n;
    int fibo;
    n=get_number();

    while(n!=-1)

    {
      fibo=get_fibonacci_number(n);
      printf("fibonacci number is %d\n", fibo);
      n=get_number();
    }

    return 0;

}


여기서 저는 위의 메인함수를 수정하지 않고 get_fibonacci_number과 get_number 함수를 정의하여 위의 결과값을 뽑아내야 하는데요,
제가 작성한 두 함수의 정의는 이러합니다

 
int get_number()   //첫번째 함수의 정의
   {
    int num;
    printf("Enter a number: ");
    scanf("%d",&num);

    return num;
   }

int get_fibonacci_number(int n)    //두번째 함수의 정의
    {
      int fn,fn_1,fn_2;
      int i=1;

         fn_1 = 1;
         fn_2 = 1;

         while(i=n)
         {
          fn = fn_1 + fn_2;
          fn_2 = fn_1;
          fn_1 = fn;

          i++;
          }

      return fn;

    }



그런데 이렇게 하면 피보나치 넘버가 출력이 안되더라구요ㅠ 어떤 곳이 문제인지 알려주시면 감사하겠습니다 ㅠ

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호