/* Determination de la valeur minimale */ /* contenue dans un tableau de reels double */ public class ValeurMinimaleTableauReel { /* Fonction d'initialisation d'un tableau */ /* de double avec des reels tires au sort */ /* entre 0.0 et 1.0 */ /* t : Le tableau de double à initialiser */ static void initRand(double [] t) { int i; for ( i = 0 ; i < t.length ; i = i+1 ) { t[i] = Math.random(); } } /* Fonction d'affichage des valeurs contenues */ /* dans un tableau de double */ /* t : Le tableau de double à afficher */ static void affichageTableau(double [] t) { int i; for ( i = 0 ; i < t.length ; i = i+1 ) { Ecran.formater("%8.5f\n",t[i]); } } ///////////////////////////////////////////////// /* Fonction de calcul et retour de la valeur */ /* minimale d'un tableau de double */ /* t : le tableau de réels où la recherche */ /* est effectuée */ static double minimum(double [] t) { int i; double min; switch (t.length) { case 0 : { min = Double.NaN; } break; case 1 : { min = t[0]; } break; default : { min = t[0]; for ( i = 1 ; i < t.length ; i++ ) { if ( t[i] < min ) { min = t[i]; } } } } return min; } ///////////////////////////////////////////////// /* Programme principal */ public static void main(String [] args) { double [] tb = new double[8]; double vMin; initRand(tb); Ecran.afficherln("Tableau : "); affichageTableau(tb); vMin = minimum(tb); Ecran.formater("Valeur minimale : %8.5f\n",vMin); } }