Dim As Double a, b, c, d Var AusForm="##.#########################################################", s="" Var AusName="\ \", i=0 Function Pi As Double asm fldpi 'pi -> st(0) asm fstp qword ptr [Function] 'St(0) -> PI End Function Function AsmPi As Double 'nur zu Testzwecken asm fldpi 'pi -> st(0) asm fstp qword ptr [Function] 'St(0) -> PI End Function Function AtnPi As Double 'nur zu Testzwecken Return 4.0*Atn(1.0) End Function Print "Auswertung" Print "volta hat im QB-/FreeBASIC-Forum eine prima Pi-Funktion gepostet" Print "bisher hielt ich #define Pi 4*Atn(1) fr den pfiffigsten Weg" Print "Auáerdem ist AsmPi schneller, leider nicht immer.." Print Using AusName;"Name";:Print " Wert" &Space(15) &"Bemerkungen" a=Timer b=AsmPi c=Timer-a Print Using AusName;"AsmPi";:Print Using AusForm;b, Print Using"##.#############";c a=Timer b=AtnPi c=Timer-a Print Using AusName;"AtnPi";:Print Using AusForm;b, Print Using"##.#############";c s="3.1415926535897932384626433832795" 'C&P vom Calc.Exe d=Val(s) Print Using AusName;"M$-Calc.Exe"; Print Using AusForm;d, Print " bercksichtigt " &Len(s) &" Stellen" 'DerivePi=3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067'100 Stellen s="3.14159265358979323846264338327950288419716939937510582097494459" 'mehr kann FB nicht d=Val(s) Print Using AusName;"Derive(100Stellen)"; Print Using AusForm;d, Print " bercksichtigt " &Len(s) &" Stellen" Print s &" mehr gibs nich" Print "..und wie die Ergebnisse zeigen, werden auch nicht alle benutzt.." Print "Gruá" Print "ytwinky"; GetKey End