Nikomachos kürzt Brüche

Meine Tochter und meine Frau konnten bisher meinen HP Taschenrechnern nicht viel abgewinnen. Die ENTER Taste wirkte auf die beiden eher abschreckend. Also kaufte ich mir kürzlich einen HP-20S mit algebraischer Eingabe. Jetzt rechnen auch sie mit einem HP 🙂

Ich selber nahm den Rechner natürlich genau unter die Lupe und suchte nach einem kleinen Programmierprojekt. Da sich meine Tochter in der Schule gerade mit Bruchrechnen rumschlägt, war schnell eines gefunden: Brüche kürzen. Doch da der 20S keine Modulo-Funktion hat, musste eine Alternative zum Euklidschen Algorithmus her. Fündig wurde ich in den HP Key Notes 1979 Vol. 3, No. 2, wo ein sehr einfacher Algorithmus zur Berechnung des grössten gemeinsamen Teilers (ggT) beschrieben wird, der nur Subtraktionen benötigt. Erfunden hat ihn Nikomachos von Gerasa, ein pythagoreischer Mathematiker.

Algorithmus nach Nikomachos zur Berechnung des größten gemeinsamen Teilers zweier Zahlen:

ggt(a, b) = a für a = b
ggt(a, b) = ggt(b, a-b) für a > b
ggt(a, b) = ggt(a, b-a) für a < b

Da ich gewöhnt bin, UPN Rechner zu programmieren, hatte ich einige Startschwierigkeiten. Doch schliesslich hat’s doch noch geklappt:

Programmlisting: HP-20S – Bruch kürzen

1 Kommentar

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.