Das vollständige Programm steht unten.
Hier ist das Programm.
Studieren Sie sorgfältig, wie die if-Anweisung verwendet wurde um
max zu ändern.
class MaxAlgorithm
{
public static void main ( String[] args )
{
int[] array = { -20, 19, 1, 5, -1, 27, 19, 5 } ;
int max;
// das gegenwärtige Maximum initialisieren
max = array[0];
// das Array durchsuchen
for ( int index=0; index < array.length; index++ )
{
if ( array[ index ] > max ) // das gegenwärtige Element untersuchen
max = array[ index ]; // wenn es bis dahin das Größte ist, max ändern
}
System.out.println("Das Maximum dieses Arrays ist: " + max );
}
}
Probieren Sie das Programm aus. Schauen Sie, sobald Sie es zum Laufen gebraucht haben, ob Sie das Programm "brechen" können, indem Sie das Array mit unterschiedlichen Werten initialisieren:
Wird das korrekte Maximum in jedem Fall gefunden? Manchmal arbeitet ein Programm mit den Daten, an die ein Programmierer gedacht hat, als er das Programm geschrieben hat, aber nicht mit all den Arten von Daten mit dem das Programm verwendet wird.
Hier ist ein klassischer Bug für diese Art von Programm:
ändern Sie den Testteil von for in
index < array.length-1