erstellt 27.05.03; übersetzt 20.06.03; © Copyright 2003 Deutsche Übersetzung Heinrich Gailer
Arrays können verwirrend sein. Studenten kommen manchmal bis zu den Arrays, und machen von da an nicht weiter. Dies hat sich für alle Programmiersprachen - BASIC, FORTRAN, Pascal und Java - als wahr erwiesen. Das Problem mit Arrays ist, dass die Anweisungen jetzt zusätzlich indexieren müssen um ihre übliche Arbeit zu tun. Zuweisungsanweisungen waren gewohnt einfach:
sum = result + value;
Jetzt können Sie kompliziert sein:
sum = result[j] + value[k];
Tatsächlich sind Arrays nicht schwierig sobald Sie sich mit der Notation vertraut gemacht haben, und das braucht einige Übung. Diese Aufgaben verschaffen Übung in der Verwendung von Indizes.
Kopieren Sie jedes Programmgrundgerüst in Ihren Editor und vervollständigen Sie es dort wie vorgegeben. Kompilieren und starten Sie dann das Programm.
Begutachten Sie das folgende Programm:
class Exercise1
{
public static void main ( String[] args )
{
int[] val = {0, 1, 2, 3};
sum =
System.out.println( "Summe aller Zahlen = " + sum );
}
}
Vervollständigen Sie die Zuweisungsanweisung, so dass sie die Summe der Zahlen im Array berechnet.
Zurück zur Übersicht.
Begutachten Sie das folgende Programm:
class Exercise2
{
public static void main ( String[] args )
{
int[] val = {13, -4, 82, 17};
int[] twice;
System.out.println( "Urspruengliches Array: "
+ val[0] + " " + val[1] + " " + val[2] + " " + val[3] );
// Konstruieren Sie ein Arrayobject für twice.
// Stellen Sie Werte in twice, die doppelt so groß sind
// als ihre entsprechenden Werte in val
System.out.println( "Neues Array: "
+ twice[0] + " " + twice[1] + " " + twice[2] + " " + twice[3] );
}
}
Vervollständigen Sie das Programm, so dass
eine neues Array twice konstruiert wird.
Kopieren Sie jetzt die Werte von val nach twice,
aber machen Sie die Werte in twice doppelt so groß als wie
sie in val sind.
Zurück zur Übersicht.
Begutachten Sie das folgende Programm:
class Exercise3
{
public static void main ( String[] args )
{
int[] valA = { 13, -22, 82, 17};
int[] valB = {-12, 24, -79, -13};
int[] sum = { 0, 0, 0, 0};
// Addieren Sie die Werte der entsprechenden Slots von valA und valB,
// und stellen Sie das Ergebnis in den entsprechenden Slot von sum.
System.out.println( "Summe: "
+ sum[0] + " " + sum[1] + " " + sum[2] + " " + sum[3] );
}
}
Vervollständigen Sie das Programm
mit vier Zuweisungsanweisungen,
so dass jeder Slot von sum
die Summe der entsprechenden Slots von
valA und valB enthält.
D.h., addieren Sie Slot null von valA
mit Slot null von valB und stellen Sie das
Ergebnis in den Slot null von sum und so weiter.
Zurück zur Übersicht.
Begutachten Sie das folgende Programm:
class Exercise4
{
public static void main ( String[] args )
{
int[] valA = { 13, -22, 82, 17};
int[] valB = { 0, 0, 0, 0};
// Stellen Sie Werte in valB, so dass die Summe der Werte
// der entsprechenden Slots von valA und valB 25 ist.
System.out.println( "valA: "
+ valA[0] + " " + valA[1] + " " + valA[2] + " " + valA[3] );
System.out.println( "valB: "
+ valB[0] + " " + valB[1] + " " + valB[2] + " " + valB[3] );
System.out.println( "Summe: "
+ (valA[0]+valB[0]) + " " + (valA[1]+valB[1]) + " "
+ (valA[2]+valB[2]) + " " + (valA[3]+valB[3]) );
}
}
Vervollständigen Sie das Programm
mit vier Zuweisungsanweisungen,
die Werte in valB stellen,
so dass die Summe der entsprechenden Slots
von valA und valB 25 ist.
Zurück zur Übersicht.
Begutachten Sie das folgende Programm:
class Exercise5
{
public static void main ( String[] args )
{
int[] val = {0, 1, 2, 3};
int temp;
System.out.println( "Urspruengliches Array: "
+ val[0] + " " + val[1] + " " + val[2] + " " + val[3] );
// Kehren Sie die Reihenfolge der Zahlen in dem Array um
System.out.println( "Umgekehrtes Array: "
+ val[0] + " " + val[1] + " " + val[2] + " " + val[3] );
}
}
Vervollständigen Sie das Programm, so dass
die Zahlen in dem Array in umgekehrter Reichenfolge erscheinen.
Sie werden eine Variable temp brauchen um dies zu tun.
Hinweis: dies ist eine schwierigere Aufgabe als Sie denken mögen. Ich stelle sie manchmal in den Prüfungen Mitte des Semesters, und manche Studenten können sie nicht lösen.
Zurück zur Übersicht.