Created
January 30, 2024 22:36
-
-
Save youssef3wi/8a4f8bd51a97837b81ebbbb9aa0630dc to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /** | |
| * Alors que vous vous promeniez dans les rayons d'une librarie peu recommandable, | |
| * vous trouvez par hasard un carnet de notes écrit par le célèbre savant fou Hubert Zweistein. | |
| * Vous aimeriez connaître son contenu, mais il est écrit en étrange langage codé. | |
| * <p> | |
| * Assez rapidement, vous faites une découverte : les lignes sont groupées 3 par 3, | |
| * et chaque groupe contient le même nombre de lettres. En alternant les lettres | |
| * des différents lignes, un message apparaît ! | |
| * <p> | |
| * À partir de trois lignes du livre, alternez les lettres : | |
| * <ul> | |
| * <li>1ère lettre de la 1ère ligne,</li> | |
| * <li>1ère lettre de la 2ème ligne,</li> | |
| * <li>1ère lettre de la 3ème ligne,</li> | |
| * <li>2ème lettre de la 1ère ligne,</li> | |
| * <li>2ème lettre de la 2ème ligne,</li> | |
| * <li>...</li> | |
| * </ul> | |
| * Découvrez ce que le docteur Zweistein cachait dans ces pages. | |
| * <p> | |
| * <b>Notes :</b> | |
| * <ul> | |
| * <li>Complétez la fonction donnée, qui doit <b>retourner</b> le bon résultat.</li> | |
| * <li>Le résultat ne sera pas pris en compte si vous l'écrivez sur la sortie standard (stdout).</li> | |
| * <li>Vous pouvez utiliser la sortie d'erreur (stderr) pour vos debugs.</li> | |
| * <li>Les trois lignes données en paramètre contiennent uniquement des lettres | |
| * majuscules et ont une taille maximale de 15 caractères.</li> | |
| * </ul> | |
| * <hr width="200px" /> | |
| * Exemple | |
| * <table border="2"> | |
| * <tr> | |
| * <td>Paramètres</td> | |
| * <td>Valeur de retour</td> | |
| * </tr> | |
| * <tr> | |
| * <td>HE</td> | |
| * <td>HUBERT</td> | |
| * </tr> | |
| * <tr> | |
| * <td>UR</td> | |
| * </tr> | |
| * <tr> | |
| * <td>BT</td> | |
| * </tr> | |
| * </table> | |
| */ | |
| public class ZweisteinLibrary { | |
| /** | |
| * @param s1 la première ligne du message codé. | |
| * @param s2 la deuxième ligne, de même longeur que s1 | |
| * @param s3 la troisième ligne, de même longeur que s1 | |
| * @return le message déchiffré, créé en alternant les lettres de s1, s2 et s3. | |
| */ | |
| public static String decrypt(String s1, String s2, String s3) { | |
| StringBuilder result = new StringBuilder(); | |
| for (int idx = 0; idx < s1.length(); idx++) { | |
| result.append(s1.charAt(idx)) | |
| .append(s2.charAt(idx)) | |
| .append(s3.charAt(idx)); | |
| } | |
| return result.toString(); | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment