Programmation, algorithme, code source, C++, codage
Le but est de créer un programme qui permet de saisir un nombre entier naturel et qui affiche le ou les poid(s) de chaque chiffre dans ce nombre. À partir de ces informations (les poids de chaque chiffre), le nombre doit pouvoir être reconstitué. Le poids représente la position du chiffre dans le nombre, en partant de la droite (le premier chiffre de droite est à la position 0, il a donc un poids 0).
[...] Codage d'un algorithme qui affiche le poids de chaque chiffre d'un nombre I. L'algorithme procédure permettant de remplir le tableau représentant le nombre initial procedure remplir_tableau(nombre : entier long naturel, tableau[ : entier) n : entier long naturel i : entier debut n nombre initialisation pour chaque élément du tableau on récupère le chiffre en utilisant le modulo puis on divise (division entière) à chaque fois par 10 pour le chiffre suivant pour i de 0 à 8 si n vaut cela signifie que le nombre saisi a moins de 9 chiffres on va donc remplir la fin du tableau avec pour les distinguer plus tard si n = 0 alors tableau[i] sinon tableau[i] n mod 10 finsi n n / 10 finpour fin procédure permettant d'afficher les poids de chaque chiffre comme demandé procedure afficher_poids(tableau[ : entier) j : entier nouveau_chiffre : booléen on utilise un booléen pour indiquer si on a un nouveau chiffre et si on affiche une nouvelle ligne retour_ligne : booléen on utilise un booléen pour indiquer si on fait un retour à la ligne debut on teste chacun des chiffres de 0 à 9 pour i de 0 à 9 nouveau_chiffre vrai on réinitialise le booléen à vrai à chaque itération retour_ligne faux on réinitialise le booléen à faux à chaque itération pour chaque élément du tableau . [...]
[...] chaque itÈration retour_ligne = false; on rÈinitialise le boolÈen ? faux ? chaque itÈration pour chaque ÈlÈment du tableau . if(tableau[j] si c'est un nouveau chiffre on l'affiche if(nouveau_chiffre){ nouveau_chiffre = false; on positionne le boolÈen ? [...]
[...] chaque fois par 10 pour le chiffre suivant si n vaut cela signifie que le nombre saisi a moins de 9 chiffres on va donc remplir la fin du tableau avec pour les distinguer plus tard if(n tableau[i] = else { tableau[i] = n % 10; n 10; procÈdure permettant d'afficher les poids de chaque chiffre comme demandÈ void afficher_poids(int tableau[9]){ int bool nouveau_chiffre; on utilise un boolÈen pour indiquer si on a un nouveau chiffre et si on affiche une nouvelle ligne bool retour_ligne; on utilise un boolÈen pour indiquer si on fait un retour ? la ligne on teste chacun des chiffres de 0 ? 9 nouveau_chiffre = true; on rÈinitialise le boolÈen ? vrai ? [...]
[...] partir du tableau void afficher_nombre(int tableau[9]){ int unsigned long int nombre; initialisation nombre = n = pour chaque ÈlÈment du tableau, on le multiplie par les puissances successives de 10, et on l'ajoute au nombre ? [...]
[...] faux pour ne plus rÈafficher le chiffre retour_ligne = true; on positionne le boolÈen ? vrai pour prÈciser qu'on aura un retour ? la ligne on affiche ensuite les poids de chaque chiffre cout « " " « j ; si le boolÈen est vrai alors on fait un retour ? la ligne if(retour_ligne){ cout « endl; procÈdure permettant d'afficher le nombre du dÈpart ? [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture