#! /usr/bin/python class Bruch: """ /* Klasse Bruch """ def __init__(self): """ /* Attribute: Zähler und Nenner """ self.zaehler=0 self.nenner=1 def set_Zaehler(self,wert): """ /* Standardmethode /* --------------------- /* wert : int : Zähler """ self.zaehler=wert def set_Nenner(self,wert): """ /* Standardmethode /* --------------------- /* wert : int : Nenner """ self.nenner=wert def get_Zaehler(self): """ /* Standardmethode /* --------------------- /* --------------------- /* return : int : Zähler """ return self.zaehler def get_Nenner(self): """ /* Standardmethode /* --------------------- /* --------------------- /* return : int : Nenner """ return self.nenner def get_Bruch(self): """ /* Es wird ein formatierter Ausgabestring gebildet. Diese Methode /* dient nur zu Übungszwecken. Der Bruch sollte besser als Zahlenpaar /* zurückgegeben werden ! /* -------------------------------------------------------- /* -------------------------------------------------------- /* return : string : Bruchdarstellung """ antwort="%-3s%-3d/%3d" % ('=',self.zaehler, self.nenner) return antwort def get_Dezimal(self): """ /* Es wird ein formatierter Ausgabestring gebildet. Diese Methode /* dient nur zu Übungszwecken. Der Bruch sollte besser als REAL /* zurückgegeben werden ! /* -------------------------------------------------------- /* -------------------------------------------------------- /* return : string : Realdarstellung """ a = float(self.zaehler)/self.nenner return "%-3s%6.3f" % ('=',a) def Kehrwert_bilden(self): """ /* es wir der Kehrwert des Bruches gebildet """ pass # Zu ersetzen durch entsprechenden Programmcode !!!!!!!!!!!! def kuerzen_durch(self,n): """ /* Der Bruch wird gekürzt /* ------------------------------------- /* n : int : Zahl, durch die gekürzt wird /* ------------------------------------- /* return : 0 (false) : es wurde nicht gekürzt /* 1 (true) : es wurde gekürzt """ if (self.zaehler%n==0) & (self.nenner%n==0): self.zaehler=self.zaehler/n self.nenner=self.nenner/n return 1 # true else: return 0 # false def erweitern_mit(self,n): """ /* Der Kommentar ist gemäß Muster zu schreiben !!!!!!!!!!!!!!!! """ pass # Zu ersetzen durch entsprechenden Programmcode !!!!!!!!!!!! # Testumgebung if __name__ == "__main__": mein_Bruch=Bruch() mein_Bruch.set_Zaehler(64) mein_Bruch.set_Nenner(4) print "Bruch ist :" print mein_Bruch.get_Bruch() x = mein_Bruch.kuerzen_durch(2) print x print "Bruch gekürzt:" print mein_Bruch.get_Bruch() mein_Bruch.erweitern_mit(5) print "Erweitert mit 5" print mein_Bruch.get_Bruch() mein_Bruch.Kehrwert_bilden() print "Kehrwert:" print mein_Bruch.get_Bruch()
Dr. Bernd Kokavecz