home *** CD-ROM | disk | FTP | other *** search
/ HomeWare 14 / HOMEWARE14.bin / os2 / cenv2_19.arj / FIBONACC.CMM < prev    next >
Text File  |  1994-03-04  |  1KB  |  33 lines

  1. //*****************************************************************
  2. //*** Fibonacci.cmm - CMM code to print fibonacci numbers until ***
  3. //*** ver.1           the user presses a key                    ***
  4. //*****************************************************************
  5.  
  6. flush_keyboard() { while kbhit() getch() }
  7.  
  8. /******************************************************************************/
  9. /***********************  ARRAY FIBONACCI METHOD  *****************************/
  10. /******************************************************************************/
  11. printf("Printing Fibonacci sequence while creating an array until you press a key,\n")
  12. printf("or until we run out of memory or stack space.\n")
  13. for ( i = 0; !kbhit(); i++ )
  14.    printf("%d\t",FibArray[i] = (i < 2) ? i + 1 : FibArray[i-1] + FibArray[i-2])
  15.  
  16. flush_keyboard()
  17.  
  18. /******************************************************************************/
  19. /*********************  RECURSIVE FIBONACCI METHOD  ***************************/
  20. /******************************************************************************/
  21. printf("\nPrinting Fibonacci sequence through recursion until you press a key,\n")
  22. printf("or until we run out of memory or stack space.\n")
  23. for ( i = 1; !kbhit(); i++ )
  24.    printf("%d\t",fib(i))
  25.  
  26. flush_keyboard()
  27.  
  28. fib(n)   // return any number from fibonacci seqeunce, evaluating previous values
  29. {        // recursively if necessary
  30.    return (n <= 2) ? n : fib(n-1) + fib(n-2)
  31. }
  32.  
  33.