You are on page 1of 2

Programmation Java M1 RSD TP1

Manipulation des tableaux et des chanes de


caractres
Exercice 1 :
Le palindrome est un mot dont lordre des symboles reste le mme quon le lise
de gauche droite ou de droite gauche (radar, elle, rever, Engage le jeu que je
le gagne, ...).
crire une fonction inverseChaine qui retourne une chaine de caractres
reprsentant linverse de la chane passe en paramtre.
crire une fonction estIdentique qui retourne vrai si les 2 chanes de caractres
passes en paramtres sont identiques, faux sinon.
crire un programme principal qui utilise intelligemment toutes les fonctions et
procdures crites prcdemment.
Reprendre les questions prcdentes en grant les espaces et la casse (ex : R a
da r, est un palindrome).

Exercice 2 :
crire une fonction compareTab (tab1, tab2) qui retourne vrai si le contenu case par
case des deux tableaux dentiers passs en paramtres est le mme.
crire une fonction genTab (n, min, max) qui prend 3 paramtres n, min et max et
qui retourne un tableau de n entiers alatoires entre min et max (les deux sont
inclus).
Ecrire le main dans le quel vous gnrez 2 tableaux laide de genTab (n, min, max).
Comparez, ensuite les deux tableaux laide de compareTab.

Exercice 3 :
En cryptographie, le code de Csar est une mthode de chiffrement trs simple
utilise par Jules Csar dans ses correspondances secrtes. Le texte chiffr
sobtient en remplaant chaque lettre du texte clair original par une lettre
distance fixe, dans l'ordre de l'alphabet. Pour les dernires lettres, on reprend au
dbut.
Par exemple avec un dcalage de 3, A est remplac par D, B devient E, et ainsi
jusqu' W qui devient Z, puis X devient A etc. Il s'agit d'une permutation circulaire
de l'alphabet. La longueur du dcalage, 3 dans l'exemple voqu, constitue la cl
du chiffrement qu'il suffit de transmettre au destinataire, s'il sait dj qu'il s'agit
d'un chiffrement de Csar pour que celui-ci puisse dchiffrer le message.
Vigenre utilise le mme principe sauf que le dcalage ce nest un simple
entier mais un message.
Exemple : ici le dcalage cest ABCD. (A sera remplac par 0, B par 1 et ainsi de
suite)
SOURCE : B IE N VENU EAT OU S
Dcalage : A BCD ABCD ABC DA B
Dcalage : 0 1 2 3 0 12 3 0 1 2 3 0 1
Message cod : B J G Q V F P X E B V R U T
1. Ecrire une fonction codage qui prend comme paramtre un dcalage (tableau
dentiers) et un message (chane de caractres) et qui retourne le message cod.
2. Ecrire le main dans le quel vous demandez lutilisateur de saisir le dcalage
(sous forme de chane de caractres) ainsi que le message quil veut coder et
afficher le message cod lcran. Vous devrez ici, transformer le dcalage en
tableau dentiers.
3. Afficher, dans le main, le message dcod en utilisant la mme fonction codage.
Indications :
Travaillez avec des lettres capitales. Pas despace dans le message coder.
Chaque lettre peut tre code par le type char qui a aussi une valeur entire
Exemple :
char c=A ; System.out.println((int) c), affichera la valeur 65.
System.out.println((int) B), affichera la valeur 66 et ainsi de suite (cest le code
ASCII).
System.out.println((char) 65), affichera le caractre A.

You might also like