20TD02U Programmer som løser andregradslikninger - itnett/FTD02N GitHub Wiki

https://ndla.no/subject:1:5a5cac3f-46ff-4f4d-ba95-b256a706ec48/topic:c7111b35-0621-4977-8a31-fe41e8e4a34d/topic:b4ba45c3-b084-45a1-994c-c85eb755ee54/resource:b9eb8018-d0c6-41df-9728-f11b7fd9e42e

[python] La oss gå gjennom hvert punkt og utarbeide løsninger for hver del av oppgaven.

a) Spørsmål

Spørsmålet er hvilken metode som er enklest å bruke i et program: faktorisering eller bruk av abc-formelen.

Svar: Når det gjelder programmering, er bruk av abc-formelen enklere og mer direkte å implementere. Dette skyldes at abc-formelen gir en direkte måte å beregne røttene på ved å bruke en enkel matematisk formel.

b) Vurdering

Brukeren kan skrive inn konstantene (a), (b) og (c), og programmet kan bruke abc-formelen direkte.

c) Algoritme

Vi lager en algoritme som beskriver hvordan programmet skal fungere.

  1. Skriv til skjermen "Dette programmet løser andregradslikningen ax^2 + bx + c = 0."
  2. Skriv til skjermen "Skriv inn konstanten a:"
  3. Ta imot tallet fra brukeren, konverter det til et ekte tall, og sett det lik variabelen (a).
  4. Skriv til skjermen "Skriv inn konstanten b:"
  5. Ta imot tallet fra brukeren, konverter det til et ekte tall, og sett det lik variabelen (b).
  6. Skriv til skjermen "Skriv inn konstanten c:"
  7. Ta imot tallet fra brukeren, konverter det til et ekte tall, og sett det lik variabelen (c).
  8. Beregn diskriminanten (D = b^2 - 4ac).
  9. Hvis (D > 0), beregn røttene (x_1 = \frac{-b + \sqrt{D}}{2a}) og (x_2 = \frac{-b - \sqrt{D}}{2a}).
  10. Hvis (D = 0), beregn roten (x_1 = x_2 = \frac{-b}{2a}).
  11. Hvis (D < 0), skriv til skjermen "Ingen reelle løsninger."
  12. Skriv til skjermen "Løsningene er x1 = og x2 = ."

d) Koding

La oss kode programmet basert på algoritmen.

Se skriptet her

e) Diskusjon

Programmet vil fungere for de fleste andregradslikninger, men det må håndtere tilfeller der (a = 0) (da det ikke er en andregradslikning) og der diskriminanten (D) er negativ.

f) Testing

Prøv programmet med likningen (x^2 + 4x + 4 = 0) (som har dobbel rot).

g) Testing

Prøv deretter programmet med likningen (x^2 + x + 1 = 0) (som har komplekse røtter).

h) Algoritme

Endre algoritmen til å inkludere sjekk for (a = 0) og komplekse røtter.

i) Koding

Oppdatert program med forbedringer:

Se skriptet her

Dette programmet bør nå kunne håndtere alle tilfeller av andregradslikninger og gi riktige utskrifter av løsningene.

[python] For å dekke de ulike kompetansemålene for å løse ligninger, ligningssystemer og ulikheter, samt å utforske sammenhenger mellom andregradsligninger og andregradsulikheter, andregradsfunksjoner og kvadratsetningene, vil jeg lage en serie med Python-programmer og ressurser som illustrerer disse konseptene.

Kompetansemål og programforslag:

1. Løse Ligninger, Ligningssystemer og Ulikheter

Kompetansemål: KM391, KM378, KM384, KM410, KM413, KM429, KM404, KM425, KM433, KM426

Programforslag:

  1. Løsning av enkle ligninger:
    • Program som tar inn en lineær ligning på formen (ax + b = 0) og løser den.
  2. Løsning av ligningssystemer:
    • Program som tar inn et system av lineære ligninger og bruker matriseinvers eller Gauss-eliminasjon for å finne løsningen.
  3. Løsning av ulikheter:
    • Program som tar inn en ulikhet og løser den ved å finne kritiske punkter og teste intervaller.

