2009-04-26 3 views
1

Weiß jemand, wie kann ich Pi (π) in VB berechnen?Wie kann ich Pi (π) in VB berechnen?

+0

, wie viele Stellen wollen Sie? –

+1

Voting zu schließen, seit "wie bekomme ich den Wert von Pi" ist so trivial, um eine nutzlose Frage zu sein, und "wie berechne ich Pi" ist nicht programmierungsbezogen. Die Frage ist hinreichend zweideutig, wer weiß, welchen er meint. – mquander

+8

Nur weil die Frage für Sie trivial ist, macht es einem Neuling in der Programmierung nicht einfach. – TheTXI

Antwort

13
System.Math.Pi 
+0

Das "berechnet" es nicht. Das ist nur ein vorberechneter Wert. – Almo

-6

Wenn Sie die integrierten Werte in der .net-Mathematik-Bibliothek verwenden möchten ...

22/7

+0

Da sind also einige bessere Bruchannäherungen als 22/7 ... –

+1

aber verwende den buil-tin Wert! –

+0

Ich befürworte nicht die Verwendung einer fraktionalen Approximation gegenüber dem eingebauten Wert überhaupt, und 22/7 war der erste, den ich mir aus der Nähe denken konnte :) – TheTXI

2

Wenn der OP wird über Algorithmen als Lernerfahrung zu fragen, gut für ihn/sie.

Wenn das OP bei der Suche nach dem integrierten Wert Hilfe benötigt, hat er/sie es jetzt.

Aber wenn das Ziel ein guter Wert von höherer Genauigkeit als der Einbau-Wert mit einem Minimum an Aufwand ist, hier ist pi auf eine Million Ziffern:

http://www.eveandersson.com/pi/digits/1000000

Das sollte genug sein.

Ich hoffe, das OP fragt nicht, wie man den Wert von Pi jedes Mal neu berechnet, wenn es benutzt wird. Das wäre Wahnsinn.

6

Wenn Sie VB6 meinen, hat es keine Pi-Konstante. Sie können:

Dim pi as Double 
pi = 4 * Atn(1) 
-1

Meh, so effizient, präzise und vor allem langweilig Annäherungen ... Versuchen this statt! Pseudo-Code folgt:

  • initialisieren innen und Gesamt als 0
  • repeat eine unglaubliche Menge von Zeiten:
    • zuweisen sowohl x und y Zufallswerte zwischen (und einschließlich) 0 und +1.
    • Abstand als die Quadratwurzel von (x + y)
    • wenn Abstand ≤ 1, 1 wird addiert innen
    • 1 wird addiert zuweisen Gesamt
  • assign pi als innerhalb/Gesamt * 4