Temat: Pole figury płaskiej. (gimnazjum) pola-fig.doc –
64 kB
Celem lekcji jest wprowadzenie pojęcie pola figury płaskiej metodą Jordana i metodą
Monte Carlo
Przebieg lekcji:
1. Powtórzenie wiadomości o mierzeniu
odcinków.
2. Omówienie sposobu
wyznaczania pola figury za pomocą miary Jordana.
3.Zastosowanie programu „Narzędzia
matematyczne II” - WSiP
do wyznaczania ciągów pól segmentów wewnętrznych i zewnętrznych - Rys. 1, 2, 3,
4.
|
|
|
Rys.1 Rys.2
|
|
|
Rys.3 Rys.4
4. Wprowadzenie definicji
pola.
Polem figury
płaskiej nazywamy wspólny kres ciągu pól segmentów
zewnętrznych i ciągu pól segmentów wewnętrznych.
5.Ćwiczenia w mierzeniu pól różnych
figur - prostokąta, trójkąta, trapezu.
6.Wyznaczenia pola odcinka,
punktu, prostej. Figury te mają pole równe 0, ponieważ zarówno ciąg pól
segmentów wewnętrznych jak i ciąg pól segmentó zewnętrznych dąży do 0..
7.Przykłady figur nie
mających pola – wykorzystanie programu „Kwadrat sito”. Kwadrat sito nie ma pola
ponieważ ciąg pól segmentów wewnętrznych dąży do 0 zaś ciąg pól segmentów
zewnętrznych dąży do a2.
|
program Kwadrat_sito; {Turbo Pascal} uses
Graph; var karta,tryb,n,x,y,bok:integer; begin karta:=detect;
initGraph(karta,tryb,''); n:=1; bok:=256; rectangle(0,0,bok,bok); repeat bok:=bok div 2; for x:=0 to n-1 do for y:=0 to n-1 do putPixel(bok+2*x*bok,bok+2*y*bok,
white); n:=n*2; readLn; until bok=1; closeGraph; end. |
program
Kwadrat_sito; {Think Pascal} var n, x, y, bok: integer; begin n := 1; bok := 256; frameRect(0,
0, bok, bok); repeat bok := bok div 2; for x := 0 to n - 1 do for y := 0 to n - 1 do drawLine(bok+2*x*bok,bok+2*y*bok, bok+2*x*bok,bok+2*y*bok); n := n * 2; readLn; end.
until bok = 1; end. |
|
|
|
|
|
|
|
|
Rys.2. Kolejne
etapy budowania "kwadratu - sita".
10. Omówienie sposobu
mierzenia pola metodą „Monte-Carlo”.
Uczniowie mierzą pola
figur tą metodą i porównują wyniki z metodą Jordana.
11.Wykorzystanienie programu
do zmierzenia pola koła o promieniu 1, metodą Monte Carlo.
Pole takiego koła daję
przybliżoną wartość liczby p.
|
Program Pole_kola; {Turbo Pascal} uses
Graph; var
karta,tryb:integer; ilProb,ilSukcesow,x,y:longInt; pole_C:real; begin karta:=detect; initGraph(karta,tryb,''); randomize; fillEllipse(320,240,200,200); for ilProb:=1 to 200000 do begin x:=random(640); y:=random(480); if (getPixel(x,y)=15) or
(getPixel(x,y)=4) then begin putPixel(x,y,4); ilSukcesow:=ilSukcesow+1; end else putPixel(x,y,yellow); end; pole_C:=640*480/200.5/200.5; write('Pole
= ',pole_C/ilProb*ilSukcesow:1:2); readLn; closeGraph; end. |
program Pole_kola; {Think Pascal} var ilProb, ilSukcesow, x, y: longInt; pole_C: real; begin randSeed := tickCount; paintCircle(200, 200, 100); foreColor(redColor); for ilProb := 1 to 10000 do begin x := abs(random) mod 400; y := abs(random) mod 400; if getPixel(x, y) then begin drawLine(x, y, x, y); ilSukcesow := ilSukcesow + 1; end; end; pole_C := 400 / 100.5 * 400 / 100.5; write('Pole
= ',pole_C/ilProb*ilSukcesow:1:2); end. |

Rys.5. Pole koła o promieniu 1 zmierzone metodą Monte Carlo wynosi
3.14.