algorytm.org

Implementacja w C#



Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

Test Pi - Implementacja w C#
Ocena użytkownikóww: *****  / 2
SłabyŚwietny
Nadesłany przez Tomasz Lubiński, 06 października 2008 01:00
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.

Jeżeli nie odpowiada Ci sposób formatowania kodu przez autora skorzystaj z pretty printer'a i dostosuj go automatycznie do siebie.

Test_PI/Class1.cs:
//testowanie generatorow liczb pseudolosowych
//test PI 
//www.algorytm.org (c) 2008 Tomasz Lubinski

using System;

namespace Test_PI
{
	/// <summary>
	/// Test PI.
	/// </summary>
	class Class1
	{
		/// <summary>
		/// Test PI 
		/// </summary>
		[STAThread]
		static void Main(string[] args)
		{
			int n; 			//liczba losowanych punktow
			double x, y; 	//wspolrzedne losowanych punktow
			int Isq, Ic; 	//liczby punktow w kwadracie oraz kole
			double pi, wzor;//wynik

			Console.WriteLine("Dla ilu punktow wykonac test?");
			n = int.Parse(Console.ReadLine());
		
			Random rand = new Random();

			Isq = 0;
			Ic = 0;
		
			while (Isq < n)
			{
				x = rand.NextDouble();
				y = rand.NextDouble();
				Isq = Isq + 1;
				if (x*x + y*y <= 1) 
					Ic = Ic + 1;
			}
		
			pi = (double)4.0*Ic / Isq;
			wzor = 3.141592653589793238462643383279502884197169399;
		
			Console.WriteLine("Wzorcowe  pi = " + wzor);
			Console.WriteLine("Wyliczone pi = " + pi);
			Console.WriteLine("Roznica = " + Math.Abs(wzor - pi));
		}
	}
}
Komentarze
photo
-1 # Leszek L 2012-03-20 14:16
Przy założeniu, że n = int.MaxValue dokładność dostajemy maksymalnie do 5 znaków po przecinku. Także metoda raczej średnia.
Odpowiedz | Odpowiedz z cytatem | Cytować
Dodaj komentarz