Mme Mejri Neyla
4Sc Info
n
Leço
TP1
EXERCICE 1 :
Le terme "CAPTCHA" désigne un code permettant de différencier de manière automatisée un
utilisateur humain d'un robot.
Pour générer automatiquement un code "CAPTCHA", on suit les étapes suivantes :
1) On remplit d'une manière aléatoire, par des 0 ou des 1, un tableau T de 26 cases indicées de
"A" à "Z".
2) On génère une chaîne de caractères CH par la concaténation des indices des cases du tableau
T contenant la valeur 1.
3) On ajoute à la fin de la chaîne CH, le caractère dont le code ASCII est égal à : 70 + le
nombre de voyelles contenues dans la chaine CH.
La chaîne obtenue représente le code CAPTCHA.
Exemple :
1) Pour le tableau T suivant :
0 1 0 0 1 1 1 0 1 0 0 1 0 0 1 0 0 0 0 1 0 1 0 1 0 1
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
2) La chaîne CH formée à partir des indices du tableau T est : "BEFGILOTVXZ".
3) On ajoute à la fin de la chaîne CH, le caractère "I" dont le code ASCII est égal à 73, car
Le nombre de voyelles contenues dans la chaîne CH est égal à 3
70 + 3 = 73 (qui est le code ASCII de la lettre "I").
D’où, le code "CAPTCHA" obtenu est la chaine : "BEFGILOTVXZI"
On se propose d’écrire un programme permettant de générer automatiquement N codes
"CAPTCHA" de la manière présentée ci-dessus (avec 1 < N < 11).
1
2024-2025
Mme Mejri Neyla
4Sc Info
EXERCICE 2 :
Pour générer automatiquement des mots de passe pour les utilisateurs d’une application
informatique, on suit les étapes suivantes :
1) On remplit un tableau T par les noms de N utilisateurs (avec 1<=N<=9), sachant qu'un nom
d'utilisateur est formé de 20 lettres majuscules au maximum.
2) On génère un tableau TM contenant les mots de passe des N utilisateurs. Un mot de passe est
généré en apportant les modifications suivantes au nom de l'utilisateur :
Remplacer toutes les occurrences de la lettre "A" par le caractère"@".
Remplacer toutes les occurrences de la lettre "O" par le caractère zéro "0".
Ajouter à la fin de la chaine obtenue précédemment, le nombre de voyelles contenues
dans le nom de l'utilisateur. La chaine résultante représente le mot de passe.
Exemple :
Pour le tableau des utilisateurs suivant :
T RAOUF ZERIEB AZIZA FATMA RAYEN NADIA
1 2 3 4 5 6
Le tableau des mots de passe généré est le suivant :
T R@0UF3 ZERIEB3 @ZIZ@3 F@TM@2 R@YEN3 N@DI@3
1 2 3 4 5 6
Par exemple, le mot de passe de l'utilisateur "RAOUF" est "R@0UF3". En effet,
En remplaçant toutes les occurrences de la lettre "A" par le caractère "@", on obtient :
"R@OUF"
En remplaçant toutes les occurrences de la lettre "O" par le caractère zéro "0", on
obtient : "R@0UF"
En ajoutant à la fin de la chaine obtenue précédemment, le nombre de voyelles contenues
dans le nom de l'utilisateur, on obtient le mot de passe : "R@0UF3".
10 11
Le programme affiche : S1 = 84, S2 = 80 et ind = 6
2
2024-2025