0% ont trouvé ce document utile (0 vote)
0 vues12 pages

TP2

Le document présente deux exercices d'algorithmique. Le premier exercice concerne la recherche de nombres parfaits entre 1 et 1000, tandis que le second porte sur l'échange des octets de poids fort et de poids faible d'un nombre entier. Chaque exercice inclut un énoncé, un découpage modulaire, une analyse, un algorithme et des résultats attendus.

Transféré par

zsam20710
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
0 vues12 pages

TP2

Le document présente deux exercices d'algorithmique. Le premier exercice concerne la recherche de nombres parfaits entre 1 et 1000, tandis que le second porte sur l'échange des octets de poids fort et de poids faible d'un nombre entier. Chaque exercice inclut un énoncé, un découpage modulaire, une analyse, un algorithme et des résultats attendus.

Transféré par

zsam20710
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

1

Exercice 26 : 4

TP
1. ENONCÉ : 4
2. DÉCOUPAGE MODULAIRE : 5
3. ANALYSE DU MODULE : 5
4. ANALYSE GÉNÉRALE : 5
5. ALGORITHME : 6
6. PROGRAMME : REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET 7

2
7. RÉSULTAT : 8
POPULAIRE

Exercice 28 : Ecole Nationale Supérieure d’Informatique 9

1. ENONCÉ : 9
2. DÉCOUPAGE MODULAIRE : 10
3. ANALYSE DU MODULE : 10
4. ANALYSE GÉNÉRALE : 10
5. ALGORITHME : 11
6.
7.
Module : Algorithme et structure de données statiques
PROGRAMME :
RÉSULTATS OBTENUS :
13
14

Binôme :
 Cherouana Wissem
 Zennir Feriel 2
Exercice 26 :
1. Enoncé :
Un nombre parfait est un nombre qui est égal à la somme de tous ses diviseurs
excepté lui-même. Construire l’algorithme qui recherche tous les nombres parfaits
compris entre 1 et 1000.

Par exemple : 6 est un nombre parfait (6 = 1 + 2 + 3)

(En utilisant la modularité)

2. Découpage modulaire :

Rôle : Calculer la somme des diviseurs d’un nombre donné.

3. Analyse du module :

3
 Soit N un entier dont on veut calculer la somme de tous ses diviseurs excepté lui-
même, pour ce faire :
 On initialise S=0 (S va contenir la somme des diviseurs de l’entier N) .
 On fait varier i entre 1 et N div 2
o Si le reste de la division de N par i = 0 (N mod i = 0) alors on cumule i dans S
(car i est un diviseur de N).
 SomDiv = S.

4. Analyse générale :
 Pour chercher tous les nombres parfaits compris entre 1 et 1000 :
 On fait varier l’entier N entre 1 et 1000 :
o Si SomDiv = N alors N est parfait et on l’affiche.

5. Algorithme :

4
ALGORITHME Exo26
VARIABLES N : entier
FONCTION SomDiv (N: entier): entier
Variables i, S : entiers
Début
S0
Pour i allant de 1 à N div 2 faire
Si N mod i = 0 alors
SS+i
SomDiv  S
Fin
Début
Ecrire (‘ La liste des nombres parfaits compris entre 1 et 1000 est : ’)
Pour N allant de 1 à 1000 faire
Si SomDiv (N) = N alors
Ecrire
Fin.

6. Programme :

5
7. Résultat :

6
Exercice 28 :
1. Enoncé :
Construire l’algorithme qui effectue un swapping, autrement dit qui échange les
octets de poids fort et de poids faible d’un nombre entier quelconque.
Par exemple :

7
Si N= 5961 résultat après swapping  1965
Si N= -18 résultat après swapping  -81
Si N= 723859 résultat après swapping  923857
Si N=9 résultat après swapping  9
2. Découpage modulaire :

Rôle : faire une permutation entre le chiffre du poids fort et le chiffre du poids faible
d’un entier N.

3. Analyse du module :
 Soit N un entier sur lequel on veut effectuer un swapping, pour ce faire :
 On initialise i=1 (i va contenir la puissance).
 On extrait le chiffre du poids faible (a= N mod 10).
 On garde la valeur de N dans M .
 On répète la procédure suivante.
o On fait des divisions successives de N par 10 (N = N div 10).
o On récupère le reste de N par 10 dans b (b va contenir à la fin le chiffre du
poids fort)

8
o On multiplie i par 10 (pour élever la puissance).
 Cette procédure est répétée jusqu’à ce que N div 10 = 0 (Tous les chiffres sont
extraits dont le chiffre du poids fort c).
Le swapping est donnée par la relation suivante :
 Swapping= N – a+b + i × ( a – b).

4. Analyse générale :
 Soit un entier N (signé ou non).
 Si N div 10 ≠ 0 (N ne se compose pas d’un seul chiffre) alors on affiche : Swapping ;
Sinon on affiche N ( le swapping de 9=9)

5. Algorithme :

ALGORITHME Exo28
VARIABLES N, M: entier
FONCTION Swapping (N, M: entier): entier
Variables a, b, i : entiers

Début
i1
a  N mod 10
M := N ;
Répéter
N  N div 10
b  N mod 10
i  10 * i
Jusqu’à N div 10 = 0
Swapping  M – a+b + i * (a-b) 9
Fin
Début
Ecrire (‘ Veuillez entrer le Nombre N sur lequel vous voulez effectuer un swapping : ’)
Lire (N)
Si N div 10 <> 0 alors
Ecrire (‘le Swapping est : ’, Swapping (N,M))
Sinon écrire (N)
Fin.

6 .Programme :

10
7 .Résultats obtenus :

11
12

Vous aimerez peut-être aussi