Vous êtes sur la page 1sur 6

LES SOUS PROGRAMMES PROF : M.

SAHBANI ALI

Pensée computationnelle et programmation


La décomposition modulaire

Objectif :

La décomposition modulaire : Intérêt et stratégie

Activité 1 (Rappel) :

Q1 - Quelles seront les valeurs des variables x1, ch3, ch4 après l’exécution de la séquence
d’instructions :

ch1  ''info''
ch2  ''informatique'' x1 = ……….…
x1 pos(ch1,ch2) ch3 =
ch3  majus(ch1) …………
ch4  sous- ch4 = ……..…
chaîne(ch2,5,8)
Q2 - Quelles seront les valeurs des variables x, y, z, w après l’exécution de la séquence
d’instructions :

x  Arrondi(4.3) x = …………..
y  racine_carre(x) y = ………..…
z Ent(4.6) z = ………..…
w puissance(4,2) w = ………..…

Q3 - Quelles seront les valeurs des variables après l’exécution de la séquence d’instructions :
c1  chr(65) c1 = ……….
n  ord('' A'' ) n = ………..
c2chr(ord('' A'' )) c2 = ……..…
Q4 – Ecrire un algorithme qui permet de lire une chaine de caractères de taille minimal égale
à 5.

……………………………….
……………
………………..……
………………
………………………………
……………
Q5 – Ecrire un programme python qui permet de lire aléatoirement un entier N (5≤N≤10)

……………………………….
………………………………. CLASSE : 4ÈME M ET SC
P1
……………………
LES SOUS PROGRAMMES PROF : M.
SAHBANI ALI

Activité 2 :
L’image suivante représente la structure générale d’un aéroport :

Afin de comprendre le fonctionnement d’un aéroport, on va détailler quelques structures principales


pour mettre en évidence les différentes tâches réalisées par les agents d’un aéroport, tout d’abord,
un voyageur doit :
1- S’assurer d’avoir un passeport valide
2- Réserver l’hébergement.
3- Faire ses bagages en évitant les objets et les produits interdits
Comment prendre l’avion : jour J, à l’aéroport de départ
arriver à l’aéroport au moins deux heures avant le vol

1- Repérer le comptoir d’enregistrement de votre vol, sur le panneau principal


Quand il rentrera dans l’aéroport, il repère un énorme panneau lumineux récapitulant tous les vols à
venir. Prends le numéro de comptoir d’enregistrement.

P1 CLASSE : 4ÈME M ET SC
LES SOUS PROGRAMMES PROF : M.
SAHBANI ALI

2- Enregistrement des bagages et récupération de la carte d’embarquement.


Une fois devant l’hôtesse, elle demandera le passeport (ou votre carte d’identité). Elle demandera
également s’il a des bagages. Elle collera un bout de papier dessus (avec les références en cas de
perte), et ton valise disparaître dans les coulisses de l’aéroport.
Elle remettra ensuite son carte d’embarquement, on retrouvera aussi sur les différents panneaux
d’information un peu partout dans l’aéroport (le numéro de l’avion, son heure de décollage et la
destination sont indiquées). Maintenant, le voyageur direction les contrôles de sécurité.

3-Passer les contrôles de sécurité


Les hôtesses vont encore vérifier la carte d’embarquement et le passeport. Puis le voyageur
passera dans des tunnels (‫)األنفاق‬, des escaliers, des recoins sombres, et enfin se diriger au tarmac (
‫ )مدرج المطار‬de l’aéroport.

4. A la porte d’embarquement
Enfin, l’appel dans les haut-parleurs aura lieu : «Vol n° numéro Embarquement pour destination à
heure de la porte porte observation». Les hôtesses vont encore vérifier la carte d’embarquement et
le passeport. Puis arriver sur le tarmac de l’aéroport. C’est parti. Bon vol !

P1 CLASSE : 4ÈME M ET SC
LES SOUS PROGRAMMES PROF : M.
SAHBANI ALI

Travail demandé : Tracer le schéma présentant les différentes tâches d’un vol aérien :

Gestion aéroport

