Aufgabenstellung:
Lösung:
Bei den Funktionen min und ggt erfolgt nun eine Fehlermeldung, welche besagt:
Was hat das genau zu bedeuten? Und sehen hier die strukturierten Kommentare passend aus oder kann man diese verbessern in puncto Form und Inhalt?
1. Wandeln Sie die Funktionen um in äquivalente Funktionen, die bedingte Anweisungen statt bedingte
Ausdrücke verwenden.
2. Modifizieren Sie die Funktion ggt derart, dass die Ausnahme IllegalArgumentException geworfen wird,
wenn die Argumente keine positiven ganzen Zahlen sind.
3. Versehen Sie Sie jede Methode mit einen passenden strukturierten Kommentar.
Java:
private static int max(int x, int y) {
return x>y?x:y;
}
private static int min(int x, int y) {
return x<y?x:y;
}
public static int ggt(int x, int y) {
return (x==y) ? x : ggt(max(x,y)-min(x,y), min(x,y));
}
Lösung:
Java:
public class GGT {
/**
* Maximum aus zwei Werten
*
* @param x
* @param y
* @return y : der größere Wert
*/
private static int max(int x,int y){
if(x>y){
return x;
}else{
return y;
}
/**
*Minimum aus zwei Werten
*@param x
*@param y
*@return y : der kleinere Wert
*/
private static int min(int x,int y){
if(x<y){
return x;
}else{
return y;
}
}
/**
* Der größte gemeinsame Teiler aus zwei Werten
*@param x
*@param y
*@return ggt : der größte gemeinsame Teiler aus x und y
*/
public static int ggt(int x,int y){
if(x==y){
return x;
}else{
return ggt(max(x,y)-min(x,y),min(x,y));
}
}
}
}
Bei den Funktionen min und ggt erfolgt nun eine Fehlermeldung, welche besagt:
Illegal modifier for parameter min; only final is permitted
Was hat das genau zu bedeuten? Und sehen hier die strukturierten Kommentare passend aus oder kann man diese verbessern in puncto Form und Inhalt?