2010-09-26 NVMD Naturvetenskapligt program Matte Data
Värmdö gymnasium
progB_ ma_.doc
Programmering-Matematik, Numeriska metoder på tisdag
Numeriska beräkningar där vi löser matematiska uppgifter med hjälp av programmering i C++. Maila/visa upp dina källkodsfiler.
1. matematiken/kemin/fysiken får vi lära oss att använda lämpligt antal decimaler i svaret. Gör ett program där du med inmatning väljer antalet decimaler, start (x), stopp (x) och antal steg.
Programmet ska sen skriva ut en värdetabell med de valda parametrarna (använd iomanip). Skriv ut en värdetabell med 20 x- och y-värden för funktionen
24 - 4x 2x
f(x)
2 .
Tips! Ge variablerna defaultvärden under tiden du bygger upp programmet, så du slipper skriva in vid varje testkörning.
2. Skriv ett program som letar reda på nollställena till funktionen f ( x ) x
2 2 x 15 numeriskt. Vi låter datorn jobba sig igenom många (tusentals? miljontals?) x-värden och undersöker ifall vi hittar några y-värden som ligger vid noll (nollställen) eller i alla fall nära noll (0 ± felmarginal, som vi kan välja själv).
OBS! Skriv inte ut alla värden som loopas utan bara de runt 0 (inom felmarginalen).
3. Skriv ett program där du använder pq-formeln för att lösa andragradare börja med att testa på samma funktion som uppgift 2.
4. Med p,q-formeln kan du lösa andragradsekvationer. Motsvarande formler att lösa t.ex.
4:e-gradare finns inte. Numeriskt kan du hitta nollställena till funktioner av vilken ordning som helst. Modifiera ditt program så att det kan lösa valfri polynomfunktion (ska kunna matas in) t.ex. f ( x ) 0 , 2 x
3 0 , 1 x
2 15 x 1 numeriskt, nöj dig med att programmet klarar fjärdegradare.
5. Skriv ett program som beräknar lutningen i valfritt x hos funktionen 15
2 )
( x x
2 x f
Lutningen är ju Δy/Δx. Beräkna genom att ta 2 punkter och lägg till resp. dra ifrån 0,1. ( 0 , 1 ) ( 0 , 1 )
) 1 , 0 ( ) 1 , 0 (
x x
x f x
lutningen f känner ni igen (y
2-y
1)/(x
2-x
1)
x f(x) 2x
2 4x - 24
-0,2 -24,88
-0,18 -24,78
-0,16 -24,69
-0,14 -24,60
-0,12 -24,51
-0,1 -24,42
-0,08 -24,33
-0,06 -24,25
-0,04 -24,16
-0,02 -24,08
0 -24,00
0,02 -23,92
0,04 -23,84
….. ….