LaDissertation.com - Dissertations, fiches de lectures, exemples du BAC
Recherche

Algorithme appliqué Devoir1

TD : Algorithme appliqué Devoir1. Recherche parmi 300 000+ dissertations

Par   •  29 Octobre 2022  •  TD  •  721 Mots (3 Pages)  •  239 Vues

Page 1 sur 3

Algorithmique appliquée

Devoir 1

programme poids

// déclarations

nb : entier long // nombre entier à analyser

tabPosition[0..9][0..8] : entier // mémorisation des positions de chaque chiffre

chiffre : entier // pour récupérer un chiffre du nombre

position : entier // pour mémoriser la position du chiffre dans le nombre

k : entier // compteur

// boucle sur la saisie du nombre (précédée d’une première saisie)

afficher «Entrer un nombre entier de 9 chiffres maximum = «

saisir nb

tantque nb!=0

// initialisation du tableau des positions avec une valeur impossible à trouver

pour chiffre de 0 à 9

pour k de 0 à 8

tabPosition[chiffre,k] ß -1

finpour

finpour

// initialisation de la position

position ß 0

// analyse du nombre

tantque nb!=0

// récupération du chiffre le plus à droite

chiffre ß nb mod 10

// recherche de la première position libre dans le tableau, pour ce chiffre

k ß 0

tantque tabPosition[chiffre,k]<>-1 et k<9

k ß k+1

fintantque

// mémorisation de la position

tabPosition[chiffre,k] ß position

// suppression, dans le nombre, du chiffre qui vient d’être traité

nb ß nb div 10

// on avance dans les positions

position ß position+1

fintantque

// affichage de la position de chaque chiffre

pour chiffre de 0 à 9

// affichage uniquement si le chiffre apparait au moins une fois

si tabPosition[chiffre,0]<>-1

// affichage du chiffre (début de la ligne)

aficher chiffre, « : «

// suivi de l’affichage des poids pour ce chiffre

k ß 0

tantque tabPosition[chiffre,k]<>-1 et k<10

aficher tabPosition[chiffre,k], « «

k ß k+1

fintantque

finsi

finpour

// reconstruction du nombre à partir des positions

pour chiffre de 0 à 9

k ß 0

tantque tabPosition[chiffre,k]<>-1

// on ajoute au nombre le chiffre multiplié par 10 puisance le poids

nb ß nb + chiffre*10tabPosition[chiffre,k]

k ß k+1

fintantque

finpour

...

Télécharger au format  txt (4.7 Kb)   pdf (38.5 Kb)   docx (9.8 Kb)  
Voir 2 pages de plus »
Uniquement disponible sur LaDissertation.com