Hallo,
ich bin neu hier im Forum und in der Java-Programmierung. Seit Anfang dieses Semesters besuche ich die ProgrammierVorlesung und kam mit Java bisher relativ gut klar.
Nur bei den aktuellen Aufgaben hab ich einen Hänger. Dabei sollen mehrere Methoden programmiert werden, die über eine Main-Methode aufgerufen werden.
Eine dieser Methoden soll lauten: int[] replicate(int[] a, int n). Damit Soll der Eingabe-Array n mal wiederholt werden.
Bsp: replicate({1, 4, -2}, 3)soll ergeben {1,4,-2,1,4,-2,1,4,-2}...
Der Rest war kein Problem, nur dieser Teil bereitet mir gerade Kopfzerbrechen.
Das hier hab ich bis jetzt, ich hänge mal auch noch meinen main-Teil mit ran damit der Zusammenhang einigermaßen klar wird.
Hoffe hier kann mir einer den nötigen Denkanstoß geben... :rtfm:
ich bin neu hier im Forum und in der Java-Programmierung. Seit Anfang dieses Semesters besuche ich die ProgrammierVorlesung und kam mit Java bisher relativ gut klar.
Nur bei den aktuellen Aufgaben hab ich einen Hänger. Dabei sollen mehrere Methoden programmiert werden, die über eine Main-Methode aufgerufen werden.
Eine dieser Methoden soll lauten: int[] replicate(int[] a, int n). Damit Soll der Eingabe-Array n mal wiederholt werden.
Bsp: replicate({1, 4, -2}, 3)soll ergeben {1,4,-2,1,4,-2,1,4,-2}...
Der Rest war kein Problem, nur dieser Teil bereitet mir gerade Kopfzerbrechen.
Das hier hab ich bis jetzt, ich hänge mal auch noch meinen main-Teil mit ran damit der Zusammenhang einigermaßen klar wird.
Java:
/**
* Methode, die einen Eingabe-Array n-mal hinterheinander anfügt
*/
static int[] replicate(int[] a, int n) {
int [] b = new int [n*a.length];
for (int j=0; j<n; j++) {
for (int i=0; i<a.length; i++) {
b[i+j]=a[i+j];
}
System.out.print(b);
}
return b;
}
//Main-Methode
public static void main (String[] argv) {
System.out.println("... Start of ArrayOperation ...");
System.out.println("\n Wie viele Elemente soll Ihr Array bekommen? \n Bitte geben Sie eine positive ganze Zahl ein!");
Scanner in = new Scanner(System.in);
int x = in.nextInt();
int [] a = new int[x];
for ( int i = 0; i < a.length; i++ ) {
System.out.println( "\n Geben Sie eine Wert ein (Index" + ( i + 1 ) + ")");
a[i] = in.nextInt();
}
System.out.print("Ihr erzeugter Array lautet: a={");
for (int i=0; i<(a.length-1); i++) {
System.out.print(a[i]+",");
}
System.out.print(a[a.length-1]+"}");
loop: while (true) {
printMenue();
Scanner in2 = new Scanner(System.in);
char Befehl = in2.next().charAt(0);
int key = Befehl;
switch (key) {
case 'T': case 't': reverse(a); print(a); break;
case 'R': case 'r': replicate(a, 4); break;
case 'P': case 'p': plateau(a); break;
case 'E': case 'e': break loop;
default : System.out.println("Was wollen Sie???");
} // switch key
} // while (true)term
} // main
Hoffe hier kann mir einer den nötigen Denkanstoß geben... :rtfm: