Université de Montpellier II — DEUG MASS — niveau 1 —
période 2 — Informatique — U1IF2A
Examen d’Informatique
mai 2003 – 3h
Il est recommandé aux étudiants de lire attentivement l’ensemble du sujet avant de commencer. Ecrire les réponses sur cette feuille. Tous documents autorisés sauf livre
Question I.1
Ecrire une fonction compte_debut(A,B) qui retourne le nombre de caractères en commun au début de deux chaînes de caractères. Faire la même chose avec une fonction compte_fin(A,B).
Exemples : compte_debut(« anti », « antimoine ») à 4
compte_debut (« aller», « antimoine ») à 1
compte_debut (« bibi », « antimoine ») à 0
Question I.2
Définir et écrire une fonction fusion(A,B) qui fusionne deux chaînes de caractères en une seule C contenant les deux chaînes A et B. On fera en sorte que C soit la plus courte possible.
Exemples : fusion(« anti », « antimoine ») à « antimoine »
fusion(« neveu », « antimoine ») à « antimoineveu »
fusion(« apprenant », « antimoine ») à « apprenantimoine »
fusion(« interne », « antimoine ») à « interneantimoine »
Question II.1
On souhaite remplir un tableau carré à deux dimensions (n*n) avec un texte T. Définir et écrire cette fonction remplir_matrice_carré. Par exemple :
remplir_matrice_carré (« lechatboitdulait »,
5) à |
|
Question II.2
On souhaite décaler circulairement les lignes et les colonnes d’une matrice carrée de caractères, à l’aide de deux valeurs numériques. La première valeur C décale l’ensemble des colonnes, la seconde valeur L les lignes. Une valeur positive décale vers le bas ou à droite, une valeur négative vers le haut ou à gauche. Par exemple :
C = 2 et L = 3 |
C = 2 à |
|
L = 3 à |
|
Ecrire cette fonction décaler_matrice(M : tableau , C, L : entier)
°°°°°°°°°°°°°°°°°°°°