![]() |
Tänk dig att du
kastar pil mot en
cirkulär piltavla (radie en halv längdenhet), uppsatt på en kvadratisk skiva
med sidan 1 längdenhet (det gröna området, utanför piltavlan, i bilden
till höger). Antag att pilen
träffar piltavla eller skiva (om vi missar piltavlan) i punkten (x, y),
som är två
slumptal. Om vi kastar många pilar så kommer andelen kastade pilar som
träffar
piltavlan dividerat med totala antalet pilar att approixmera pi / 4
(varför?). Skriv ett Matlabprogram som använder denna idé för att approximera pi. Approximationen och felet (avvikelsen från pi) skall skrivas ut. Notera att pi är fördefinierat i Matlab. En nackdel med Monte Carlo-metoder är den långsamma konvergensen, så du får utföra många pilkast, åtminstone en miljon, för att få en hyfsad approximation av pi. | ![]() |
![]() |
Använd samma idé
för att approximera integralen av (1 - x3)(1/3)
då x tillhör intervallet [0, 1]. Om du läser kursen i numerisk analys kommer du
att få se oerhört mycket effektivare metoder för att lösa denna typ av
problem. |
![]() |
355 / 113 är en
rätt bra (och mycket
gammal)
approximation av pi. Låt p och q vara positiva heltal. Skriv ett
Matlabprogram för att hitta det minsta värdet på q
(och tillhörande p) som uppfyller villkoret | p / q - pi |
< | 355 / 113
- pi |
dvs hitta den första rationella approximationen, av pi, som
är
bättre än 355 / 113. Observera att q står i nämnaren och inte i täljaren.Ledning: några av följande funktioner kan (beroende på hur man löser problemet) vara användbara, pi, abs, ceil, floor, round. |
![]() |
Låt ndig(q) vara antalet siffror i q, så ndig(519) = 3, ndig(3322) = 4 etc. Skriv ett Matlabprogram för att bestämma den bästa approximationen, p / q, av exp(1) när ndig(q) = 1, 2, 3, 4, 5 respektive 6. Om det finns flera (p, q)-par (för ett givet värde på ndig(q)) som ger samma värde på felet, skriv då ut (p, q)-paret med minsta värdet på q. |