Programme 1 (sans paramètre) : Dessiner une fillette
Programme 1.cpp
— 7.1 KB
Contenu du fichier
/*************************************************************/ /** \file dessin.cpp \brief Ce programme dessine une maison et la silhouette d'une fillette. Ce programme dessine une maison et la silhouette d'une fillette a l'aide de caractere ascii. Cet exemple illustre particulierement les differents niveaux d'abstraction. le haut niveau : la maison dessine_maison() ou la fillette dessine_fillette() - la decomposition de l'objet toujours en restant dans le monde "reel": - le toit de la maison dessine_toit() - les murs de la maison dessine_murs() - la tete de la fillette dessine_tete() - le corps de la fillette dessine_corps() - les jambes de la fillette dessine_jambe() - les formes geometriques conceptuelles utilisees pour creer les objets reels: - le cercle dessine_cercle()</li> - le rectangle dessine_rectangle()</li> - le triangle dessine_triangle()</li> - le cone dessine_cone()</li> - finalement, les composantes de certaines formes geometriques conceptuelles (le cercle est a la fois un objet et sa propre composante): - la ligne droite dessine_base()</li> - l'intersection de deux ligne dessine_intersection()</li> - les deux lignes paralleles dessine_parallele()</li> Entree: aucune Sortie: aucune \author Gabriel Girard \date 27 septembre 2007 (dernière version) \date 12 septembre 1994 (création) \version v1.2, 27 septembre 2007, redecoupage modulaire, Benoit Fraikin \version v1.1, 15 septembre 2005, mise a jour, Benoit Fraikin */ /*************************************************************/ #include <iostream> using namespace std; /*-----------------------------------------------------------*/ /** \brief Programme principal qui dessine une maison et la silhouette d'une fillette. */ /*-----------------------------------------------------------*/ int main() { // declaration de fonctions utiles void dessine_maison(); void dessine_fillette(); // On dessine la maison dessine_maison(); // On dessine la fillette dessine_fillette(); return 0; } // fin main() /*-----------------------------------------------------------*/ /** \fn dessine_maison \brief Cette fonction dessine une maison */ /*-----------------------------------------------------------*/ void dessine_maison() { // declarations des fonctions utiles void dessine_toit(); void dessine_murs(); // On dessine la maison dessine_toit(); dessine_murs(); return; } /*-----------------------------------------------------------*/ /** \fn dessine_toit \brief Cette fonction dessine un toit d'une maison */ /*-----------------------------------------------------------*/ void dessine_toit() { // declaration des fonctions utiles void dessine_cone(); dessine_cone(); return; } /*-----------------------------------------------------------*/ /** \fn dessine_murs \brief Cette fonction dessine les murs d'une maison */ /*-----------------------------------------------------------*/ void dessine_murs() { // declaration des fonctions utiles void dessine_rectangle(); dessine_rectangle(); return; } /*-----------------------------------------------------------*/ /** \fn dessine_fillette \brief Cette fonction dessine une fillette */ /*-----------------------------------------------------------*/ void dessine_fillette() { // declaration des fonctions utiles void dessine_tete(); void dessine_corps(); void dessine_jambes(); // On dessine la fillette dessine_tete(); dessine_corps(); dessine_jambes(); return; } /*-----------------------------------------------------------*/ /** \fn dessine_tete \brief Cette fonction dessine la tete d'une fillette */ /*-----------------------------------------------------------*/ void dessine_tete() { // declaration des fonctions utiles void dessine_cercle(); dessine_cercle(); return; } /*-----------------------------------------------------------*/ /** \fn dessine_corps \brief Cette fonction dessine le corps d'une fillette */ /*-----------------------------------------------------------*/ void dessine_corps() { // declaration des fonctions utiles void dessine_triangle(); dessine_triangle(); return; } /*-----------------------------------------------------------*/ /** \fn dessine_jambes \brief Cette fonction dessine les jambes d'une fillette */ /*-----------------------------------------------------------*/ void dessine_jambes() { // declaration des fonctions utiles void dessine_cone(); dessine_cone(); return; } /*-----------------------------------------------------------*/ /** \fn dessine_cercle \brief Cette fonction dessine un cercle */ /*-----------------------------------------------------------*/ void dessine_cercle() { char point = '$'; cout << " "<< point << " "<< point << endl; cout << " "<< point << " "<< point << endl; cout << " "<< point << " "<< point << endl; return; } /*-----------------------------------------------------------*/ /** \fn dessine_cone \brief Cette fonction dessine un cone vers le haut */ /*-----------------------------------------------------------*/ void dessine_cone() { // declaration des fonctions utiles void dessine_intersection(); dessine_intersection(); return; } /*-----------------------------------------------------------*/ /** \fn dessine_rectangle \brief Cette fonction dessine un rectangle */ /*-----------------------------------------------------------*/ void dessine_rectangle() { // declarations des fonctions utiles void dessine_base(); void dessine_parallele(); // On dessine le rectangle dessine_base(); dessine_parallele(); dessine_base(); return; } /*-----------------------------------------------------------*/ /** \fn dessine_triangle \brief Cette fonction dessine un triangle */ /*-----------------------------------------------------------*/ void dessine_triangle() { // declarations des fonctions utiles void dessine_base(); void dessine_intersection(); // On dessine le rectangle dessine_intersection(); dessine_base(); return; } /*-----------------------------------------------------------*/ /** \fn dessine_base \brief Cette fonction dessine une ligne */ /*-----------------------------------------------------------*/ void dessine_base() { cout << "-----------" << endl; return; } /*-----------------------------------------------------------*/ /** \fn dessine_intersection \brief Cette fonction dessine deux lignes intersectrices */ /*-----------------------------------------------------------*/ void dessine_intersection() { cout <<" / \\ " << endl; cout <<" / \\ " << endl; cout <<"/ \\ " << endl; return; } /*-----------------------------------------------------------*/ /** \fn dessine_parallele \brief Cette fonction dessine deux lignes verticales paralleles */ /*-----------------------------------------------------------*/ void dessine_parallele() { cout <<"| |" << endl; cout <<"| |" << endl; cout <<"| |" << endl; return; }