C8 : Exercices

C8.E1 : Encodage d'un texte

On considère le texte "(-_-)".

1) Combien de bits faudra-t-il utiliser pour coder ce texte avec l'encodage ASCII ? Avec l'encodage Iso-8859-1 ?

2) Déterminer le code hexadécimal de ce texte avec l'encodage Iso-8859-1.

On donne la table t'encodage de l'Iso-8859-1 ci-dessous :

C8.E2 : Un nombre entier à tout prix

On souhaite vérifier que la valeur entrée par l'utilisateur est bien un nombre entier positif.

L'une des méthodes est de tester tous les caractères de la chaine entrée par l'utilisateur et de vérifier leurs points de code unicode.

On précise que les points de code unicode des 10 chiffres de 0 à 9 vont de U+0031 à U+0039.

1) Écrire une fonction qui prend une chaine de caractère en paramètre et renvoie True ou False suivant si cette chaine correspond à un nombre entier ou non.

2) Écrire le programme principal qui demande un nombre entier à l'utilisateur et redemande encore et encore tant que l'utilisateur n'a pas entré un nombre entier.

C8.E3 : Cartes à jour

On s'intéresse aux quatre caractères dont les points de code sont : U+2660, U+2663, U+2665 et U+2666.

1) Trouver les symboles correspondant à ces points de code unicode.

2) Écrire le code d'une fonction qui renvoie une carte au hasard dans une jeu de 54 cartes.

C8.E4 : Chiffrement

Un algorithme très simple de chiffrement consiste à décaler d'un nombre donné de caractères chaque lettre d'un texte.

Par exemple, avec un décalage de 13 caractères, le mot python donnera clguba

1) Écrire une fonction qui :

2) Écrire le programme principal pour permettre à l'utilisateur :

3) Adapter la fonction précédente pour que l'utilisateur puisse déchiffrer un texte avec un décalage négatif.

➽ Prolongement : Écrire une fonction qui permet de vérifier que les caractères de la chaine passée en paramètre sont uniquement des caractères minuscules de a à z et des espaces.