Hopp til innhald
Oppgåve

Teikning av polynomfunksjonar med Python

Vi ønskjer å lage eit program som kan teikne ein vilkårleg tredjegradsfunksjon.

3.3.37

Vi ønskjer å lage eit program som skal kunne ta imot ein vilkårleg tredjegradsfunksjon frå brukaren av programmet og teikne grafen for x-verdiar i eit intervall som brukaren bestemmer.

Det kan vere lurt å gå gjennom artikkelen Teikne grafar med pyplot() før du byrjar med oppgåvene.

a) Vurdering

Korleis kan brukaren skrive inn tredjegradsfunksjonen?

Løysingsforslag

Vi må gå ut ifrå at brukaren har funksjonen på forma

f(x)=ax3+bx2+cx+d 

Då treng vi berre ta imot verdien på konstantane a, b, c og d.

Til dømes vil konstantane ha verdien 1, 2, 3 og 4 dersom funksjonen er

f(x)=x3+2x2+3x+4 

b) Algoritme

Skriv algoritmen til eit slikt program. Hugs å få med gode tekstar som forklarer kva programmet gjer.

Løysingsforslag
  • Skriv til skjermen "Dette programmet teiknar funksjonen f(x) = ax^3 + bx^2 + cx + d for x-verdiar i intervallet frå s til t.".
  • Skriv til skjermen "Skriv inn verdien til konstanten a:".
  • Ta imot talet frå brukaren, konverter det til eit ekte tal, og set det lik variabelen a.
  • Skriv til skjermen "Skriv inn verdien til konstanten b:".
  • Ta imot talet frå brukaren, konverter det til eit ekte tal, og set det lik variabelen b.
  • Skriv til skjermen "Skriv inn verdien til konstanten c:".
  • Ta imot talet frå brukaren, konverter det til eit ekte tal, og set det lik variabelen c.
  • Skriv til skjermen "Skriv inn verdien til konstanten d:".
  • Ta imot talet frå brukaren, konverter det til eit ekte tal, og set det lik variabelen d.
  • Skriv til skjermen "Skriv inn verdien til konstanten s:".
  • Ta imot talet frå brukaren, konverter det til eit ekte tal, og set det lik variabelen s.
  • Skriv til skjermen "Skriv inn verdien til konstanten t:".
  • Ta imot talet frå brukaren, konverter det til eit ekte tal, og set det lik variabelen t.
  • Lag ei liste x med 100 x-verdiar frå s til t.
  • Lag ei liste y med y-verdiar ved å setje lista x inn i funksjonen f(x) ved hjelp av variablane a, b, c og d.
  • Lag den grafiske framstillinga.
  • Send den grafiske framstillinga til skjermen.

c) Koding

Lag programmet og test det med ein tredjegradsfunksjon, til dømes funksjonen V(x) i artikkelen Eit praktisk eksempel på ein tredjegradsfunksjon.

Tips: Sjå lengst nede i artikkelen Teikne grafar med pyplot() for å gjere den grafiske framstillinga penare.

d) Spørsmål

Kan programmet brukast til å teikne andregradsfunksjonar eller rette linjer?

3.3.38 Utfordring

Det er litt tungvint med alle desse input()-kommandoane i programmet i oppgåva ovanfor. Det finst måtar å lage programmet på slik at brukaren kan skrive inn alle tala i éin smekk. Då treng vi til dømes funksjonen split() til å splitte opp det som brukaren skriv inn. Vi vil òg trenge ei for-lykkje.

a) Utforsking

Gjer eit søk på internett for å finne ut korleis funksjonen split() fungerer.

b) Algoritme

Vi skal gjere om på programmet ved hjelp av funksjonen split(). Endre på algoritmen til programmet slik at brukaren kan skrive inn alle tala med éin gong.

c) Koding

Gjer om på programmet etter den nye algoritmen, og test at det fungerer slik det skal.