
\documentclass[12pt]{article}

% Packages
%----------
\usepackage{french}
\usepackage{fullpage}

\newcommand \comment[1] {}

\begin{document}
\sloppy


\tiny



\begin{enumerate}


%% Le premier exercice suivit de son corrige

    \item On demande \`a l'utilisateur de rentrer la date courante sous la
    forme num\'ero du mois, ann\'ee. Puis on lui demande son age sous
    la forme nombre d'ann\'ees, compl\'et\'ee par un nombre de
    mois. L'algorithme affiche alors la date de naissance de la
    personne.

{ %%\small
\begin{verbatim}
Programme Annee

      Variables 
         moisC, anneeC, ageA, ageM      : quatre entiers en entree
         moisR, anneeR                  : deux entiers pour le resultat

      Debut Annee
                // on demande d'entrer les donnees
                afficher ``quel est le numero du mois courant ? ''
                lire moisC

                afficher ``quelle est l'annee courante ?''
                lire anneeC

                afficher ``combien d'annees avez vous ?''
                lire anneeA

                afficher ``auquel on ajoute, en mois ?''
                lire moisA

                // Le calcul de la date de naissance pose
                // eventuellement un probleme de retenue

                si (moisC >= ageM) {
                        // ici pas de probleme de retenue, 
                        // la difference est immediate
                        moisR  <- moisC  - ageM
                        anneeR <- anneeC - ageA
                }
                sinon {
                        // on s'occupe de la retenue
                        moisR  <- moisC  - ageM + 12
                        anneeR <- anneeC - ageA - 1
                }
                fin si

                // on affiche alors le resultat
                afficher ``vous etes nes en'' moisR ``de l'annee'' anneeR

      Fin Annee

\end{verbatim}


\begin{verbatim}
#include <iostream.h>

int main(){

  int moisC,anneeC,ageA,ageM;  // les entrees du programme
  in moisR, anneeR;            // le resultat
  
  // on demande d'entrer les donnees
  cout << "quel est le numero du mois courant ? ";
  cin  >> moisC;

  cout << "\n quelle est l'annee courante ? \n";
  cin  >> anneeC;

  cout << " \n combien d'annees avez vous ? \n";
  cin  >> ageA;

  cout << "\n plus combien de mois ? \n";
  cin  >> ageM;

  // Le calcul de la date de naissance pose
  // eventuellement un probleme de retenue

  
  if (moisC >= ageM) {  // ici pas de probleme de retenue, 
                        // la difference est immediate
    moisR =moisC -ageM;
    anneeR=anneeC-ageA;
  }
  else {                // on s'occupe de la retenue
    moisR =moisC -ageM+12;
    anneeR=anneeC-ageA-1;
  }

  // on affiche alors le resultat
  cout << " vous etes ne en "<< moisR <<" de l'annee " << anneeR <<"\n";

}


\end{verbatim}}


%% Le second exercice suivit de son corrige

    \item On demande \`a l'utilisateur de rentrer la date courante sous la
    forme num\'ero du mois, ann\'ee. Puis on lui demande sa date de
    naissance sous le m\^eme format. L'algorithme affiche alors l'age
    de la personne en ann\'ees compl\'et\'ee par un certain nombre de
    mois.\\

    Par exemple si aujourd'hui on est en 11/2000, et que vous etes
    n\'e en 6/1980 vous avez 20 ans et 5 mois.





{%\small 
\begin{verbatim}
Programme Annee

      Variables 
         moisC, anneeC, naissA, naissM      : quatre entiers en entree
         ageM , ageA                        : deux entiers pour le resultat

      Debut Annee
                // on demande d'entrer les donnees
                afficher ``quel est le numero du mois courant ? ''
                lire moisC

                afficher ``quelle est l'annee courante ?''
                lire anneeC

                afficher ``quel est le numero de votre mois de naissance ?''
                lire naissM

                afficher ``Et l'annee ?''
                lire naissA

                // Le calcul de l'age pose eventuellement 
                // un probleme de retenue

                si (moisC >= naissM) {
                        // ici pas de probleme de retenue, 
                        // la difference est immediate
                        ageM <- moisC  - naissM
                        ageA <- anneeC - naissA
                }
                sinon {
                        // on s'occupe de la retenue
                        ageM <- moisC  - naissM + 12
                        ageA <- anneeC - naissA - 1
                }
                fin si

                // on affiche alors le resultat
                afficher ``votre age est de '' ageA ``ans et de'' ageM ``mois''

      Fin Annee

\end{verbatim}


\begin{verbatim}
#include <iostream.h>

int main(){

  int moisC,anneeC,naissA,naissM;  // les entrees du programme
  int ageA, ageM;                  // le resultat
  
  // on demande d'entrer les donnees
  cout << "quel est le numero du mois courant ? ";
  cin  >> moisC;

  cout << "\n quelle est l'annee courante ? \n";
  cin  >> anneeC;

  cout << " \n quel est le numero de votre mois de naissance ? \n";
  cin  >> naissM;

  cout << "\n Et l'annee ? \n";
  cin  >> naissA;

     // Le calcul de l'age pose eventuellement 
     // un probleme de retenue
  
  if (moisC >= naissM) {  // ici pas de probleme de retenue, 
                          // la difference est immediate
    ageM  = moisC  - naissM;
    ageA  = anneeC - naissA;
  }
  else {                // on s'occupe de la retenue
    ageM  = moisC  - naissM + 12;
    ageA  = anneeC - naissA - 1;
  }

  // on affiche alors le resultat
  cout << " votre age est de "<< ageA <<" ans et de " << ageM <<" mois \n";

}


\end{verbatim}}


\end{enumerate}




\end{document}
