/** * Ein einfacher Rechner. */ public class Calculator { /** * Bildet die Summe aller gerader Zahlen die kleiner oder gleich * pUpperBound sind. Die Eingabe addEvenNumbers(4) * ergibt also 2 + 4 = 6. * * TODO: Benutze den Debugger, um die beiden Fehler in der Methode zu finden. * * @param pUpperBound Obere Grenze der Summe * @return */ public int addEvenNumbers( int pUpperBound ) { int sum = 0, i = 1; while( i < pUpperBound ) { // Nur gerade Zahlen addieren if( i%2 == 0 ) { sum += i; i++; } } return sum; } /** * Wendet den euklidischen Algorithmus zur Suche des größten gemeinsamen * Teilers bei zwei positiven ganzen Zahlen an. * * TODO: Benutze den Debugger, um den Fehler in der Methode zu finden. * * @link https://de.wikipedia.org/wiki/Euklidischer_Algorithmus * @param pNumberA * @param pNumberB * @return */ public int ggT( int pNumberA, int pNumberB ) { if( pNumberA < 0 || pNumberB < 0 ) { return 0; } else if( pNumberA == 0 ) { return pNumberB; } else { while( pNumberB > 0 ) { if( pNumberA < pNumberB ) { pNumberA -= pNumberB; } else { pNumberB -= pNumberA; } } return pNumberA; } } /** * Berechnet das kleinste gemeinsame Vielfache zweier positiver Ganzzahlen. * @link https://de.wikipedia.org/wiki/Kleinstes_gemeinsames_Vielfaches#Berechnung_über_den_größten_gemeinsamen_Teiler_(ggT) * @param pNumberA * @param pNumberB * @return */ public int kgV( int pNumberA, int pNumberB ) { return 0; // TODO: // Implementiere die Methode wie unter dem Link oben beschreiben, // indem du das kgV mit Hilfe des ggT berechnest. } }