0% ont trouvé ce document utile (0 vote)
51 vues1 page

Hammamet

Le document présente un devoir de synthèse en algorithmique et programmation pour des étudiants de lycée, comprenant trois exercices. Le premier exercice consiste à calculer une somme S pour un entier n supérieur à 10, le deuxième à trier les chiffres d'un nombre entier positif, et le troisième à réaliser une addition exacte de deux très grands entiers représentés sous forme de chaînes de caractères. L'exercice 3 demande une analyse et une division en modules pour la mise en œuvre de l'addition.

Transféré par

Bes K
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)
51 vues1 page

Hammamet

Le document présente un devoir de synthèse en algorithmique et programmation pour des étudiants de lycée, comprenant trois exercices. Le premier exercice consiste à calculer une somme S pour un entier n supérieur à 10, le deuxième à trier les chiffres d'un nombre entier positif, et le troisième à réaliser une addition exacte de deux très grands entiers représentés sous forme de chaînes de caractères. L'exercice 3 demande une analyse et une division en modules pour la mise en œuvre de l'addition.

Transféré par

Bes K
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

Lycée Mohamed Boudhina Section : Science de

l’informatique
Hammamet 4 SI 2
Devoir de synthèse N°2
Matière : Algorithmique et Programmation Mars 2008
Prof : Ncir Mohamed

NB: Les apparences sont trompeuses, le devoir parait facile, mais l'EX 3 demande
beaucoup d'effort !

Exercice N°1 :
Ecrire une fonction permettant de calculer et d’afficher la somme S pour un entier n >10
donnée :
S = 1 – 1/3 + 1/5 – 1/7 + …………+ 1/(2n-1)

Exercice N°2 :
Soit N un entier long strictement positif et formé au maximum de 8 chiffres.
Ecrire une analyse permettant de mettre les chiffres de ce nombre en ordre décroissant
puis afficher le résultat.
Exemple : N=172491 -------àN devient -------à N=974211

Exercice N°3 :
On se propose d’écrire un programme qui fait une addition exacte de deux entiers naturels
très grands. Ces nombres peuvent aller jusqu’à 250 chiffres. Pour cela, la saisie des entiers
se fera sous forme de chaînes de caractères. Ces caractères sont impérativement des
chiffres décimaux (0,1,2……, 8et 9). Le programme ajustera ensuite ces deux chaînes de
telle façon qu’elles auront la même longueur. Cette opération consiste à ajouter des 0 à
gauche de la plus courte des chaînes pour qu’elle soit de même longueur que l’autre. On
passe ensuite à l’opération d’addition et le résultat obtenu est mis dans une troisième
chaîne qui sera affichée.
Question
1- Analyser ce problème et envisager sa division en modules.
2- Analyser les module de la question 1- .

Un peu trop facile mais, c'est exactement ça les devoirs que j'aime en un peu plus dur.
Pour le 3e exercice, on suppose que les deux chaînes a et b contenant les entiers à saisir
par l'utilisateur ont déjà été ajustées à la même longueur.
Je propose l'algorithme suivant pour faire la somme.
Code:
r:=0
pour i de long(a) à 1 faire
valeur(a[i],ai,e)
valeur(b[i],bi,e)
transformer_en_chaine(u,(ai+bi+r)mod 10)
r:=(ai+bi+r) div 10
c:=u+c
fin pour
si r=1 alors c:="1"+c

Si l'énoncé m'en laissait le choix, j'aurais inversé les chaînes pour ne pas devoir ajouter de
zéros au début de la plus courte chaînes entre a et b, avant de faire la somme.

Vous aimerez peut-être aussi