79 lines
3.3 KiB
Java
79 lines
3.3 KiB
Java
|
import java.util.ArrayList;
|
||
|
|
||
|
public class BruchTest {
|
||
|
public static void main(String[] args) {
|
||
|
ArrayList<Bruch> brueche = new ArrayList<>();
|
||
|
|
||
|
// Test 1: Standardkonstruktor
|
||
|
brueche.add(new Bruch());
|
||
|
System.out.println("Test 1: " + brueche.get(0).bruchToString()); // Erwartet: 0/1
|
||
|
|
||
|
// Test 2: Konstruktor mit einem Parameter
|
||
|
brueche.add(new Bruch(3));
|
||
|
System.out.println("Test 2: " + brueche.get(1).bruchToString()); // Erwartet: 3/1
|
||
|
|
||
|
// Test 3: Konstruktor mit zwei Parametern (positive Werte)
|
||
|
brueche.add(new Bruch(4, 8));
|
||
|
System.out.println("Test 3: " + brueche.get(2).bruchToString()); // Erwartet: 4/8
|
||
|
brueche.get(2).gekuerztausgeben(); // Erwartet: 1/2
|
||
|
|
||
|
// Test 4: Konstruktor mit zwei Parametern (negative Werte)
|
||
|
brueche.add(new Bruch(-4, 8));
|
||
|
System.out.println("Test 4: " + brueche.get(3).bruchToString()); // Erwartet: -4/8
|
||
|
brueche.get(3).gekuerztausgeben(); // Erwartet: -1/2
|
||
|
|
||
|
// Test 5: Setzen von Zähler und Nenner (normal)
|
||
|
brueche.get(2).setZaehler(6);
|
||
|
brueche.get(2).setNenner(9);
|
||
|
System.out.println("Test 5: " + brueche.get(2).bruchToString()); // Erwartet: 6/9
|
||
|
brueche.get(2).gekuerztausgeben(); // Erwartet: 2/3
|
||
|
|
||
|
// Test 6: Setzen von Zähler und Nenner (mit Null)
|
||
|
brueche.get(2).setZaehler(0);
|
||
|
brueche.get(2).setNenner(9);
|
||
|
System.out.println("Test 6: " + brueche.get(2).bruchToString()); // Erwartet: 0/9
|
||
|
|
||
|
// Test 7: Setzen von Zähler und Nenner (Division durch Null)
|
||
|
brueche.get(2).setNenner(0);
|
||
|
System.out.println("Test 7: " + brueche.get(2).bruchToString());
|
||
|
|
||
|
// Test 8: Multiplikation
|
||
|
Bruch bruch4 = new Bruch(2, 3);
|
||
|
Bruch produkt = brueche.get(2).multipliziere(bruch4);
|
||
|
System.out.println("Test 8: " + produkt.bruchToString()); // Erwartet: 0/1
|
||
|
|
||
|
// Test 9: Gleichheit
|
||
|
Bruch bruch5 = new Bruch(2, 3);
|
||
|
Bruch bruch6 = new Bruch(4, 6);
|
||
|
System.out.println("Test 9: " + bruch5.equals(bruch6)); // Erwartet: true
|
||
|
|
||
|
// Test 10: Ungleichheit
|
||
|
Bruch bruch7 = new Bruch(1, 2);
|
||
|
System.out.println("Test 10: " + bruch5.equals(bruch7)); // Erwartet: false
|
||
|
|
||
|
// Test 11: Addition (positive und negative Werte)
|
||
|
Bruch bruch8 = new Bruch(1, 4);
|
||
|
Bruch summe = bruch5.addiere(bruch8);
|
||
|
System.out.println("Test 11: " + summe.bruchToString()); // Erwartet: 11/12
|
||
|
|
||
|
// Test 12: Subtraktion (negatives Ergebnis)
|
||
|
Bruch bruch9 = new Bruch(3, 4);
|
||
|
Bruch differenz = bruch5.subtrahiere(bruch9);
|
||
|
System.out.println("Test 12: " + differenz.bruchToString()); // Erwartet: -1/12
|
||
|
|
||
|
// Test 13: Dezimalwert
|
||
|
double dezimalwert = bruch5.dezimalwert();
|
||
|
System.out.println("Test 13: " + dezimalwert); // Erwartet: 0.6666666666666666 (2/3)
|
||
|
|
||
|
// Test 14: Dezimalwert eines anderen Bruchs
|
||
|
Bruch bruch10 = new Bruch(3, 4);
|
||
|
double dezimalwert2 = bruch10.dezimalwert();
|
||
|
System.out.println("Test 14: " + dezimalwert2); // Erwartet: 0.75
|
||
|
|
||
|
// Test 16: Dezimalwert eines anderen Bruchs (null)
|
||
|
Bruch bruch11 = new Bruch(3, 0);
|
||
|
double dezimalwert3 = bruch11.dezimalwert();
|
||
|
System.out.println("Test 15: " + dezimalwert3); // Erwartet: 0
|
||
|
}
|
||
|
}
|