Folgende Aufgabe sollte gelöst werden:
Schreiben Sie eine Java-Klasse Teilbarkeit, die die unter 1. bis 3. genannten Methoden besitzt. Schrei- ben Sie dazu eine Testklasse, in der Sie die in der Klasse Teilbarkeit deklarierten Methoden testet.
1. Methode public static boolean istTeiler(int x, int y) mit zwei ganzzahligen Parame- tern, die als Ergebnis liefert, ob der Wert des ersten Parameters durch den zweiten teilbar ist.
2. Methode public static int teilerVielfachheit(int x,int y) mit zwei ganzzahligen Pa- rametern, die als Ergebnis liefert, wie oft der Wert des erste Parameter durch den zweiten teilbar ist.
3. Methode public static int power(int x, int y) mit zwei ganzzahligen Parametern, die als Ergebnis den Wert des ersten Parameters mit dem zweiten potenziert.
Das geschriebene Programm soll dies wiedergeben; es läuft aber nicht
Wo liegen meine Fehler?
Schreiben Sie eine Java-Klasse Teilbarkeit, die die unter 1. bis 3. genannten Methoden besitzt. Schrei- ben Sie dazu eine Testklasse, in der Sie die in der Klasse Teilbarkeit deklarierten Methoden testet.
1. Methode public static boolean istTeiler(int x, int y) mit zwei ganzzahligen Parame- tern, die als Ergebnis liefert, ob der Wert des ersten Parameters durch den zweiten teilbar ist.
2. Methode public static int teilerVielfachheit(int x,int y) mit zwei ganzzahligen Pa- rametern, die als Ergebnis liefert, wie oft der Wert des erste Parameter durch den zweiten teilbar ist.
3. Methode public static int power(int x, int y) mit zwei ganzzahligen Parametern, die als Ergebnis den Wert des ersten Parameters mit dem zweiten potenziert.
Das geschriebene Programm soll dies wiedergeben; es läuft aber nicht
Java:
//Diese Programm beinhaltet eine Klasse mit mehreren Methoden zum Thema Teilbarkeit
public class Teilbarkeit
{
public static boolean ist Teiler(int x, int y) //gibt aus, ob x durch y teilbar ist (ganze Zahl betrachtet)
{ boolean type;
if ( x % y==0) /*Wenn der Rest der Division von x und y 0 betraegt, wird true fuer type definiert.
Andernfalles gilt type=false*/
{type = true;}
else
{type = false;}
return type;
}
public static int teilerVielfachheit(int x, int y) //gibt aus wie oft x durch y teilbar ist (ganze Zahl betrachtet)
{
int i=0;
while (x>0) /*Wenn der Rest der Division von x und y 0 betraegt, wird die Zaehlvariable i
um 1 erhoeht, solange bis der Rest ungleich 0 ist*/
{
while(x%y==0)
{x= x-y;
}
i=i+1;
}
return i;
}
public static int power(int x, int y) //multipliziert x solange mit sich selbst, bis die Zaehlvariable j=y ist (x^y)
{
int j=1;
while (j<y)
{
x=x*x;
}
return x;
}
//Am Ende jeder Methode wird die zugehoerige Variable zurueckgegeben
}
Wo liegen meine Fehler?