algorytm.org

Implementacja w Java



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?

Całkowanie numeryczne - metoda Monte Carlo II - Implementacja w Java
Ocena użytkownikóww: *****  / 1
SłabyŚwietny
Nadesłany przez Tomasz Lubiński, 10 maja 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.

Metoda_Monte_Carlo.java:
// Calkowanie numeryczne - metoda Monte-Carlo
// www.algorytm.org
// (c)2008 by Tomasz Lubinski

public class Metoda_Monte_Carlo {

	//funkcja dla ktorej obliczamy calke
	private static double func(double x) {
		return x*x+3;
	}

	//random number from a to b
	private static double randomPoint(double a, double b) {
        return  a + Math.random() * (b-a);
	}	
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		double xp, xk, calka;
		int n;
		
		System.out.println("Podaj poczatek przedzialu calkowania");
		xp = Console.readDouble("");
		
		System.out.println("Podaj koniec przedzialu calkowania");
		xk = Console.readDouble("");

		System.out.println("Podaj dokladnosc calkowania (w setkach punktow)");
		n = Console.readInt("");
		n *= 100;
   
        calka = 0;

        for (int i=0; i<n; i++) {
        	calka += func(randomPoint(xp, xk));
        }

        calka = (calka / (double)n) * (xk - xp);        
		
		System.out.println("Wartosc calki wynosi w przyblizeniu " + calka);

	}

}
Dodaj komentarz