Repérage du
comptoir
d’enregistrement Embarqueme
Passage des nt
Enregistrement des
bagages et récupération de contrôles de sécurité
la carte d’embarquement
Constatations
L’organisation du trafic aérien nécessite une répartition rigoureuse, il faut la décomposer en tâches.
Ces tâches seront réparties entre les différents opérateurs.

Par analogie, en algorithmique, dès qu’on commence à écrire des programmes, il devient difficile
d’avoir une vision globale sur son fonctionnement et de traquer les erreurs.

Chaque solution partielle donne lieu à un sous-algorithme qui fera partie d’un algorithme complet
pour pouvoir être exécuté. Cette stratégie, qui consiste à séparer ce traitement du corps du
programme et à regrouper les instructions qui le composent en un sous-programme séparé. Il ne
restera alors plus qu'à appeler ce groupe d'instructions à chaque fois qu’on en a besoin. Ainsi, la
lisibilité est assurée, le programme devient modulaire, et il suffit de faire une seule modification au
bon endroit, pour que cette modification prenne effet dans la totalité de l’application.

Le corps du programme s’appelle alors le programme principal, et ces groupes d’instructions


auxquels on a recours s’appellent modules (fonctions ou procédures)

Le but de l’utilisation de sous-programmes :

- décomposition des problèmes en modules (sous problèmes de taille réduite) :

P1 CLASSE : 4ÈME M ET SC
LES SOUS PROGRAMMES PROF : M.
SAHBANI ALI
- L’approche modulaire réduit énormément le nombre d’instructions redondantes (qui se répètent)
moyennant l’ajout d’une séquence d’appel pour le module à différents endroits du programme.
D’où la réduction de la taille du programme (code).

- La lisibilité qui facilite notablement la compréhension du programme

- Réutilisation du sous programme

Un sous programme est une portion de code analogue à un programme. Déclarée dans un
programme ou dans un sous programme et dont la partie instruction peut être exécutée plusieurs fois
au cours du traitement du programme grâce à des appels.

Les fonctions prédéfinies

Les fonctions prédéfinies sont des fonctions déjà créées et mises à notre disposition. Dans l’activité
1, nous avons déjà utilisé des fonctions prédéfinies comme la fonction chr() ou la fonction ord().

Activité 3 :
Il est demandé d’écrire un algorithme qui supprime un élément d’un tableau d’entiers par son
indice puis afficher le nouveau tableau.
Que faire ? Décomposer le problème en sous problèmes et trouver une solution à chacun puis
regrouper le tout dans un seul algorithme.
Q1 : Tracer le schéma présentant solution à ce problème :

Suppression_tab

Affichage T de taille
Saisir n Saisir ind n-1

Remplissage T de taille Suppression de T[ind]


n
Q1 : proposer une solution algorithmique en langage naturel :
Solution :
Algorithme suppression_tab
Sous-algorithme saisie de n
Lire(n)
Sous-algorithme remplissage tableau T de taille n
Pour i de 0 à n-1 faire

P1 CLASSE : 4ÈME M ET SC
LES SOUS PROGRAMMES PROF : M.
SAHBANI ALI
Ecire (ꞌꞌT[ꞌꞌ ,i, ꞌꞌ] = ꞌꞌ )
Lire(T[i]) T.D.N.T
Fin pour Types
Sous-algorithme saisie de ind tab = tableau de 100 entiers
Lire(ind)
Sous-algorithme suppression de T[ind] du tableau T de taille n T.D.O
Pour i de ind à n-2 faire Objet Type
T[i] T[i+1] T tab
Fin pour i entier
nn-1 ind entier
Sous-algorithme affichage du tableau T de taille n-1
n entier
Pour i de ind à n-1 faire
Ecrire(T[i])
Fin pour
Début
Sous-algorithme saisie de n
Sous-algorithme remplissage tableau T de taille n
Sous-algorithme saisie de ind
Sous-algorithme suppression de T[ind] du tableau T de taille n
Sous-algorithme affichage du tableau T de taille n-1
Fin

P1 CLASSE : 4ÈME M ET SC

Vous aimerez peut-être aussi