Hallo alle miteinander
Ich schreibe am Freitag eine Zwischenprüfung in Softwareentwicklung 1 (Grundkurs).
Wir haben 2 Vorbereitungsbeispiele bekommen.
Aufgabe 1: In einem 1dim Array soll ich eine beliebige Zahl um n Stellen verrücken. Die leerwerdenden Felder soll ich mit einem zweiten Wert val ersetzen.
Aufgabe 2. Ich soll eine Magic Square Matrix schreiben. Eine Magic Square Matrix sieht wie folgt aus
bsp:
1 2 3 4
2 3 4 1
3 4 1 2
4 1 2 3
Ich habe die Aufgaben folgendermaßen gelöst: Ich poste nur den wichtigen Teil
aufgabe 1:
aufgabe2:
Meine 1. Frage lautet jetzt, wie macht man es ordentlich bzw. besser
Meine 2. Frage ist, wie geht man vor, wenn gezielt ein feld eines arrays ausgewählt wird, der inhalt des feldes auf einen neuen Platz gesteckt werden soll.
Ich habe z.B. ein char[][] chessfield = new char[3][3];
chessfield[0][0] bis chessfield[1][1] sind belegt.
der inhalt v. chessfield[0][1] soll auf chessfield[2][0] verschoben werden. Bedingungen wie Platz muss frei sein, damit verschoben werden kann ignoriere ich erstmal. darf ich zum ansprechen eines feldes sowas machen?:
chessfield[input1][input2]
wenn das gemacht wurde, muss das Programm schauen was in diesem feld drin steckt und verschieben, hier komme ich nicht weiter. Ich kann ja nicht 1mio Bedingungen aufschreiben, wann was gemacht werden soll... ???:L
Könntet ihr mir vllt. einen Schubs in die richtige Richtung geben?
Falls ihr meine 2. Frage nicht ganz nachvollziehen könnt, schildere ich das Prob nochmal genauer
LG
Ich schreibe am Freitag eine Zwischenprüfung in Softwareentwicklung 1 (Grundkurs).
Wir haben 2 Vorbereitungsbeispiele bekommen.
Aufgabe 1: In einem 1dim Array soll ich eine beliebige Zahl um n Stellen verrücken. Die leerwerdenden Felder soll ich mit einem zweiten Wert val ersetzen.
Aufgabe 2. Ich soll eine Magic Square Matrix schreiben. Eine Magic Square Matrix sieht wie folgt aus
bsp:
1 2 3 4
2 3 4 1
3 4 1 2
4 1 2 3
Ich habe die Aufgaben folgendermaßen gelöst: Ich poste nur den wichtigen Teil
aufgabe 1:
Java:
for (int i = 0; i < a.length; i++)
{
if ( i < n )
{
a[i] = val;
}
else
{
a[i] = x;
}
}
aufgabe2:
Java:
for (int i = 0; i < a.length; i++)
{
b++;
c = b;
for (int j = 0; j < a[i].length; j++)
{
if ( c > a[i].length )
{
c = 1;
}
a[i][j] = c;
c++;
}
}
Meine 1. Frage lautet jetzt, wie macht man es ordentlich bzw. besser
Meine 2. Frage ist, wie geht man vor, wenn gezielt ein feld eines arrays ausgewählt wird, der inhalt des feldes auf einen neuen Platz gesteckt werden soll.
Ich habe z.B. ein char[][] chessfield = new char[3][3];
chessfield[0][0] bis chessfield[1][1] sind belegt.
der inhalt v. chessfield[0][1] soll auf chessfield[2][0] verschoben werden. Bedingungen wie Platz muss frei sein, damit verschoben werden kann ignoriere ich erstmal. darf ich zum ansprechen eines feldes sowas machen?:
chessfield[input1][input2]
wenn das gemacht wurde, muss das Programm schauen was in diesem feld drin steckt und verschieben, hier komme ich nicht weiter. Ich kann ja nicht 1mio Bedingungen aufschreiben, wann was gemacht werden soll... ???:L
Könntet ihr mir vllt. einen Schubs in die richtige Richtung geben?
Falls ihr meine 2. Frage nicht ganz nachvollziehen könnt, schildere ich das Prob nochmal genauer
LG
Zuletzt bearbeitet: