|
|
Początek programu to struktura HTML oraz pobranie danych od użytkownika.
- Kod: <!DOCTYPE html> ... <script>
- Schemat: Krok 1 (START). Te znaczniki otwierają dokument i blok skryptu, co odpowiada rozpoczęciu działania programu.
- Kod: var n = prompt("n:", "");
- Schemat: Krok 2 (Czytaj: n). Funkcja prompt wyświetla okno dialogowe, prosząc użytkownika o podanie liczby prób n, a następnie zapisuje tę wartość w zmiennej.
Inicjalizacja zmiennych i Pętla
Przed głównymi obliczeniami program ustawia liczniki.
- Kod: k = 0;
- Schemat: Krok 3 (część pierwsza: k:=0). Zmienna k (liczba trafień w koło) jest zerowana.
- Kod: for(i = 1; i <= n; i++){
- Ta linia w języku JavaScript realizuje jednocześnie trzy elementy schematu:
- Krok 3 (część druga: i:=1): i = 1 ustawia licznik pętli na start.
- Krok 8 (Decyzja: i≤n): i <= n sprawdza, czy należy kontynuować pętlę. Jeśli prawda (T) – pętla działa; jeśli fałsz (N) – pętla się kończy.
- Krok 7 (i:=i+1): i++ zwiększa licznik o 1 po każdym wykonaniu pętli.
- Ta linia w języku JavaScript realizuje jednocześnie trzy elementy schematu:
Wnętrze pętli (Symulacja Monte Carlo)
Wewnątrz pętli odbywa się właściwe losowanie i sprawdzanie warunków.
- Kod: x = Math.random(); oraz y = Math.random();
- Schemat: Krok 4 (x:=random, y:=random). Funkcja Math.random() losuje liczby z przedziału 0−1, ustalając współrzędne punktu.
- Kod: if ((x * x + y * y) <= 1) k++;
- Ta instrukcja warunkowa łączy dwa kroki:
- Krok 5 (Decyzja: x2+y2≤1): Sprawdzenie, czy punkt leży w kole (zgodnie z twierdzeniem Pitagorasa x2+y2≤r2, gdzie r=1).
- Krok 6 (k:=k+1): Instrukcja k++ wykonuje się tylko wtedy, gdy warunek jest spełniony (ścieżka "T" na schemacie).
- Ta instrukcja warunkowa łączy dwa kroki:
Obliczenia końcowe i Wynik
Po zakończeniu pętli (gdy warunek z kroku 8 zwróci "Nie"), program przechodzi do podsumowania.
- Kod: p = 4 * k / n;
- Schemat: Krok 9 (p:=4∗k/n). Obliczenie przybliżenia liczby Pi na podstawie stosunku trafień (k) do wszystkich prób (n). Mnożymy przez 4, ponieważ badaliśmy tylko jedną ćwiartkę koła.
- Kod: alert('pi = ' + p);
- Schemat: Krok 10 (Pisz: p). Funkcja alert wyświetla wynik w wyskakującym oknie przeglądarki.
- Kod: </script>
- Schemat: Krok 11 (STOP). Zakończenie skryptu.
