Hopp til innholdet

Algoritmer i Python: oppgaver med fasit

Matematikk 1T · Vg1, teoretisk matematikk · 14 oppgaver · eksamen: del 2

14 oppgaver i algoritmer i Python i 1T, med løsning steg for steg og fasit. Prøv selv først, og trykk «Vis løsning» når du vil sjekke svaret. Oppgavene er sortert fra kort til lang løsning.

Lær dette i Sophus: 8.3 Halveringsmetoden, 8.4 Vekstfart med et program i Matematikk 1T, med video og øving med nye tall hver gang. Se leksjonen

Lettere oppgaver

Oppgave 1

Hvilken linje regner ut differansekvotienten riktig?

  1. A: (f(2) - f(2 + h)) * h
  2. B: (f(2 + h) - f(2)) / h
  3. C: f(2 + h) - f(2) / h
  4. D: (f(2 + h) - f(2)) / 2
Vis løsning på oppgave 1

Telleren f(2 + h) − f(2) i parentes, delt på h.

Fasit: B: (f(2 + h) - f(2)) / h

Fra leksjon 8.4 Vekstfart med et program · Se forklaringen i videoen

Oppgave 2

f(a) = −1 og f(b) = 7. Kan vi være sikre på at halveringsmetoden finner et nullpunkt mellom a og b?

  1. A: ja
  2. B: nei
  3. C: bare hvis f er et polynom
  4. D: bare hvis b − a er lite
Vis løsning på oppgave 2

f(a) og f(b) har ulikt fortegn, så det finnes et nullpunkt mellom.

Fasit: A: ja

Fra leksjon 8.3 Halveringsmetoden · Se forklaringen i videoen

Oppgave 3

f(a) = −3 og f(b) = −1. Kan vi være sikre på at halveringsmetoden finner et nullpunkt mellom a og b?

  1. A: ja
  2. B: nei
  3. C: bare hvis f er et polynom
  4. D: bare hvis b − a er lite
Vis løsning på oppgave 3

f(a) og f(b) har samme fortegn.

Da vet vi ikke om det finnes et nullpunkt.

Fasit: B: nei

Fra leksjon 8.3 Halveringsmetoden · Se forklaringen i videoen

Oppgave 4

f(x) = x³ + x − 3, a = 1 og b = 2. f(1,5) = 1,875. Hva er det nye intervallet?

  1. A: [1,5; 2]
  2. B: [1; 2]
  3. C: [1; 1,5]
  4. D: [0; 1,5]
Vis løsning på oppgave 4

f(1) = −1 og f(1,5) > 0, så nullpunktet ligger mellom 1 og 1,5.

Fasit: C: [1; 1,5]

Fra leksjon 8.3 Halveringsmetoden · Se forklaringen i videoen

Oppgave 5

f(a) = 3 og f(b) = 5. Kan vi være sikre på at halveringsmetoden finner et nullpunkt mellom a og b?

  1. A: ja
  2. B: nei
  3. C: bare hvis f er et polynom
  4. D: bare hvis b − a er lite
Vis løsning på oppgave 5

f(a) og f(b) har samme fortegn.

Da vet vi ikke om det finnes et nullpunkt.

Fasit: B: nei

Fra leksjon 8.3 Halveringsmetoden · Se forklaringen i videoen

Middels vanskelige

Oppgave 6

a = 3 og b = 6. Hva er det første midtpunktet m?

Vis løsning på oppgave 6

m = 3 + 6 delt på 2 = 4,5.

Fasit: 4,5

Fra leksjon 8.3 Halveringsmetoden · Se forklaringen i videoen

Oppgave 7

a = 1 og b = 3. Hva er det første midtpunktet m?

Vis løsning på oppgave 7

m = 1 + 3 delt på 2 = 2.

Fasit: 2

Fra leksjon 8.3 Halveringsmetoden · Se forklaringen i videoen

Oppgave 8

a = 4 og b = 6. Hva er det første midtpunktet m?

Vis løsning på oppgave 8

m = 4 + 6 delt på 2 = 5.

Fasit: 5

Fra leksjon 8.3 Halveringsmetoden · Se forklaringen i videoen

Oppgave 9

Intervallet starter med lengde 1 og halveres i hver runde. Etter hvor mange runder er det kortere enn 0,001?

Vis løsning på oppgave 9

1 delt på 2¹⁰ = 1 delt på 1 024 < 0,001, men 1 delt på 2⁹ = 1 delt på 512 > 0,001.

Svaret er 10.

Fasit: 10

Fra leksjon 8.3 Halveringsmetoden · Se forklaringen i videoen

Oppgave 10

Hva skriver programmet ut?

def f(x):
    return x**2

h = 0.01
print(round((f(3 + h) - f(3)) / h, 2))
Vis løsning på oppgave 10

(3 + 0,01)² − 9 delt på 0,01 = 6 + 0,01 = 6,01.

Fasit: 6,01

Fra leksjon 8.4 Vekstfart med et program · Se forklaringen i videoen

Mer krevende

Oppgave 11

Hva skriver programmet ut?

def f(x):
    return x**3

h = 0.001
print(round((f(2 + h) - f(2)) / h, 3))
Vis løsning på oppgave 11

Programmet gir 12,006.

Den eksakte er 3 · 2² = 12.

Fasit: 12,006

Fra leksjon 8.4 Vekstfart med et program · Se forklaringen i videoen

Oppgave 12

Hva skriver programmet ut?

def f(x):
    return x**2

h = 0.01
print(round((f(5 + h) - f(5)) / h, 2))
Vis løsning på oppgave 12

(5 + 0,01)² − 25 delt på 0,01 = 10 + 0,01 = 10,01.

Fasit: 10,01

Fra leksjon 8.4 Vekstfart med et program · Se forklaringen i videoen

Oppgave 13

Hva skriver programmet ut?

def f(x):
    return x**3

h = 0.001
print(round((f(3 + h) - f(3)) / h, 3))
Vis løsning på oppgave 13

Programmet gir 27,009.

Den eksakte er 3 · 3² = 27.

Fasit: 27,009

Fra leksjon 8.4 Vekstfart med et program · Se forklaringen i videoen

Oppgave 14

Hva skriver programmet ut?

def f(x):
    return x**2

h = 0.01
print(round((f(2 + h) - f(2)) / h, 2))
Vis løsning på oppgave 14

(2 + 0,01)² − 4 delt på 0,01 = 4 + 0,01 = 4,01.

Fasit: 4,01

Fra leksjon 8.4 Vekstfart med et program · Se forklaringen i videoen

Fasit

Vis fasit til alle oppgavene
  1. Oppgave 1: B: (f(2 + h) - f(2)) / h
  2. Oppgave 2: A: ja
  3. Oppgave 3: B: nei
  4. Oppgave 4: C: [1; 1,5]
  5. Oppgave 5: B: nei
  6. Oppgave 6: 4,5
  7. Oppgave 7: 2
  8. Oppgave 8: 5
  9. Oppgave 9: 10
  10. Oppgave 10: 6,01
  11. Oppgave 11: 12,006
  12. Oppgave 12: 10,01
  13. Oppgave 13: 27,009
  14. Oppgave 14: 4,01

Oppgavene hører til leksjonene 8.3–8.4 i modulen Programmering og algoritmer, som øves til del 2. Les mer om eksamen i 1T, og bruk formelarket for 1T når du øver.

Les også

Oppgavene er laget av Sophus med de samme oppgavemalene som i kurset, og løsningene er kontrollert av en regnekontroll. Ser du likevel en feil, si fra på kontakt@sophus.no, så retter vi den.