TP n°7 noté de Programmation 1 — groupe 1 — janvier 2020
Modalité : utilisation libre de vos notes de cours personnelles, communications interdites.
Durée : 1h45
SUJET :
1. Réalisation en C un programme qui affiche un menu puis réalise les actions demandées
successivement par l'utilisateur, jusqu'à une demande de terminaison du programme.
2. Envoi à la fin de la séance du code source sur l'ENT (un fichier .c, à l'exclusion de tout autre
type de fichier.
Détail de l'implémentation :
Réaliser soigneusement les fonctionnalités suivantes au mieux du temps imparti et de vos compétences.
En cas de difficulté, vous pouvez faire appel à l'aide de l'enseignant au prix d'une pénalité proportionnelle.
Une action programmée sans fonction ni procédure sera acceptée mais noté en conséquence.
– Un tableau d'entiers int Z[31]={0}
sera défini comme variable globale.
– Une procédure nommée Affichermenu()
affichera le menu suivant.
Menu :
0 - Quitter.
1 - Premiere action.
2 - Deuxieme action.
3 - Troisieme action.
4 - Quatrieme action.
– Une procédure Premiereaction()
remplira le tableau Z de façon que
Z[i]=Pln(i), en définissant une fonction de prototype int Pln(int x)
qui retourne
x4−5x3−151x2+5x+150.
– Une procédure Deuxiemeaction()
affichera toutes les valeurs de Z, séparées par un
espace. L'affichage se terminera par un retour à la ligne.
– Une procédure Troisiemeaction()
affichera sur deux lignes consécutives 1°) le
nombre de fois où la valeur 0 apparait dans Z, et 2°) la valeur moyenne de Z.
– Une procédure Tracerligne(int k)
affichera une ligne constituée de k fois le
caractère '-' (signe moins).
– Une procédure Quatriemeaction()
réalisera l'algorithme suivant :
Donnée : le tableau Z de taille 31.
Résultat : affichage...
Pour i de 0 à 30 faire
Si Z[i]≤0 alors Tracerligne(−Z[i] mod 41);
sinon Tracerligne(Z[i] mod 41).
– La fonction main()
lancera l'affichage du menu et la réalisation successive de commandes demandées par l'utilisateur, en faisant appel aux procédures correspondantes.
– On testera le programme avec les commandes successives : 1, 2, 3, 4, 0, données par
l'utilisateur.
N.B. Si une des actions n'a pas été réalisée, la commande du menu correspondant affichera :
_aucune_action_
.