2. Utforske Sammenhenger Mellom Andregradsligninger og Andregradsulikheter, Andregradsfunksjoner og Kvadratsetningene

Kompetansemål: KM392, KM377, KM383, KM408, KM412, KM438, KM444, KM400, KM424, KM432, KM419

Programforslag:

  1. Løsning av andregradsligninger:
    • Programmet som ble utviklet tidligere for å løse andregradsligninger ved bruk av abc-formelen.
  2. Utforskning av andregradsulikheter:
    • Program som grafisk illustrerer løsningen av andregradsulikheter ved å plotte funksjonen og finne nullpunktene.
  3. Sammenhenger med kvadratsetningene:
    • Program som viser hvordan fullføring av kvadrat kan brukes til å løse andregradsligninger og ulikheter, og illustrerer dette grafisk.

Eksempler på programmer:

Program for å løse enkle lineære ligninger:

Se skriptet her

Program for å løse ligningssystemer med to ligninger:

Se skriptet her

Program for å utforske andregradsulikheter grafisk:

Se skriptet her

Ressurser

For hver av de foreslåtte programmene, kan vi lage interaktive Jupyter-notatbøker som gir elevene mulighet til å eksperimentere med forskjellige verdier og observere resultatene. Videre kan vi inkludere teoretiske bakgrunner og eksempler som hjelper elevene å forstå konseptene bak ligningene og ulikhetene.

La meg vite om det er spesifikke kompetansemål eller konsepter du ønsker å fokusere mer på, eller om du trenger ytterligere programmer og ressurser.

[python] La oss lage interaktive Jupyter-notatbøker for hvert av de foreslåtte programmene. Jeg vil lage eksempler på notatbøker som du kan bruke direkte eller tilpasse etter behov.

1. Løsning av enkle lineære ligninger

Jupyter Notebook

Se skriptet her

2. Løsning av ligningssystemer med to ligninger

Jupyter Notebook

Se skriptet her

3. Utforskning av andregradsulikheter grafisk

Jupyter Notebook

Se skriptet her

Disse interaktive notatbøkene gir elever mulighet til å eksperimentere med forskjellige verdier for (a), (b) og (c), og se hvordan løsninger endres i sanntid. De kan brukes til å utforske konseptene mer dyptgående og se visuelle representasjoner av matematiske løsninger.

La meg vite om du trenger noen spesifikke justeringer eller ytterligere ressurser!

[python] For å hjelpe elevene med å utforske, løse problemer og generalisere i henhold til læreplanen i matematikk T, kan vi lage interaktive Jupyter-notatbøker som fokuserer på disse kjerneelementene. Hver notatbok vil inneholde aktiviteter og ressurser som hjelper elevene med å utvikle sine ferdigheter innen utforskning, abstraksjon, generalisering og matematiske kunnskapsområder.

Interaktive Jupyter-notatbøker for kjerneelementer KE30, KE34 og KE35

1. Utforskning og problemløsing (KE30)

Denne notatboken vil fokusere på å utforske matematiske mønstre og løse problemer ved hjelp av algoritmisk tenkning.

Se skriptet her

2. Abstraksjon og generalisering (KE34)

Denne notatboken vil hjelpe elevene med å bruke algebraiske representasjoner for å uttrykke resultater og sammenhenger.

Se skriptet her

3. Matematisk teori og kunnskapsområder (KE35)

Denne notatboken vil gi elevene en dypere forståelse av matematiske teorier og sammenhenger mellom kunnskapsområdene.

Se skriptet her

Oppsummering

Disse interaktive Jupyter-notatbøkene gir elevene mulighet til å:

  • Utforske matematiske mønstre og diskutere strategier for problemløsing (KE30).
  • Bruke algebraiske uttrykk for å uttrykke og generalisere matematiske sammenhenger (KE34).
  • Utforske matematiske teorier og visualisere funksjoner og deres egenskaper (KE35).

Ved å bruke disse notatbøkene kan elevene utvikle en dypere forståelse av matematikk og forbedre sine ferdigheter i å løse problemer og oppdage sammenhenger. La meg vite om du trenger ytterligere tilpasninger eller flere ressurser!