Java Reference
In-Depth Information
class
Bruch {
int
zaehler
;
int
nenner
;
public
class
Bruchtest {
public
static
void
main(String[] args)
{
Bruch b =
new
Bruch();
b.zaehler = 3;
b.nenner = 4;
b.ausgeben();
b.nenner = 5;
b.ausgeben();
}
}
class
Bruch {
int
zaehler;
int
nenner;
Start
void
ausgeben(){
System.
out
.print(
zaehler
+
"/"
+
nenner
);
}
void
ausgeben(){
System.
out
.print(zaehler+"/"+nenner);
}
}
}
Ende
6
Abbildung 6.2
Mehrfacher Methodenaufruf
Wir erweitern unsere Definition nun um eine Methode, die es dem Bruch ermöglicht,
sich zu kürzen. Ein Bruch kann mit dem größten gemeinsamen Teiler (ggT) gekürzt wer-
den. Wir verwenden also unseren bereits in
Kapitel 3
, »Kontrollstrukturen«, program-
mierten Algorithmus zur Berechnung des ggT nach Euklid.
Unser Testprogramm ändern wir so ab, dass der Bruch zunächst den Wert 3/12 hat. Zur
Kontrolle wird der Bruch ungekürzt ausgegeben, dann wird er gekürzt und schließlich
nochmal in gekürzter Form ausgegeben:
public static void main(String[] args) {
Bruchb=newBruch();
b.zaehler = 3;
b.nenner = 12;
b.ausgeben();
System.out.print("\n Und nach dem Kürzen: ");
b.kuerzen();
b.ausgeben();
}
Listing 6.1
main-Methode von Bruchtest1
In der Klasse
Bruch
wird die folgende Methode zum Kürzen ergänzt:
void kuerzen() {
int m, n, r; //lokale Variablen
m = zaehler;
n = nenner;
r=m%n;
while(r>0){
m=n;
n=r;
r=m%n;