Помогите найти решение

 
 
 
Сообщения:2
Помогите найти решение
Речь идет о следующем:
* Создайте программу BruchrechnerTest, используя методы тестирования addTest, mulTest, divTest, subTest и kuerzenTest без параметра или возвращаемого значения.
 Реализовать основной метод в BruchrechnerTest, который вызывает все методы тестирования один раз.
 Методы тестирования вызывают их соответствующий метод (например, addTest метод add) в калькуляторе фракций и проверяют, правильный ли результат. Чтобы проверить результат, используйте метод ожидаемого равенства (...), который имеет два (или четыре) параметра и выводит, являются ли два значения (или пары значений) одинаковыми или нет.
 Определите по крайней мере три интересных тестовых примера в каждом из пяти методов тестирования, таких как отрицательные значения, очень большие или очень маленькие значения и нуль. Попытайтесь убедиться, что ваша программа работает правильно во всех случаях, автоматически выполняя все тесты. Ваша цель в качестве тестера - писать неудачные тесты, поэтому найдите случаи, когда ваша программа работает неправильно.
Здесь у меня уже есть калькулятор фракции:

class Bruch{
public static void main(String[] args) {
    int z1   = Integer.parseInt(args[1]);
    int n1  = Integer.parseInt(args[2]);
    int z2   = Integer.parseInt(args[3]);
    int n2   = Integer.parseInt(args[4]);
    int[] e = new int[2];
 
if( n1 != 0 || n2 != 0){
        if(args[0].equals("add")){
                e = add(z1,n1,z2,n2);
                ausgeben(e);
           
        }
   
        if(args[0].equals("sub")){
                e = sub(z1,n1,z2,n2);
                ausgeben(e);
        }
           
        if(args[0].equals("mul")){
                e = mul(z1,n1,z2,n2);
                ausgeben(e);
        }
           
        if(args[0].equals("div")){
            if(z2 != 0) {
                e = div(z1,n1,z2,n2);
                ausgeben(e);
        } else{
            System.out.println("Man darf nicht durch 0 teilen");
            }
        } 
    } else {
    System.out.println("Man darf nicht durch 0 teilen");
    }
 
 }
 
 
    static int[] eukl(int ergZ,int ergN){
        int a = Math.abs(ergZ);
        int b = Math.abs(ergN);
        int f;
        if(a==0) {
        f=b;}
 
        else{
            while(b !=0){
                if(a>b){
                a = a-b;}
                else{ b = b-a; }
            }
     
            f=a;
        }
 
        return new int[] {ergZ/f, ergN/f};
 
 
    }
 
 
    static int[] add(int z1,int n1,int z2,int n2){
        int ergZ =z1 * n2 + n1 * z2;
        int ergN = n1 * n2;
        int[] z = eukl(ergZ,ergN);
        return z;
    }
 
    static int[] sub(int z1,int n1,int z2,int n2){
        int ergZ =z1 * n2 - n1 * z2;
        int ergN = n1 * n2;
        int[] z = eukl(ergZ,ergN);
        return z;
    }
 
    static int[] mul(int z1,int n1,int z2,int n2){
        int ergZ =z1 * z2;
        int ergN = n1 * n2;
        int[] z = eukl(ergZ,ergN);
        return z;
    }
 
    static int[] div(int z1,int n1,int z2,int n2){
        int temp = z2;
        z2 = n2;
        n2 = temp;
 
 
 
        int ergZ =z1 * z2;
        int ergN = n1 * n2;
        int[] z = eukl(ergZ,ergN);
        return z;
    }
 
    static void ausgeben(int[]e){
   
        System.out.println(e[0]+"/"+e[1]);
 
    }
}
 
Модераторы:alon4iknazicaTaky_
Сейчас эту тему просматривают:Нет