Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Gast
|
Verfasst am: 04.11.2004, 00:17 Titel: Wurzeln ziehen |
|
|
Hi!
Da es mir einfach zu kompliziert ist ne lib. in Delphi/C++ zu schreiben, einzubinden, um mehr Nachkommastellen zu verwenden. Ich habe ein Interessantes Verfahren gefunden, das nicht dem Intervallhalbierungsverfahren gleicht und damit nicht darauf angewiesen ist alle stellen "auf einmal" zu berechnen.
Meine Idee war, immer die berechnete Nachkommazahl in eine Datei/einen String zu Adden. Die berechnung sollte so ablaufen:
http://www.tinohempel.de/info/mathe/wurzel/wurzel.htm
Ich wollte, dass jede einzelne Nachkommastelle mit 100Multipliziert wird um "die nächsten 2 zahlen herunterzuholen"; also frage ich mich: wie kann ich eine "Wurzel" mit einer stelle berechnen, sodass ein Rest entsteh, und wie kann ich eine Ziffer in einen String oder eine Datei speichern/addieren? |
|
Nach oben |
|
|
Stormy
Anmeldungsdatum: 10.09.2004 Beiträge: 567 Wohnort: Sachsen - wo die schönen Frauen wachsen ;)
|
Verfasst am: 04.11.2004, 16:48 Titel: |
|
|
Benutz einfach folgende Routine. Ich habe auch automatisch eine Fehlererkennung bei falschen Parameter gemacht...
Stellen ist die Anzahl der Stellen, die du nach dem Komma (sofern vorhanden haben willst).
Code: | CLS
PRINT ZieheWurzel (7, 1) ' Ausgabe: 2.6
FUNCTION ZieheWurzel (Zahl, Stelle)
IF Zahl <= 0 THEN ZieheWurzel = -1: EXIT FUNCTION
tmp$ = STR$(SQR(Zahl))
IF INSTR(tmp$, ".") THEN
IF Stelle > 0 THEN
tmp$ = MID$(tmp$, 1, INSTR(tmp$, ".") + Stelle)
END IF
END IF
ZieheWurzel = VAL(tmp$)
END FUNCTION |
cu, Stormy _________________ +++ QB-City +++ Die virtuelle Stadt für jeden Freelancer - Join the community!
Projekte: QB-City,MysticWorld (RPG), 2D-OpenGL-Tutorial |
|
Nach oben |
|
|
simfight Gast
|
Verfasst am: 05.11.2004, 00:00 Titel: |
|
|
ich verstehe leider den source nich... keine ahnung ich mache immer waws falsch... naja was solls kannst du mal n beispiel prog postenwo ich(und wie) die schleife einbinde oder noch besser alles komkmentieren?
wäre echt nett, aber war auch so schon ein guter schritt in die richtige ruchtung... thx |
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2507 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 06.11.2004, 11:03 Titel: |
|
|
Normalerweise verwendet man dafür bekanntlich
Code: | wurzel! = SQR(wert!)
wurzel# = SQR(wert#) |
Im letzteren Fall mit 16 Stellen Genauigkeit. Damit dieses Projekt dennoch Sinn macht, wäre irgend eine hochgenaue Wurzelberechnung denkbar. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
|
simfight Gast
|
Verfasst am: 06.11.2004, 19:47 Titel: |
|
|
jaja mensch ich weiss... hab jetzt nenalgorythmus für java mit nem proggi, funzt ganz gut... aber für QB wäre trotzdem ganz gut |
|
Nach oben |
|
|
|