# Rest ausrechnen



## Dugx (22. Mrz 2010)

Guten Tag zusammen,
also ich habe Folgendes Problem und zwar haben wir in der Schule eine Aufgabe bekommen, in der wir einen kleinen "Rechentrainer" Programmieren sollen. Ich habe nun ein Problem bei der Division und zwar möchte ich nur Rechenaufgaben stellen, bei denen ein Ganzzahliges Ergebnis rauskommt.

Mein Ansatz:

```
public Aufgabe()
    {
        Random rnd = new Random();
        zahl1 = rnd.nextInt(10)+15;
        zahl2 = rnd.nextInt(10)+2;
        int op  = rnd.nextInt(4);
        System.out.println(op);     // Zum überprüfen der Rechenart
        switch ( op )
        {
            case 0:     operator = '+'; break;
            case 1:     operator = '-'; break;
            case 2:     operator = '*'; break;
            case 3:     operator = '/'; break;
        }
        if (op == 3)                 // Rest berechnen falls Division
        {
            int wert, rest = 1;
            do
            {
                wert = zahl1 / zahl2;
                rest = zahl1 - (wert * zahl2);
                zahl1 = rnd.nextInt(10) + 15;
                zahl2 = rnd.nextInt(10) + 2;
            }
            while (rest != 0);
        }
    }
```

Aber irgendwie funktioniert das ganze nicht so wie ich mir das vorgestellt habe und ich weiß nicht woran das liegen könnte.
Ich hoffe ihr könnt mir helfen...

Gruß,
Dugx


----------



## faetzminator (22. Mrz 2010)

mit [c]%[/c] (dem Modulo Operator) kann man den Rest herausfinden. Du könntest statt [c]while (rest != 0);[/c] einfach [c]while (zahl1 % zahl2 != 0);[/c] verwenden - musst da natürlich die Reihenfolge der Zuweisungen ändern.


----------



## Dugx (22. Mrz 2010)

ok ich habe es jetzt mal getestet und es scheint zu funktionieren. und mit dem % - Operator geht es auch viel einfacher.
Also danke für deine schnelle Antwort.

Gruß,
Dugx


----------

