Witam,
zauważyłem dziwne zachowanie tablicy którego całkowicie nie rozumiem. Przykład wygląda następująco:
public class Klasa {
public static void main(String[] args){
int[] tab = new int[10];
StdOut.println("Elementy tablicy: ");
for (int i=0;i<tab.length;i++){
tab[i] = i*2;
StdOut.print(tab[i] + " ");
}
// tab[0] = 3;
int min = Integer.MAX_VALUE;
int max = Integer.MIN_VALUE;
for (int j=0;j<tab.length;j++){
if (tab[j] > max) max = tab[j];
else if (tab[j] < min) min = tab[j];
}
StdOut.println();
StdOut.println("Min = " + min) ;
StdOut.println("Max = " + max);
}
}
- pierwszym dziwnym zachowaniem jest fakt gdy tab[0] ma wartość 0 lub mniejsza program nie potrafi wyliczyć wartości minimalnej.
- drugim jeszcze dziwniejszym jest to że pierwszy element tablicy w ogóle nie może być wartością minimalną(nawet gdy ta wartość jest dodatnia!).