Bonjour All,
Je me permet de venir vers vous car comme vous vous en doutez j'ai un petit soucis sur java.
je suis actuellement au Cnam et j'ai une partie d'exercice sur les tableaux que je n'arrive pas à résoudre.
Ci-dessous vous trouverez l'énoncé de l'exercice:
a) Ecrire un code pour créer un tableau 'TAB' de taille N et demander à un utilisateur de le remplir avec des lettres minuscules .
b) On appelle 'plateau' une succession de lettres identiques . La taille d'un plateau est égale au nombre de lettres identiques . Ecrire un code qui calcule et affiche la plus grande taille T de plateau contenus dans le tableau 'TAB' .
Exemple : si le tableau 'TAB' contient les lettres suivantes : abbaaaccdfaaagge , le programme devra afficher que T vaut 3 .
Donc la partie a) rien de bien compliqué mon programme ressemble à ça:
Et la pour la partie B je bloque complètement:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 public class Exo2 { public static void main (String [] arg){ int N,i; System.out.println("Donner la taille du tableau"); N = Lire.i(); char [] tab = new char [N]; for(i=0;i<N;i=i+1){ System.out.println("Donner la lettre n "+(i+1)); tab[i]=Lire.c(); } } }
j'ai commencé par faire une boucle for incrémenté dans une autre boucle for... mais je n'ai pas l'impression que ce soit la bonne solution..
En ce moment même je pense q'un boucle While du genre :
Mais cela ne fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 while (i<N-1) { if (tab[i+1]==tab[i]) { int compt=compt+1 } }
et je ne voit pas de solution à mon problème..
Sachez que je suis en première année et que je n'ai pas le droit d'utiliser de fonctions ect pour l'instant.
boucles for; while; if uniquement.
Merci d'avance .
En l'attente de votre retour
Baoshengdady.
Partager