![]() |
Mathematische Formeln
Ich möchte ein mathe-orientiertes Programm schreiben. Es soll Primzahlen und Pi (so nah wie möglich) ausrechnen. Ich bracuhe dafür die Prozeduren oder Funktionen, am besten den Quellcode, von Euch! Wer mir helfen kann ist ein echtes Mathe-Genie!!!
|
Re: Mathematische Formeln
Zitat:
|
Mit Pi kann ich Dir schonmal aushelfen:
Code:
Dieser Code beruht auf der Newton'schen Näherungsformel und liefert nach diesen 5 Iteratioen Pi auf 10 Stellen genau. Mit diesen Nachkommastellen läßt sich der Umfang eines Kreises, dessen Radius dem Erdradius entspricht, auf einen Millimeter genau berechnen.
uses math;
... Procedure BerechnePi; var Index : Integer; piValue : Extended; Begin piValue:= 3; For Index:= 1 To 5 Do piValue:= piValue - (sin(piValue)/cos(piValue)); End; Mit Delphi-Bordmitteln wirst Du aber recht schnell an die Grenzen der Genauigkeit stossen. Wenn es Dir nur um den Wert geht, dann habe ich schon mal 500 Nachkommastellen für Dich: 3.141592653589793238462643383279502884197169399375 10582097494459230781 64062862089986280348253421170679821480865132823066 47093844609550582231 72535940812848111745028410270193852110555964462294 89549303819644288109 75665933446128475648233786783165271201909145648566 92346034861045432664 82133936072602491412737245870066063155881748815209 20962829254091715364 36789259036001133053054882046652138414695194151160 94330572703657595919 53092186117381932611793105118548074462379962749567 35188575272489122793 818301194912 Wenn Du mehr brauchst, wirst Du sie unter ![]() Grüße, Daniel |
Meine Antwort
Irgendwie, aus mir unbekannten Gründen, welche mic hauc hgar nicht interessieren, usw., hat meine Konzentration nachgelassen! Kannst Du mir nicht das fertige Programm schicken???
Mit freundlichen Grüßen SW |
ähm ... Du hast da oben eine fertige Prozedur stehen, welche nur noch aufgerufen werden muss.
Code:
Den obigen Code-Block als "BerechnePi.dpr" speichern und in der Delphi-IDE laden und kompilieren. Fertig.
program BerechnePi;
uses SysUtils, Math, Dialogs; var Index : Integer; piValue : Extended; Begin piValue:= 3; For Index:= 1 To 5 Do piValue:= piValue - (sin(piValue)/cos(piValue)); ShowMessage( FloatToStr(piValue) ); end. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz