Auteur : Mohamed Messabihi Matière : Initiation à l'algorithmique Date 07 Avril 2014
Durée 1h30
Université Abou Bakr Belkaïd - Tlemcen Faculté des Sciences 1èreAnnée MI Semestre 1
Examen de rattrapage
Aucun document n'est autorisé.
Les solutions sous forme de programme Pascal sont aussi acceptées.
Tout appareil électronique doit être éteint (Téléphone, Ordinateur, Tablette, etc.).
1 Nombre parfait (6 pts)
Écrire un algorithme permettant de déterminer si un entier naturel donné par l'utilisateur est un nombre parfait.
On rappelle qu'un nombre est parfait s'il est égal à la somme de ses diviseurs stricts (sauf lui-même).
Ainsi par exemple, l'entier 6 et 28 sont parfaits car 6 = 1 + 2 + 3et28 = 1 + 2 + 4 + 7 + 14.
2 Échange (6 pts)
Soit le programme suivant qui permet de trier deux valeurs données par l'utilisateur dans l'ordre croissant :
1PROGRAM Trier ;
2VAR u , v : real ;
3
4 { Mettre i c i l a d e f i n i t i o n de l a procedure Echange}
5
6 BEGIN
7 writeln ( ' Donner deux r e e l s u et v ' ) ;
8 readln (u , v ) ;
9 { A p p e l l e r i c i l a procedure Echange}
10 writeln (u , '<=' , v ) ;
11END.
1. Compléter le programme ci-dessus par la dénition d'une procédure Echange ainsi que son appel.
La procédure Echange prend deux paramètres réels a et b et échange éventuellement leurs valeurs pour que l'état de sortie soita≤b.
3 Vote électronique (8 pts)
Un vote électronique est organisé, on souhaite utiliser un programme pour saisir et comptabiliser chaque vote. Les électeurs peuvent voter par 'O' (oui), 'N' (Non) ou 'B' (Blanc). Écrire un algorithme qui permet de :
1. demander à nélecteurs leur vote et les saisir dans un tableau Tab_Votes 2. répartir ces nvotes sur trois tableaux et les acher
a) Tab_O : un tableau ne contenant que des 'O'.
b) Tab_N : un tableau ne contenant que des 'N' c) Tab_B : un tableau ne contenant que des 'B'
3. acher à la n le pourcentage des Oui, des Non et des votes Blancs.
Bon courage !
B Mohamed.Messabihi@gmail.com Page 1