exercices sur les tableaux

tiger360
exercices sur les tableaux

voila l enonce:
Ecrire une fonction dénommée chaîneTableau prenant en paramètre un tableau d'entiers à une
dimension. Et retournant une Chaîne qui représente les éléments du tableau.

je vois pas trop comment faire
je suis un debutant c est ma premiere annee

import java.util.Scanner ;
public class Ex5  {
    public static void main ( String[] args ) {
        Scanner clavier = new Scanner ( System.in ) ;

        int taille,nbr;
        String chaine;
        System.out.println("Introduisez la taille du tableau: ");
        taille=clavier.nextInt();
        int[] tab=new int[taille];

        for (int i=0;i<tab.length;i++)
        {
            System.out.print("Introduisez un nombre: ");
            nbr=clavier.nextInt();
            tab[i]=nbr;
        }
       chaine=chaineTableau(tab);
       System.out.println(chaine+" ");
    }

    public static String chaineTableau (int[] tab)
    {
        String chaine;
        for (int i=0;i<tab.length;i++)
        {
            chaine=tab[i] ;
            return chaine;
        }
    }
}

Cordialement.

tiger360
Re: exercices sur les tableaux

laissez tomber j ai trouver la solution

vous etes trop lent pour repondre :wink:

bast2

C'est bien que tu ai trouvé la réponse seule 8) mais il pourrait être intéressant que tu l'indique ici, si d'autres lecteurs se retrouvent confrontés au même problème.

fredericmazue

Quote:

vous etes trop lent pour repondre

Bah, hier soir quand j'ai vu ta question, je me suis dit: "c'est tellement facile que je ne vais pas lui enlever la joie de trouver tout seul" :lol:

Et puis hier soir c'était dimanche ;)

tiger360

allez comme vous insisté
j vais qd meme mettre la solution
mais c est seulement pcq c est vous :wink: :

import java.util.Scanner ;
public class Ex5  {
         public static void main ( String[] args ) {
                  Scanner clavier = new Scanner ( System.in ) ;

                  int taille,nbr;
                  String chaine;
                  System.out.println("Introduisez la taille du tableau: ");
                  taille=clavier.nextInt();
                  int[] tab=new int[taille];

                  for (int i=0;i<tab.length;i++)
                  {
                                System.out.print("Introduisez un nombre: ");
                                nbr=clavier.nextInt();
                                tab[i]=nbr;
                  }
                  chaine=chaineTableau(tab);
                  System.out.println(chaine);
         }

         public static String chaineTableau (int[] tab)
         {
                  String chaine="";
                  for (int i=0;i<tab.length;i++)
                  {
                                chaine+=tab[i]+" ";
                  }
                  return chaine;
         }
}
fredericmazue

Ah oui mais non :)

Quote:

public static String chaineTableau (int[] tab)
{
String chaine="";
for (int i=0;i {
chaine+=tab[i]+" ";
}
return chaine;
}

C'est pas bon ton code là :twisted:
Moi si j'étais ton prof... ;)

Regarde bien si ton tableau contient par exemple 1, 2 ,3 alors la chaîne que tu retournes c'est

"1 2 3 "

avec un espace en plus à la fin. Tu me diras que ça ne se voit pas mais en toute rigueur l'espace ne doit pas être là et en fait tu as ce qui s'appelle un bug (si, si ... ;) ).
C'est facile à régler:

Quote:

return chaine.trim();

Et puis tu fais une boucle sur une concaténation de String. Ca ne vaut rien question performance. :twisted:
Un code propre sur lui utiliserait un StringBuffer.

Moi si j'étais ton prof .... ;)