JAVA : Découper un String
Résolu
Jeemys
Messages postés
3
Statut
Membre
-
Jeemys Messages postés 3 Statut Membre -
Jeemys Messages postés 3 Statut Membre -
Bonjour,
Je fais un programme en JAVA et après de multiples tentatives, je suis encore bloqué à une étape depuis des heures.
Je veux découper une chaîne de caractères et l'insérer dans un tableau à 2 dimensions.
J'aimerais limiter mon nombre de colonnes à 6.
Un exemple :
Je prends donc la chaine de caractère "bonjour" et je l'insère dans mon tableau comme ceci.
[b][o][n][j][o][u]
[r] [] [] [] [] []
J'ai écris cela mais je n'obtiens pas le résultat escompté
J'obtiens
[b][o][n][j][o][u]
[b][o][n][j][o][u]
[b][o][n][j][o][u]
....
Si vous pouviez m'aider svp.
Je fais un programme en JAVA et après de multiples tentatives, je suis encore bloqué à une étape depuis des heures.
Je veux découper une chaîne de caractères et l'insérer dans un tableau à 2 dimensions.
J'aimerais limiter mon nombre de colonnes à 6.
Un exemple :
Je prends donc la chaine de caractère "bonjour" et je l'insère dans mon tableau comme ceci.
[b][o][n][j][o][u]
[r] [] [] [] [] []
J'ai écris cela mais je n'obtiens pas le résultat escompté
public char[][] Permutation(String clair, char clef[])
{
int tailleCle = clef.length; //tailleCle = 6
int taille = (clair.length() / tailleCle) +1; // taille = 5 ((27/6 = 4) + 1)
lines = new char [taille][tailleCle];
for (int i=0; i<lines.length; i++)
{
for (int j=0; j<clair.length(); j++)
{
char c = clair.charAt(j);
lines[i][j] = c;
}
}
return lines
}
J'obtiens
[b][o][n][j][o][u]
[b][o][n][j][o][u]
[b][o][n][j][o][u]
....
Si vous pouviez m'aider svp.
A voir également:
- JAVA : Découper un String
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
1 réponse
Il ne faut pas réfléchir par rapport à la sortie, mais par rapport à l'entrée.
Ici tu as deux boucles for pour remplir les cases de ton tableau, alors qu'il suffirait d'une seule boucle qui parcourrait le mot d'entrée...
Ici tu as deux boucles for pour remplir les cases de ton tableau, alors qu'il suffirait d'une seule boucle qui parcourrait le mot d'entrée...
public static char[][] permutation(String clair, char clef[])
{
int tailleClair = clair.length();
int tailleCle = clef.length;
int taille = tailleClair/tailleCle + ((tailleClair%tailleCle==0) ? 0 : 1);
char[][] lines = new char[taille][tailleCle];
for (int i=0; i<tailleClair; i++)
lines[i/tailleCle][i%tailleCle] = clair.charAt(i);
return lines;
}La confiance n'exclut pas le contrôle
Jeemys
Messages postés
3
Statut
Membre
Merci de la réponse, j'essaie ça tout de suite.
Jeemys
Messages postés
3
Statut
Membre
>
Jeemys
Messages postés
3
Statut
Membre
Fonctionne nickel, merci beaucoup. J'ai passé toute la soirée d'hier à trouver une solution et finalement il fallait prendre le problème sous un autre angle.