Compare commits

...

2 Commits

Author SHA1 Message Date
7fac0b5f63 Correction palindrome 2019-06-16 16:12:37 +02:00
c02cfdbac6 Exercice palindrome 2019-06-16 16:11:59 +02:00
3 changed files with 37 additions and 7 deletions

View File

@ -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

20
Palindrome.java Normal file
View File

@ -0,0 +1,20 @@
import static utils.Utils.*;
public class Palindrome {
public static final void main(String[] args) {
testPalindrome(Palindrome::estPalindrome);
}
private static final boolean estPalindrome(char[] mot) {
for (int i=0; i < mot.length/2; i++) {
char c1 = mot[i];
char c2 = mot[mot.length -i-1];
if (c1 != c2) {
return false;
}
}
return true;
}
}

View File

@ -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<char[], Boolean> func) {
testPalindrome(func, "palindrome", false);
for (String pal : List.of("elle", "kayak", "serres", "essayasse")) {
testPalindrome(func, pal, true);
}
}
public static void testPalindrome(Function<char[], Boolean> func,
String mot, boolean result) {
boolean val = func.apply(mot.toCharArray());
afficher(mot, result == val ? "OK" : "ERREUR");
}
}