2.4. Programmering: Å gjøre noe med data#

2.4.1. Forutsetninger og læringsmål#

Et program gjør noe med data. Programmering henger dermed tett sammen med modellering av data. I begynnelsen skal vi bare forutsette kjennskap til enkle variable; senere skal vi også forutsette kjennskap til tabeller og andre typer data.

Læreplanen#

Programmering har fått mye større plass i LK20, først og fremst i matematikkfaget. Se ellers matematikksenterets sider.

Ressurser#

2.4.2. Introduksjon#

I tradisjonell matematikk jobber vi med data (f.eks. uttrykk og påstander, viser at de er like og ekvivalente og at vi kan bruke regler til å skrive dem om til andre. Nå skal vi jobbe med program: Instruksjoner om hvordan vi kan forandre data.

Når vi programmerer lager vi (data)program. Et program inneholder instruksjoner som gjør noe med data. Programmet kan også skrive noe ut mot en bruker (f.eks. gjennom en skjerm) og lese inn fra en bruker (f.eks. fra et tastatur eller en mus).

Et program kan kjøres, det vil si at instruksjonene utføres.

Et program er gjerne generelt, det vil si at det kan kjøres på mange forskjellig typer data.

Programmerer-rollen og bruker-rollen er forskjellige. Så lenge programmereren lager programmet, “leker” hun også bruker, men senere er de forskjellige. Vi kan også ha en egen tester-rolle.

Vi skriver program i forskjellige programmeringsspråk, for eksempel Python og Scratch. Disse språkene kan beskrive (representere) mange av de samme programmeringskonstruksjonene, for eksempel betingelse og repetisjon.

2.4.3. Representasjoner#

(Representasjons)språk#

Når vi skal lære programmering skal vi først og fremst bruke følgende språk:

og også se på noen andre, se undersider under Programmeringsspråk.

Man kan også representere instruksjoner på andre måter, for eksempel ved tekst. Å kjøre et program kan gjøres fysisk av elevene. Se (Berg, 2021) om analog programmering.

2.4.4. Arbeidsmåter#

  • Spør mye! I begynnelsen bør man iallfall spørre når man har stått fast 15 minutter. Senere kan man streve litt lengre.

  • Del tips med medstudenter!

  • Søk på nettet når du lurer på noe!

  • Når noe ser interessant ut: Sjekk det ut! Iallfall når det er mer enn en måned igjen til eksamen. Det man man finner er kanskje ikke interessant til eksamen, men er sannsynligvis lærerikt og nyttig seinere i studiet (og som lærer).

2.4.5. Prinsipp for kurset#

  • Kort feedbackloop

  • Lære algoritmer og representasjoner

  • Program er representasjoner; programmeringsspråk er representasjonsspråk.

  • Inspirert av Primm