Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Mahte -> Wurzel von 2 berechnen und als String ausgeben
fawkes - Di 14.10.03 15:47
Titel: Mahte -> Wurzel von 2 berechnen und als String ausgeben
Hallo Expertenvolk,
ich hab da mal ne Frage. Also mein Problem ist. Ich will Zahlen radizieren deren Ergebnis irrational ist, wie zB 2 und dann ausgeben. So sieht es bei mir aus:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| procedure wurzel; var Ergebnis : PChar; wurzel : Extended; begin wurzel := sqrt(2); FloatToText(Ergebnis, wurzel,fvExtended,ffGeneral,50,50); end; |
Nur leider gibt der Code zur Laufzeit einen EAccessViolation-Fehler aus. Also Speicherzugriffsverletzung. Hab so gut wie keine Ahnung wieso. Vielleicht wegen der Extended-Variable, die ich erst speichere. Aber die Funktion FloatToText kann nur ne Variable. Ich hoffe ihr könnt mir helfen.
Danke,
fawkes
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.
Mari - Di 14.10.03 16:21
Wie wär's damit?
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| procedure Wurzel; var ergebnis:String; wurzel: Extended; begin wurzel := sqrt(2); ergebnis := floattostr(wurzel); end; |
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.
fawkes - Di 14.10.03 16:43
Ja das würd gehen.
Nur ich will ein paar mehr Stellen als die, die FloattoStr ausgibt.
Trotzdem Danke
barfuesser - Di 14.10.03 17:37
FloatToStr gibt meines Wissens alle verfügbaren Stellen aus. Wenn Du mehr Stellen wünschst, mußt Du wahrscheinlich die Wurzel stellenweise ausrechnen und das Ergebnis als String zusammenbauen.
barfuesser
Mari - Di 14.10.03 17:41
ergebnis := floattostrf(wurzel,ffgeneral,18,18);
Genauer geht es dann aber nicht mehr, da nicht mehr Stellen ausgerechnet werden.
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.
fawkes - Di 14.10.03 17:48
Ja das hab ich gerade auch gemerkt(man war ich blöd) und da die Datentypen ja nur maximal 20 Stellen oder so unterstützen steh ich jetzt vor einem Problem.
Wie berechne ich die Wurzel von 2 auf 400 Stellen und mehr.
Hat da irgendjemand ne Ahnung?
Danke,
fawkes
fawkes - Di 14.10.03 19:13
Also ich hab dann mal weiterüberlegt. Eigentlich brauche ich einen Variablentype, welcher Dezimal-Werte unbestimmter Länge verwalten kann. Kennt vielleicht irgendjemand dafür eine Klasse bzw. Komponente?
Das wäre mir sehr hilfreich!
Danke,
fawkes
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!