Archives du 27 novembre 2016
R1.01 – TP5 – Exercice 15
Modifier le fichier nsUtil.h en ajoutant la fonction EditVStringV4 ()
de signature :
void EditVStringV4 (const std::vector <std::string> & VString);
Cette fonction doit afficher à l’écran tout le code ASCII de tous les caractères alphabétiques (majuscules / ou minuscules) de chaque ligne du vecteur VString
.
Nb : pour savoir si un caractère est alphabétique, vous devez utilisez la fonction isalpha ()
.
R1.01 – TP5 – Exercice 16
Dans le fichier nsUtil.h
, ajouter les deux lignes suivantes :
const std::string KLeet ("/-\\;|3;(;|);3;|=;9;|-|;1;_|;|<;|_;|\\/|;|\\|;0;|2;Q;|?;$;'][';|_|;\\/;\\/\\/;><;`/;2;"); // 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
La première ligne est la correspondance entre notre alphabet et l’alphabet leet, la seconde correspond à notre alphapbet (elle n’est présente que pour vous aidez).
Nb : a l’instar des fichiers CSV, chaque lettre de l’alphabet Lett est séparée par le caractère ';'
dans la chaine KLeet
.
Ecrire le corps de la fonction ToLett ()
de signature:
string ToLeet (char c);
Cette fonction prend en paramètre un caractère est renvoie la chaine de caractères correspondante dans l’alphabet Lett.
Ecrire le corps des deux fonctions suivantes :
vector <string> & ToLeet (vector <string> & VString) ; vector <string> & ToLeet (vector <string> & VString, const unsigned & LineNumber) ;
La première chaque caractère de toutes les lignes du vecteur en son alphabet Leet correspondant, la seconde ne s’applique qu’à la ligne LineNumber
.
Modifier le main () pour prendre en compte ses deux fonctions. L’appel de ces fonctions se fait en saisissant la chaine « lee» suivie de « tout » ou d’un numéro de ligne.
R1.01 – TP5 – Exercice 17
Ecrire les fonctions duales de celles de l‘exercice 16 de façon a transformer une ligne / l’intégralité du vecteur encodé en transformant chaque (chaine de) caractères de l’alphabet Leet en alphabet “standard“.
Modifier le main ()
pour prendre en compte ses deux fonctions. L’appel de ces fonctions se fait en saisissant la chaine « unl» suivie de « tout » ou d’un numéro de ligne.