public class Anteil extends Bruch { private static Bruch verteilt = new Bruch(0, 1); // Standardkonstruktor: Anteil = 0 public Anteil() { super(0, 1); } // Konstruktor mit Zähler und Nenner public Anteil(int z, int n) { super(z, n); Bruch neuerAnteil = new Bruch(z, n); verteilt = verteilt.addiere(neuerAnteil); if (verteilt.dezimalwert() > 1) { System.out.println("Fehler: Der Gesamtwert der verteilten Anteile übersteigt 1."); verteilt = verteilt.subtrahiere(neuerAnteil); // Rollback des Fehlers setZaehler(0); // Setzt Anteil zurück setNenner(1); } } // Methode, um den verteilten Anteil als double zu erhalten public static double getVerteilt() { return verteilt.dezimalwert(); } // Methode, um den verbleibenden Anteil als Bruch zu erhalten public static Bruch getRest() { Bruch eins = new Bruch(1, 1); return eins.subtrahiere(verteilt); } }