Zum Inhalt

03 · Rationale Zahlen: Kreuzprodukte und Kürzung

Rationale Zahlen: Kreuzprodukte und Kürzung

Behandeln Sie einen Bruch als Ganzzahlpaar, dessen Wert nicht vom gewählten Repräsentanten abhängt.

Vor diesem Kapitel

Sie unterscheiden Repräsentant, Äquivalenzklasse und Normalform.

Danach können Sie
  • die mathematische Definition von „Rationale Zahlen: Kreuzprodukte und Kürzung“ in eigenen Worten erklären
  • ihre Darstellung in Python-Daten zeigen
  • aus dem echten Code einen kleinen Ablauf vorhersagen
Mathematische Definition

Bei Nennern ungleich Null gilt `p/q = r/s` genau dann, wenn `p*s=q*r`; daher sind `1/2` und `2/4` gleich.

Datenrepräsentation

`Rational` speichert ganzzahligen Zähler und Nenner, weist Null zurück und wählt mit `reduction()` eine lesbare Form.

Python-Implementierung

`p/q ~ r/s` → `p * s == q * r` → `Rational.__eq__`

Implementierung und Tests zum Mitlesen

peano/rational.py · tests/test_rational.py

Mathematische Definition

Mathematische Definition

Bei Nennern ungleich Null gilt p/q = r/s genau dann, wenn p*s=q*r; daher sind 1/2 und 2/4 gleich.

Datenrepräsentation

Datenrepräsentation

Rational speichert ganzzahligen Zähler und Nenner, weist Null zurück und wählt mit reduction() eine lesbare Form.

Python-Implementierung

Python-Implementierung

__eq__ bildet Kreuzprodukte, __add__ einen gemeinsamen Nenner; die Kürzung normalisiert Vorzeichen und ggT.

Die im Kurs verwendete genaue Zuordnung:

`p/q ~ r/s` → `p * s == q * r` → `Rational.__eq__`

Ausführungsablauf

Ausführungsablauf

Der Vergleich führt zu Multiplikation und Gleichheit ganzer Zahlen und zeigt die Wiederverwendung im Zahlenturm.

Vorhersage vor dem Lauf

Sagen Sie Gleichheitswert und gekürzte Form von `2/4` voraus.

Experiment · Rationale Zahlen: Kreuzprodukte und Kürzung Nicht ausgeführt
⌘ / Ctrl + Enter
Ausgabe
Erst vorhersagen, dann ausführen.

Prüfung durch Tests

Prüfung durch Tests

Tests vergleichen äquivalente Brüche, Hashwerte und die Zurückweisung des Nullnenners.

Geltungsbereich und Grenzen

Geltungsbereich und Grenzen

Große Komponenten verstärken die Kosten der zugrunde liegenden unären Naturzahlen.

Welche Aussage beschreibt die Implementierung von „Rationale Zahlen: Kreuzprodukte und Kürzung“ korrekt?