Implementieren einer iterativen und rekursiven Klassenmethode.

Rudi231

Mitglied
Hallo Liebe Community,
ich habe eine Aufgabe die leider gar nicht verstehe.

Die Aufgabe lautet:
Implementieren Sie eine iterative Klassenmethode filter_iter, die einen int Wert i
und ein int-Array a übergeben bekommt, und ein int-Array zurückliefert, dass alle
Zahlen von 0 bis einschließlich i enthält, die ganzzahlig durch eine Zahl aus dem Array a teilbar sind.
Zerlegen Sie Ihre Lösung in sinnvolle Untermethoden.
Bsp.: filter_iter(10, new int[]{3,4}) liefert {3,4,6,8,9} zurück.
Implementieren Sie eine rekursive Klassenmethode filter_rec, die die gleiche Funktion wie filter_iter errechnet aber komplett ohne Schleifen auskommt.
Zerlegen Sie Ihre Lösung in sinnvolle Untermethoden.

Ich weiß nicht wie ich diese Klassenmethoden implementieren soll oder allgemein vorgehen soll.

Über Hilfestellungen würde ich mich freuen.
Gruß Rudi 🙂
 
Ich weiß nicht wie ich diese Klassenmethoden implementieren soll oder allgemein vorgehen soll.

Zunächst brauchst Du in Java immer eine Typdefinition, also eine Klasse, ein Interface, etc. Gehen wir mal von einer Klasse aus. Eine Klassenmethode ist dann eine Methode, die ohne Instanz der Klasse aufgerufen werden kann (Schlüsselwort static).

Java:
public class Test { // Klassendefinition
    public static void run() { // Definition der Klassenmethode run - ohne Parameter und Rückgabewert.
    }
}

Implementieren Sie eine iterative Klassenmethode filter_iter, die einen int Wert i
und ein int-Array a übergeben bekommt, und ein int-Array zurückliefert
Das lässt sich nun 1:1 übersetzen:
Java:
    static int[] filter_iter(int i, int[] a) {
    }

Komplett - als ausführbare Klasse (mit Programmeinstiegspunkt main):
Java:
public class Test {
    static int[] filter_iter(int i, int[] a) {
         return null; // hier natürlich sinnvoller Code
    }

    public static void main(String[] args) {
        int[] result = Test.filter_iter(10, new int[]{3, 4});
        System.out.println(java.util.Arrays.toString(result));
    }
}

In main ist hier gleich der Testfall implementiert, der in der Aufgabe steht.
 

Zurück
Oben