Olympiade d'Informatique de Madagascar
DEMI-FINALE - OI-MADA 2007Entrainement > Demi-finale 2007
Exo1: Palindrome
Une chaîne de caractères est un palindrome si la succession des caractères qui la composent est la même quand on la parcourt de gauche à droite ou de droite à gauche. Un palindrome peut se composer d'un seul mot, comme "non" ou "ressasser" ou ce peut être une phrase, comme "engage le jeu que je le gagne" (il faut alors ignorer le caractère espace).
Dans notre cas, on se limite au cas d’un mot qui ne comporte pas plus de 20 caractères.
Ecrivez un programme qui accepte un mot et indique si c’est un palindrome ou non.
On peut déclarer un tableau de chaîne de caractères comme suit :
palindr[10] : caractère
C’est un tableau nommé « palindr » pouvant contenir 10 caractères
Exo2: Triangle de Pascal
On rappelle la définition des coefficients binomiaux :
Ils vérifient la propriété suivante
Vous devez tous connaître le triangle de Pascal qui énumère ces coefficients. C'est la propriété 2 ci-dessus qui permet d'écrire un algorithme de construction de ce triangle.
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
L'objectif est d'afficher les coefficients pour un nombre X donné
Notez que pour le calcul de chaque nouvelle ligne, vous n'avez besoin que de la ligne précédente.
Ex : Pour X=3
1 3 3 1
Ecrivez un algorithme permettant d’afficher ces coefficients pour une valeur de X donnée. L’utilisateur n’entrera pas une valeur de X qui est supérieure à 20.
Exo3: Labyrinthe
Voici le schéma du traitement des informations
|
|
|
Afin de vous faciliter le travail, on ne considère que des labyrinthes à chemin unique et sans impasse et la dimension de la matrice associée est toujours [20][20]
Convention :
-Coordonnées : ([colonne],[ligne]) ; ex. : (6,8) (on commence à partir de 0)
-L’entrée est toujours à la colonne 0, ligne 1
-La sortie à l’avant dernière colonne, dernière ligne
On vous épargne la phase de conversion de l’image en une matrice (20 x 20). Ecrivez un programme qui permet d’analyser le fichier « labyrinthe.txt » et affiche les coordonnées du chemin que le robot doit suivre.
Ex. de résultat :
(0,1)
(1,1)
(2,1)
(2,2)
(2,3)
...
(13,8)
(13,9)
On testera votre programme avec d’autres fichiers de même taille.
Et encore !
Pour vous faciliter les choses, on vous donne directement le code pour la lecture d’un fichier.
Lecture d’un fichier
#include<stdio.h> |
Le code ci-dessous permet d’afficher tout le contenu d’un fichier nommé « fichier.txt »
A vous de l’adapter à vos besoins. Exo4: Conjugaison
Objectif : Le programme demande un verbe du premier groupe se terminant en « er », et le conjugue au présent de l’indicatif. Une fonction de contrôle du verbe entré est nécésaire.
Exemple :
Verbe : chanter |
On est sûr que l’utilisateur n’entrera pas un verbe comme « manger » qui se conjugue « nous mangeons » pour la première personne du pluriel.