* tests/ac_test2.prg
* tests/adirtest.prg
* tests/ainstest.prg
* tests/altdtest.prg
* tests/and_or.prg
* tests/array16.prg
* tests/arrayidx.prg
* tests/arrays.prg
* tests/arreval.prg
* tests/arrindex.prg
* tests/atest.prg
* tests/box.prg
* tests/boxtst2.prg
* tests/byref.prg
* tests/calling.prg
* tests/clasinit.prg
* tests/clasname.prg
* tests/classch.prg
* tests/classes.prg
* tests/clsdata.prg
* tests/cmphello.prg
* tests/codebl.prg
* tests/codebloc.prg
* tests/comments.prg
* tests/curdirt.prg
* tests/db_brows.prg
* tests/dbevalts.prg
* tests/docase.prg
* tests/dosshell.prg
* tests/dupvars.prg
* tests/dynobj.prg
* tests/dynsym.prg
* tests/exittest.prg
* tests/extend1.prg
* tests/exthrb.prg
* tests/fib.prg
* tests/fornext.prg
* tests/fortest.prg
* tests/funcarr.prg
* tests/gfx.prg
* tests/gtchars.prg
* tests/gtcolors.prg
* tests/gtkeys.prg
* tests/hello.prg
* tests/ifelse.prg
* tests/inherit.prg
* tests/inhprob.prg
* tests/inifiles.prg
* tests/initexit.prg
* tests/inline.prg
* tests/iotest.prg
* tests/iotest2.prg
* tests/keywords.prg
* tests/langmsg.prg
* tests/linecont.prg
* tests/lnlenli1.prg
* tests/lnlenli2.prg
* tests/longdev.prg
* tests/longstr.prg
* tests/longstr2.prg
* tests/mathtest.prg
* tests/memfile.prg
* tests/memory.prg
* tests/readhrb.prg
* tests/rto_get.prg
* tests/rto_tb.prg
* tests/scroll.prg
* tests/seconds.prg
* tests/set_test.prg
* tests/speedold.prg
* tests/stripem.prg
* tests/t1.prg
* tests/test_all.prg
* tests/testbrw.prg
* tests/testhtml.prg
* tests/testid.prg
* tests/testpre.prg
* tests/testwarn.prg
* tests/ticktime.prg
* tests/tstchbx.prg
* tests/tstmacro.prg
* tests/tstprag.prg
* tests/vec1.prg
* tests/videotst.prg
* tests/vidtest.prg
* cleaning up tests (roughly complete)
47 lines
591 B
Plaintext
47 lines
591 B
Plaintext
/*
|
|
* $Id$
|
|
*/
|
|
|
|
PROCEDURE Main()
|
|
|
|
LOCAL n
|
|
|
|
FOR n := 1 TO 20
|
|
QOut( FibR( n ) )
|
|
QOut( FibI( n ) )
|
|
NEXT
|
|
|
|
RETURN
|
|
|
|
FUNCTION FibR( n )
|
|
|
|
LOCAL nFib
|
|
|
|
IF n < 2
|
|
nFib := n
|
|
ELSE
|
|
nFib := FibR( n - 2 ) + FibR( n - 1 )
|
|
ENDIF
|
|
|
|
RETURN nFib
|
|
|
|
FUNCTION FibI( n )
|
|
|
|
LOCAL nFibMin1 := 1
|
|
LOCAL nFibMinN1 := 0
|
|
LOCAL i := 1
|
|
LOCAL nFib
|
|
|
|
IF n < 2
|
|
nFib := n
|
|
ELSE
|
|
DO WHILE i < n
|
|
nFib := nFibMin1 + nFibMinN1
|
|
nFibMinN1 := nFibMin1
|
|
nFibMin1 := nFib
|
|
++ i
|
|
ENDDO
|
|
ENDIF
|
|
|
|
RETURN nFib
|