Mathematikverständnis stärken in Zeiten von KI

Workshop Gesellschaft für Didaktik der Mathematik Schweiz

Workshop an der Tagung der Gesellschaft für Didaktik der Mathematik
Autor:innen
Zugehörigkeiten

Joel Adler

PHBern

Richard François Conrardy

PHBern

Veröffentlichungsdatum

19.01.2024

Was wir heute erreichen möchten:

  • show and tell
  • Ideen für die LP-Ausbildung
  • Ideen und Wünsche für Unterrichtsmaterial
  • einen angenehmen Austausch

Sneak Peak

import random
import time

anzahlRichtige = 0
while anzahlRichtige < 10:
    startzeit = time.time ()

    x = int (50000 * random.random())
    y = int (50000 * random.random())
    
    z = x+y     # korrekte Lösung = z

    Lösung = input("Was ergibt " +  str (x) + " + " + str(y) + "? ")
    endzeit = time.time()
    anzahl_sekunden = int (endzeit - startzeit)
    if int(Lösung) < z*1.03 and int (Lösung) > z*0.97:
        anzahlRichtige = anzahlRichtige + 2
        print("sehr gut gemacht!" + "Du hast " + str (anzahl_sekunden) + " Sekunden gebraucht.")

    elif int(Lösung) < z*1.06 and int (Lösung) > z*0.94:
        anzahlRichtige = anzahlRichtige + 1
        print("gut gemacht!" + "Du hast " + str (anzahl_sekunden) + " Sekunden gebraucht.")

    else:
        print("Zu ungenau, dass wäre die korrekte Lösung: " + str (z) + " , du hast " + str(anzahl_sekunden) + " Sekunden gebraucht.")


print (anzahlRichtige)

Ausgangslage

Lehrplan 21 M&I

MI.2.2.f

können Programme mit Schleifen, bedingten Anweisungen und Parametern schreiben und testen.


MI.2.2.h

können selbstentwickelte Algorithmen in Form von lauffähigen und korrekten Computerprogrammen mit Variablen und Unterprogrammen formulieren.

Lehrplan 21 M&I


Grundansprüche müssen erfüllt sein, damit die Basis für das Weiterlernen im Fachbereich gelegt ist.

(erziehungsdirektiondeskantonsbern2016?)

Der Elephant im Raum 🐘

Registration and Access Minimum Age. You must be at least 13 years old or the minimum age required in your country to consent to use the Services. If you are under 18 you must have your parent or legal guardian’s permission to use the Services.

Hands on!

Tools

Wir benutzen heute folgende Webseiten:

  1. https://www.online-python.com/
  2. https://chat.openai.com/ (benötigt Account)

(Hinweis: Im Kurs werden Rstudio oder VSCode benutzt)

Selbst ausprobieren

  • Primzahlen finden mit Sieb des Erathostenes
  • Primzahlzerlegung
  • Ggt, kgV
  • Brüche addieren

Probiert eigene Ideen aus.

10:00

Mathematikverständnis stärken

Was denken andere?


Ich empfand Mathematik als anstrengend, weil sie einen ungeheuer kreativen Umgang mit lose definierten formalen Systemen erfordert, während einem die Informatik Kreativität mit streng definierten formalen Systemen abverlangt.

Interessante Diskussionen

  • Wie unterscheidet sich der Begriff “Funktion” und “Variable” in Mathematik und Informatik?
  • Was ist besser:
    • Differenz als Summe mit negativen Zahlen?
    • Differenz als Umkehroperation der Addition?

Weitere Ideen sammeln

https://phbern.padlet.org/richardconrardy/workshop-gdm-f7fukgt5ggad1j13

Aufgaben erstellen?

Es folgt ein Python-Programm, welches mit Ihnen das Überschlagen von Summen und Differenzen von Dezimalzahlen übt.

Eine “sehr gute” Lösung liegt +/- 3% von der richtigen Lösung weg, eine “gute” Lösung liegt +/- 6% von der richtigen Lösung weg.

Üben Sie, bis Sie regelmässig gute Lösungen erreichen.

Herausforderung: Schreiben Sie das Programm selbst! Benutzen Sie dazu die random library mit import random und generieren Sie eine zufällige Zahl zwischen 0 und 1 mit random.random() und mit random.choice(+,-) eine zufällige Operation.

Herausforderung: Bauen Sie eine Stoppuhr in den Code ein, welche die Zeit bis zur Antwort zählt und ausgibt. (Tipp: import time und time.time() gibt die Zeit in Unixzeit aus.)

Code von Studentin

import random
import time

anzahlRichtige = 0
while anzahlRichtige < 10:
    startzeit = time.time ()

    x = int (50000 * random.random())
    y = int (50000 * random.random())
    
    z = x+y     # korrekte Lösung = z

    Lösung = input("Was ergibt " +  str (x) + " + " + str(y) + "? ")
    endzeit = time.time()
    anzahl_sekunden = int (endzeit - startzeit)
    if int(Lösung) < z*1.03 and int (Lösung) > z*0.97:
        anzahlRichtige = anzahlRichtige + 2
        print("sehr gut gemacht!" + "Du hast " + str (anzahl_sekunden) + " Sekunden gebraucht.")

    elif int(Lösung) < z*1.06 and int (Lösung) > z*0.94:
        anzahlRichtige = anzahlRichtige + 1
        print("gut gemacht!" + "Du hast " + str (anzahl_sekunden) + " Sekunden gebraucht.")

    else:
        print("Zu ungenau, dass wäre die korrekte Lösung: " + str (z) + " , du hast " + str(anzahl_sekunden) + " Sekunden gebraucht.")


print (anzahlRichtige)

Wie weiter?

Bibliographie

Wiederverwendung

Zitat

Bitte zitieren Sie diese Arbeit als:
Conrardy, R. (2024, January 19). Mathematikverständnis stärken in Zeiten von KI. University of Teacher Education Bern. https://phbern-rconrardy.github.io/lerngelegenheiten/