diff --git a/Exercices.md b/Exercices.md index 318f54c..65fc1db 100644 --- a/Exercices.md +++ b/Exercices.md @@ -143,13 +143,7 @@ Le texte chiffré s'obtient en remplaçant chaque lettre du texte clair original ## Exercice 10 -Verification IBAN: - -1. Enlever les caractères indésirables (espaces, tirets), -2. Supprimer les 4 premiers caractères et les replacer à la fin du compte, -3. Remplacer les lettres par des chiffres au moyen d'une table de conversion (A=10, B=11, C=12 etc.), -4. Diviser le nombre ainsi obtenu par 97, -5. Si le reste n'est pas égal à 1 l'IBAN est incorrect : Modulo de 97 égal à 1. +Tester si un mot est un palindrome. Un palindrome est un mot qui peut se lire dans les 2 sens: été, ici, colloc # Idées @@ -157,6 +151,7 @@ Verification IBAN: * Somme des entiers entre 2 entiers donnés * FizzBuzz +* mot palindrome * cle IBAN * Chiffrement de Vigenere * Factoriel diff --git a/Palindrome.java b/Palindrome.java new file mode 100644 index 0000000..d5b4d7a --- /dev/null +++ b/Palindrome.java @@ -0,0 +1,13 @@ +import static utils.Utils.*; + +public class Palindrome { + + public static final void main(String[] args) { + testPalindrome(Palindrome::estPalindrome); + } + + private static final boolean estPalindrome(char[] mot) { + return false; + } + +} diff --git a/utils/Utils.java b/utils/Utils.java index f63511a..cc35def 100644 --- a/utils/Utils.java +++ b/utils/Utils.java @@ -1,8 +1,10 @@ package utils; +import java.util.List; import java.util.Arrays; import java.util.stream.Collectors; import java.util.Scanner; +import java.util.function.Function; import java.util.function.BiFunction; public class Utils { @@ -113,4 +115,17 @@ public class Utils { } } + public static void testPalindrome(Function func) { + testPalindrome(func, "palindrome", false); + for (String pal : List.of("elle", "kayak", "serres", "essayasse")) { + testPalindrome(func, pal, true); + } + } + + public static void testPalindrome(Function func, + String mot, boolean result) { + boolean val = func.apply(mot.toCharArray()); + afficher(mot, result == val ? "OK" : "ERREUR"); + } + }