/* Auteur: Nicolas JANEY          */
/* nicolas.janey@univ-fcomte.fr   */
/* Fevrier 2005                   */

public class TestEgaliteTableauxEnConsole {

  /* Fonction d'initialisation d'un tableau               */
  /* avec des valeurs tirees au hasard entre 0 et 9       */

  public static void initTableau(int [] t) {
    int i;
    for ( i = 0 ; i < t.length ; i++ )
      t[i] =(int) (Math.random()*10);
  }

  /* Fonction d'affichage d'un tableau                    */

  public static void afficheTableau(int [] t) {
    int i;
    for ( i = 0 ; i < t.length ; i++ )
      Console.out.print(t[i]+" ");
    Console.out.println();
  }

  /* Fonction de test d'egalite                           */
  /* de deux tableaux d'entiers                           */
  /* t1, t2 : tableaux d'entier a tester                  */
  /* Resultat de la fonction : booleen                    */

  public static boolean egaux(int [] t1,int [] t2) {
    int i = 0;               // variable incrementee pour tester
                             // successivement les entiers des tableaux
  /* La boucle tant que programmee s'execute sur deux     */
  /* composees par et (1) les tableaux n'ont pas encore   */
  /* ete totalement parcourus (2) les cellules d'indice i */
  /* des deux tableaux sont égales                        */
    while ( ( i < t1.length ) && ( t1[i] == t2[i] ) )
  /* Increment de i                                       */
      i = i+1;
  /* Le booleen retourne est le resultat du test          */
  /* entre i = t1.length (i.e. si i atteint cette valeur, */
  /* la boucle s'est executee pour l'integralite          */
  /* du tableau sans etablir que deux cellules de meme    */
  /* indice sont differentes                              */
    return(i == t1.length);
  }

  /* Fonction principale                                  */

  public static void main(String [] args) {
    Console.setTitle("TestEgaliteTableaux");
    int [] t1 = new int[10];   // Declaration et allocation du 1er tableau
    int [] t2 = new int[10];   // Declaration et allocation du 2eme tableau
  /* Remplissage des deux tableaux avec des valeurs       */
  /* tirees au hasard                                     */
    initTableau(t1);
    initTableau(t2);
  /* Affichage des deux tableaux                          */
    afficheTableau(t1);
    afficheTableau(t2);
  /* Test d'agalite et affichage du resultat              */
    Console.out.println("Tableaux egaux : "+egaux(t1,t2));
  }
}