Advertisement
Guest User

Untitled

a guest
May 24th, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.06 KB | None | 0 0
  1. n=9999
  2. liczbaPi = function(n)
  3. {
  4. #ustawiamy wartosci poczatkowe dla zmiennych x i y
  5. x=0
  6. y=0
  7. #rysujemy wykres i ustawiamy jego ograniczenia (tez poto aby wyczyscic pole z wykresami)
  8. plot(x,y,xlim=c(-0.2,2.2), ylim=c(-0.2,2.2))
  9. #musimy miec zmienna liczaca ile jest puntkow spelniajacych zalozenie
  10. i=0
  11. #wykonujemy petle generujac dowolne punkty z przedzialu 0-2, sprawdzamy czy spelniaja zalozenie
  12. #nastepnie rysujemy wykres tych punktow
  13. for(m in 1:n){
  14. x = runif(1,0,2)
  15. y = runif(1,0,2)
  16. #warunek to zwykle rownanie kola tylko musielismy przesunac jego srodek do srodka kwadratu.
  17. if((x-1)^2 + (y-1)^2 <= 1){
  18. #inkrementujemy i(ilosc punktow spelniajacych zalozenie)
  19. i=i+1
  20. #dorysowujemy punkty
  21. points(x,y,col="green")
  22. }
  23. else
  24. {
  25. points(x,y,col="red")
  26. }
  27. }
  28. #zmienna i przybliza nam pole kola, a ilosc wszystkich punktow pole kwadratu
  29. #stosunek "pola" kola wpisanego do "pola" calego kwadratu da nam PI/4. Wystarczy tylko pomnozyc przez 4 i wychodzi PI
  30. return((i/n)*4)
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement