Wurzelziehen
Übersicht

DarkDragon-1993Betreff: Wurzelziehen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Kurz und bündig:
Wie kann man Wurzelziehen? Gibt es da irgendeinen Befehl für? Oder eher ne Formel? Danke für eure Antworten, mfG DarkDragon-1993 |
||
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
sqr![]() |
||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
![]() |
tedy |
![]() Antworten mit Zitat ![]() |
---|---|---|
Allerdings würde ich dir eher zur Potenz schreibweise raten da sie schneller ist. | ||
DarkDragon-1993 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wusst ichs doch^^
Ok, danke an alle |
||
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
@tedy: Leider falsch.
Zumindest auf meinem PC ist Potenzieren wesentlich langsamer. FOlgender Code zur Zeitmessung: Code: [AUSKLAPPEN] SeedRnd MilliSecs()
start=MilliSecs() For i=1 To 1000000 x=Sqr(Rand(1,1000)) Next DebugLog "Sqr: "+(MilliSecs()-start)+"ms für 1.000.000 Durchläufe" start=MilliSecs() For i=1 To 1000000 x=Rand(1,1000)^(0.5) Next DebugLog "Potenz: "+(MilliSecs()-start)+"ms für 1.000.000 Durchläufe" WaitKey() End Bei mir: Sqr: 200ms, Potenzieren 379ms. |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
![]() |
tedy |
![]() Antworten mit Zitat ![]() |
---|---|---|
hmm
sieht wohl soaus ... Es liegt daran das er eine Variable potenzieren muss Bei Code: [AUSKLAPPEN] SeedRnd MilliSecs()
start=MilliSecs() For i=1 To 1000000 x=Sqr(200) Next DebugLog "Sqr: "+(MilliSecs()-start)+"ms für 1.000.000 Durchläufe" start=MilliSecs() For i=1 To 1000000 x=200^0.5 Next DebugLog "Potenz: "+(MilliSecs()-start)+"ms für 1.000.000 Durchläufe" WaitKey() End Ist die Potenz schneller ![]() |
||
BIG BUG |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Junge, BB ist so schlau alle konstanten Berechnungen bereits beim Compilieren aufzulösen...
SQR ist eine Funktion, daher rechnet er zur Laufzeit noch jedesmal die Wurzel, während er beim Potenzieren den Wert schon beim Compilieren ausrechnet und nur noch das Ergebnis zuweist. Eine Zeitmessung ohne Variable oder Funktion ist daher schlicht sinnlos. |
||
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final) |
![]() |
Nova |
![]() Antworten mit Zitat ![]() |
---|---|---|
Und als Beweiß:
Code: [AUSKLAPPEN] SeedRnd MilliSecs()
start=MilliSecs() For i=1 To 1000000 x=Sqr(200) Next Text 1, 1, "Sqr: "+(MilliSecs()-start)+"ms für 1.000.000 Durchläufe" start=MilliSecs() For i=1 To 1000000 x=200^0.5 Next Text 1, 15, "Potenz: "+(MilliSecs()-start)+"ms für 1.000.000 Durchläufe" start=MilliSecs() For i=1 To 1000000 x=1 Next Text 1, 29, "Nichts: "+(MilliSecs()-start)+"ms für 1.000.000 Durchläufe" WaitKey End Bei mir siehts so aus: Sqr: 93 ms Potenz: 84 ms Nichts: 84 ms Anscheinend ist Sqr auch so außerordentlich schnell, wusste ich noch nicht. |
||
AMD Athlon II 4x3,1GHz, 8GB Ram DDR3, ATI Radeon HD 6870, Win 7 64bit |
![]() |
Nicdel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Da es aber kaum Sinn macht nur eine Zahl 1 Millionen mal zu potenzieren ist Sqr vielleicht doch praktischer... | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group