GodModeKing 0 Posted April 15, 2010 I Slapped Together a little script here to calculate the Fibonacci numbers It go's up to 7540113804746346429 (the 92nd number)until going negative. I'm not asking how to make it go infinitely just seeing if anyone has any comments, concerns or idea's on how to JAZZ I UP (Keep in mind I'm relatively new to Autoit) Global $A Global $B Global $C Hotkeyset("{ESC}", "Off") Run("notepad.exe") WinWaitActive("Untitled - Notepad") $A = 1 $B = 1 $C = $A + $B Send("" & $A) Send("{enter}" & $B) Send("{enter}" & $C) While 1 $A = $B $B = $C $C = $A + $B Send("{enter}" & $C) Wend Func Off() Exit EndFunc Share this post Link to post Share on other sites
AndyG 49 Posted April 15, 2010 (edited) Hi,with bignum.au3it is possible to calculate greater Fibonacci-numbers.#include <bignum.au3> Global $A Global $B Global $C Hotkeyset("{ESC}", "Off") Run("notepad.exe") WinWaitActive("Unbenannt - Editor") $A = "1" $B = "1" $C = _bignum_add($A,$B) Send("" & $A) Send("{enter}" & $B) Send("{enter}" & $C) While 1 $A = $B $B = $C $C = _bignum_add($A,$B) Send("{enter}" & $C) Wend Func Off() Exit EndFunc*EDIT*but as you can see, "Send" is really slow. If you write the numbers to the console, the script will performed a bit faster#include <bignum.au3> Global $A Global $B Global $C Hotkeyset("{ESC}", "Off") $A = "1" $B = "1" $C = "2" $i=3 While $i<1000 ;Fibonacci-Numbers up to .... $i+=1 $A = $B $B = $C $C = _bignum_add($A,$B) consolewrite( $i&" "& $C&@crlf) Wend Func Off() Exit EndFunc Edited April 15, 2010 by AndyG Share this post Link to post Share on other sites
Malkey 231 Posted April 15, 2010 If you find and use the UDF BigNumbers.au3 from here, you can extend the number of accurate Fibonacci numbers returned to well beyond 92.I changed your seeding numbers from 1 and 1 to Zero and 1.expandcollapse popup#include "Full Path Here\BigNumbers.au3" ; BigNumbers.au3 UDF from :- ; http://www.autoitscript.com/forum/index.php?showtopic=83529&view=findpost&p=597491 HotKeySet("{ESC}", "Off") Local $A, $B, $C, $iCount = 2 Run("notepad.exe") WinWaitActive("Untitled - Notepad") $A = 0 $B = 1 $C = $A + $B Send("0" & @TAB & $A) ; 1st seed Send("{enter}" & "1" & @TAB & $<img src='http://www.autoitscript.com/forum/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' /> ; 2nd seed and 1st Fibonacci number Send("{enter}" & "2" & @TAB & $C) ; 2nd Fibonacci number Fn = F(n-1) + F(n-2) While 1 $iCount += 1 $A = $B $B = $C $C = _BigNum_Add($A, $<img src='http://www.autoitscript.com/forum/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' /> Send("{enter}" & $iCount & @TAB & $C) WEnd Func Off() Exit EndFunc ;==>Off #cs Extra correct Fibonacci numbers returned :- 91 4660046610375530309 92 7540113804746346429 93 12200160415121876738 94 19740274219868223167 95 31940434634990099905 96 51680708854858323072 97 83621143489848422977 98 135301852344706746049 99 218922995834555169026 100 354224848179261915075 101 573147844013817084101 #ceYesterday or the day before, I came across a Fibonacci string, which I did not realize existed.It is based on :- Fibonacci String, fn = f(n-1) & f(n-2) ; For n >= 3, and two string seeds.In the following example, the two string seeds used are "b" and "a".#include <Array.au3> Local $FibonacciString[11] = [0] $FibonacciString[1] = "b" $FibonacciString[2] = "a" ;Fibonacci String, fn = f(n-1) & f(n-2) ; For n >= 3. For $i = 3 To UBound($FibonacciString) - 1 $FibonacciString[$i] = $FibonacciString[$i - 1] & $FibonacciString[$i - 2] Next _ArrayDisplay($FibonacciString) Share this post Link to post Share on other sites
UEZ 1,275 Posted April 15, 2010 (edited) For recursion variant without BigNumbers.au3 look here: #768371UEZ Edited April 15, 2010 by UEZ Please don't send me any personal message and ask for support! I will not reply! Selection of finest graphical examples at Codepen.io The own fart smells best! ✌Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!¯\_(ツ)_/¯ ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ Share this post Link to post Share on other sites
Mat 376 Posted April 16, 2010 Or go straight to the top by using binets formula. An AutoIt implementation is here. AutoIt Project Listing Share this post Link to post Share on other sites