Dans cet exercice nous allons écrire un algorithme en pseudo-code et en utilisant la Programmation Orientée Objet (POO). Je vous propose en fin d’article le programmes correspondant en JavaScript, PHP et C#.
Tentez de résoudre cet exercice par vous même. Vous trouverez la correction sous la présentation du sujet.
Le sujet
- Créer une classe « Chien » ayant 3 attributs :
- Nom
- Age
- Race
- Ecrire un constructeur permettant de générer un chien et caractérisant tous les valeurs des attributs.
- Ajouter dans la classe une fonction permettant d’afficher les informations d’un chien (selon le format que montre l’impression d’écran)
- Ecrire un algorithme principal et créer 3 chiens permettant d’obtenir le résultat attendu après exécution du programme.
Ci-dessous, l’affichage produit par l’algorithme programmé et exécuté :

L’algorithme écrit en pseudo-code :
La classe “Chien” :
Pour traiter cet exercice, je commence par écrire la classe « Chien » et je définis les 3 attributs nécessaires « nom », « age » et « race » en tant qu’éléments privés. Ils ne seront ainsi accessibles que depuis l’objet lui-même et non depuis l’extérieur.
Le nom et la race sont définis en tant que chaîne de caractères et l’âge, en tant que nombre entier.

J’ajoute ensuite un constructeur permettant de créer des instances de la classe « Chien ». C’est de cette manière que je pourrais ensuite générer, dans l’algorithme principal, les trois objets chiens.

Attention à ne pas confondre les paramètres de fonction et les attributs. Ces derniers sont accessibles par l’intermédiaire du mot clef « this ».
J’ajoute enfin dans la classe, la fonction « toString », qui est une « méthode magique » disponible dans plusieurs langages de programmation (en particulier le PHP et C#).
La fonction « toString » doit simplement retourner une chaîne de caractères qui sera affichée lors de la demande d’affichage d’un objet issu de la classe.

Notez que les valeurs des attributs de l’objet sont accessibles par l’intermédiaire du mot clef « this », comme je l’ai écrit dans le constructeur.
L’algorithmique principal
Il reste enfin à écrire l’algorithme principal et à générer les 3 chiens.
Je déclare les variables « c1 », « c2 » et « c3 », de type « Chien » et je les initialise avec une instanciation de la classe « Chien », par l’intermédiaire du mot clef « new ».
Après la génération des objets de type « Chien », je réalise leur affichage en écrivant l’instruction « AFFICHER » suivie directement du nom de la variable souhaitée.
Je peux procéder de cette manière car j’ai utilisé le concept de la « méthode magique » nommée « toString ». Si j’avais nommé ma fonction autrement, comme « afficherChien », j’aurais dû préciser, au moment de l’affichage, le nom de la fonction (exemple : AFFICHER c1.afficherChien())

Aller à la liste de tous les exercices
Les versions programmées (Exercice #55 : la POO – Algorithmique et pseudo-code)
Pour programmer ces versions, n’hésitez pas à suivre l’article vous expliquant comment écrire vos programmes.
JavaScript :
Bien que le JavaScript ne soit pas un langage orienté objet à la base, voici une version que l’on peut écrire en utilisant les concepts de la POO.

C# :

PHP :

Pour continuer votre apprentissage de l’algorithmique :
- Le livre en version broché ou ebook : “L’algorithmique selon H2PROG“
- La formation vidéo en ligne de plus de 6 heures : “Les bases indispensables de la programmation : Algorithmique“
- Le pack de 51 exercices non programmable : “51 exercices d’algorithmique avec Milo“
- Le livre d’exercices “51 exercices d’algorithmique avec Milo“
- Le livre d’exercices “40 Exercices d’algorithmique (pseudo-code et programme)“
Pour apprendre le développement web :
- 26 formations et 168 heures de vidéo dans la licence H2PROG