3ème
Sc1 informatique
APPLICATION : Sous programmes tp du 27/01/2025
Soit l’algorithme du module ‘compter’ suivant :
……………………………………………………………………………. T.D.O.L
Objet T/N
Début
nb ← 0
Pour i de 0 à long(s)-1 (pas=1) faire
Si (s[i] = v) alors
nb ← nb + 1
Fin si
Fin pour
Retourner nb
Fin
Questions :
1. Terminer l’entête du module ‘compter’ qui prend en paramètres une chaine s et un caractère v
2. Le programme qui appelle le module ‘compter’ contient l’instruction d’appel suivante :
n ← compter (ch, c)
Exécuter l’algorithme proposé pour les valeurs d’appels de ch et c pour chacun des exemples
suivants :
ch :"Technologie" c :"e" ch :"Math" c :"m"
3. Donner le T.D.O.L correspondant au module ‘compter’
4. Quel est le traitement assuré par ce module ?
………………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………………..
5. En se référant aux instructions algorithmiques proposés dans l’exercice (déclaration et appel),
terminer le tableau suivant par des exemples de nom d’objet :
N.B : l’appel du module se fait du part du programme principal.
Paramètre formel Paramètre effectif Objet local Objet global
6. Ecrire un programme Algorithme et implémentation python qui permet de
remplir un tableau t par 10 entiers positifs de 3 chiffres minimum
générer aléatoirement un chiffre chiff
afficher chaque entier du tableau suivi par le nombre d’apparition du chiffre chiff dans cet
entier.
3ème
Sc1 informatique
APPLICATION 2
Soit ch une chaîne de caractères non vide passée en paramètres pour le module traitement
suivant :
fonction traitement(………………………………….): entier
debut
s← ""
pour i de 0 à long(ch)-1 faire
si ( estnum(ch[i]) ) alors
s←s+ch[i]
fin si
fin pour
…………………………………………
fin
pour la chaîne ch: "pa3g15A9b" La fonction retourne : ……………………………………….
Questions :
1. Terminer le code de la fonction ainsi que le TDOL. (retourner -1 dans le cas où la chaine
ne contient aucun chiffres)
2. Parmi les propositions suivantes laquelle peut remplacer la structure de contrôle
itérative de la fonction traitement (donner le rôle des autres propositions) :
S ← "" s← 0
pour i de 0 à long(ch)-1 faire pour i de 0 à long(ch)-1 faire
si("0"≤ch[i]≤ "9") alors si("0"≤ch[i]≤ "9") alors
s ←ch[i] + s s ← s + valeur(ch[i])
fin si fin si
fin pour fin pour
S ← "" S ← ""
pour i de 0 à long(ch)-1 faire m ← "0123456789"
si("0" ≤ch[i]≤ "9") alors pour i de 0 à long(ch)-1 faire
s ← s + ch[i] si(pos(ch[i],m)≠ -1) alors
fin si s ← s + ch[i]
fin pour fin si
fin pour
3. écrire un programme modulaire algorithme et implémentation python qui permet de
remplir un tableau v par n chaînes de caractères non vides,
Puis de remplir un deuxième tableau w par des entiers à partir de v tel que chaque w[i]
est l'entier résultat de la concaténation des chiffres contenus dans v[i]. (3≤ n ≤ 10)
Si la chaîne v[i] ne contient pas de chiffre w[i] vaut 0.