<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML>   <HEAD>     <TITLE>Pr&eacute;sentation du langage Ada</TITLE>     <META NAME="GENERATOR" CONTENT="emacs">     <META NAME="CREATED" CONTENT="20000409;19000900">     <META NAME="CHANGEDBY" CONTENT="Alain RIFFART">     <META NAME="CHANGED" CONTENT="20000409;19002100">   </HEAD>   <A NAME="hpada01"></A>   <BODY TEXT="#000000" BGCOLOR="#f9f0c0">          <TABLE BORDER="4" ALIGN="center" BGCOLOR="#efc86e"  CELLPADING="2" CELLSPACING="2">       <TR ALIGN="CENTER" VALIGN="middle">      	<TD BGCOLOR="#62e1f7"> 	  <TABLE> 	    <TR> 	      <TD><a href="../linux/gnulux01.html"> 		  <IMG SRC="../images/mintux.jpg" alt="Premiers pas sur la plante Linux" BORDER="0"></a> 	      </TD> 	    </TR> 	    <TR> 	      <TD> <a href="../envprog/envprog01.html"> 		  <IMG SRC="../images/outils.jpg" alt="L'environnement de programmation" BORDER="0"></a> 	      </TD> 	    </TR> 	    <TR> 	      <TD><a href="../ncurses/ncurses01.html"> 		  <IMG SRC="../images/moniteur.jpg" ALT="La bibliothque ncurses" BORDER="0"></a> 	      </TD> 	    </TR> 	  </TABLE> 	</TD> 	<TD> 	  <TABLE> 	    <TR > 	      <TD ALIGN="RIGHT"> 		<B><FONT SIZE="7"><FONT COLOR="#2020ff"> 		      Ada 		    </FONT></B>	 	      </TD> 	    </TR> 	    <TR > 	      <TD  ALIGN="CENTER"> 		<B><FONT SIZE="7"><FONT COLOR="#2020ff"> 		      en	 		    </FONT></FONT></B>	 	      </TD> 	    </TR> 	    <TR> 	      <TD ALIGN="LEFT"> 		<B><FONT SIZE="7"><FONT COLOR="#2020ff"> 		      D&eacute;buter	 		    </FONT></FONT></B>	 	      </TD> 	    </TR> 	  </TABLE> 	</TD> 	<TD> 	    <a href="../sommaire.html#resuindex"> 	      <IMG SRC="../images/sommaire.gif" alt="Sommaire" BORDER="0"></a> 	    <a href="./ada02.html"> 	      <IMG SRC="../images/postpage.gif" ALT="Page suivante" BORDER="0"></a> 	    <BR><BR> 	    <A href="../clinux/clinux01.html"> 	      <IMG SRC="../images/gnugcc.jpg" ALT="Le gnou logo du GNU" BORDER="0"></A> 	     	</TD>	 	<TD BGCOLOR="#62e1f7"> 	  <TABLE> 	    <TR> 	      <TD><a href="../clinux/clinux01.html"> 		  <IMG SRC="../images/gnunu.jpeg" alt="D&eacute;buter en C avec ncurses" BORDER="0"></A> 	      </TD> 	    </TR> 	    <TR> 	      <TD><a href="../pgrsup/pgrsup01.html"> 		  <IMG SRC="../images/yeux.jpg" ALT="Programmation avance" BORDER="0"></a> 	      </TD> 	    </TR> 	    <TR> 	      <TD><a href="../pgrobj/pgrobj01.html"> 		  <IMG SRC="../images/gnu.jpeg" ALT="Programmation objet" BORDER="0"></a> 	      </TD>	 	    </TR> 	  </TABLE> 	</TD>       </TR>     </TABLE>          <HR SIZE=3 NOSHADE>          <TABLE BORDER="0" ALIGN="LEFT" BGCOLOR="#f9f0c0" CELLPADDING=3 CELLSPACING=2 >       <TR> 	<TD ALIGN="CENTER" VALIGN="MIDDLE"> 	  <IMG SRC="../images/minada.jpg" alt="Programmation Ada" BORDER="0"> 	</TD>       </TR>     </TABLE>     <NOBR>       <TABLE BORDER="0" ALIGN="RIGHT" BGCOLOR="#f9f0c0" CELLPADDING=3 CELLSPACING=2 > 	<TR>		 	  <TD> 	    <IMG SRC="../images/minada.jpg" alt="Prorammation Ada" BORDER="0"> 	  </TD> 	</TR>       </TABLE>       <BR>       <TABLE BORDER="0" ALIGN="CENTER" BGCOLOR="#248910" CELLPADDING=3 CELLSPACING=2 > 	<TR> 	  <TD ALIGN="CENTER"> 	    <B><FONT SIZE=6><FONT COLOR="#f9f0c0"> 		  PR&Eacute;SENTATION DU LANGAGE ADA 		</FONT></FONT></B> 	  </TD> 	</TR>       </TABLE>       <BR>       <HR SIZE=2 WIDTH="70%" NOSHADE>       <BR><BR>     </NOBR>                 <H4 STYLE="margin-left: 5%; margin-right: 5%; margin-top: 0cm;  	text-align: justify"> 	Dans cette premire page d'approche du langage Ada, je ne proposerai  	pas l'criture d'un programme, mais un historique du langage Ada,  	l'objectif et les mthodes du prsent apprentissage. J'ajouterai qu'en  	matire de cours complet sur le langage Ada 95, il existe une ouvrage  	de rfrence &nbsp;: 	<BR><BR>       <CENTER> 	Programmer en Ada 95 de John Barnes aux ditions ADDISON WESLEY       </CENTER>       <BR><BR>     </H4>       <DL> 	<DL> 	  <TABLE CELLPADDING=2 CELLSPACING=2 BGCOLOR="#efc86e"> 	    <TR> 	      <TD> 		<P><A NAME="plada01"><B>Langage et mthode</B></A> 		</P> 	      </TD> 	      <TD> 		<CENTER> 		  <a href="#bpada01"> 		    <IMG SRC="../images/redo.jpg" ALT="Bas de page" BORDER="0"></a> 		</CENTER> 	      </TD> 	      <TD> 		<CENTER> 		  <a href="../sommaire.html#resuindex"><IMG SRC="../images/undo.jpg"  ALT="Sommaire" BORDER="0" ></a> 		</CENTER> 	      </TD> 	      <TD> 		<CENTER> 		  <a href="#plada01"><IMG SRC="../images/info.jpg"  ALT="Plan de la page" BORDER="0" ></a> 		</CENTER> 	      </TD> 	    </TR> 	  </TABLE> 	</DL>       </DL>      <!--Tableau de prsentation du plan de la page-->        <BLOCKQUOTE STYLE="margin-left: 5%; margin-right: 5%; text-align: center">&nbsp;&nbsp;&nbsp;&nbsp; 	<TABLE BORDER="4" ALIGN="center"  CELLPADDING=3 CELLSPACING=2 WIDTH="60%"> 	  <TR> 	    <TD BGCOLOR="#248910" COLSPAN="2"> 	      <FONT COLOR="f9f0c0"> 		Hommage  une grande dame de l'histoire de l'informatique, Ada  		Augusta Byron comtesse de Lovelace et prsentation du projet  		qui sera le prtexte des apprentissages du langage Ada. Mais  		auparavant ... avertissement. 	      </FONT> 	    </TD> 	  </TR> 	  <TR> 	    <TD BGCOLOR="#efc86e"> 	      <ul> 		<li> 		  <A HREF="#ada011"> 		    Avertissement et mthode 		  </A> 		</li> 		<li> 		  <A HREF="#ada012"> 		    Ada Augusta Byron 		  </A> 		</li> 		<li> 		  <A HREF="#ada013"> 		    Bref historique du langage Ada, 		  </A> 		</li> 		<li> 		  <A HREF="#ada014"> 		    Le projet : un master mind, 		  </A> 		</li> 		<li> 		  <A HREF="#ada015"> 		    Les diffrentes tapes de l'apprentissage, 		  </A> 		</li> 		<li> 		  <A HREF="#ada016"> 		    A propos des fichiers sources. 		  </A> 		</li> 	      </ul> 	    </TD> 	    <TD BGCOLOR="#248910"> 	      <FONT COLOR="f9f0c0"> 		<IMG SRC="../images/antepage.gif" alt="Page prcdente" BORDER="0"></a> 		Cliquez sur une des rubriques de la cellule ci-contre.<BR> 		Puis naviguez dans la page en utilisant 		<IMG SRC="../images/redo.jpg" ALT="Bas de page" BORDER="0"> 		<IMG SRC="../images/undo.jpg"  ALT="Sommaire" BORDER="0"> 		<IMG SRC="../images/info.jpg"  ALT="Plan de la page" BORDER="0" >	 	      </FONT> 	    </TD> 	  </TR> 	</TABLE>       </BLOCKQUOTE>        <DL>       <DL>       <TABLE CELLPADDING=2 CELLSPACING=2 BGCOLOR="#efc86e"> 	<TR> 	  <TD> 	    <P> 	      <A NAME="ada011"><B>Avertissement et mthode</B></A> 	    </P> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada012"> 		<IMG SRC="../images/redo.jpg" ALT="Suivant" BORDER="0"></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#hpada01"> 		<IMG SRC="../images/undo.jpg"  ALT="Haut de page" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#plada01"><IMG SRC="../images/info.jpg"  ALT="Plan de la page" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	</TR>       </TABLE>     </DL>     </DL>              <BLOCKQUOTE STYLE="margin-left: 5%; margin-right: 5%; text-align: justify">&nbsp;&nbsp;&nbsp;&nbsp; 	<TABLE BORDER="4" ALIGN="center" BGCOLOR="#248910" CELLPADDING=3 CELLSPACING=2 WIDTH="85%"> 	  <TR> 	    <TD> 	      <FONT COLOR="f9f0c0"> 		<B><CENTER>AVERTISSEMENT</CENTER></B> 	      <BR><BR> 	      Ce site n'est pas un cours systmatique sur le langage Ada. Il 	      s'adresse  des personnes qui veulent apprendre, en partant de  	      la pratique, c'est  dire de petits problmes rsolus en langage  	      Ada. Le point de dpart de toutes les informations sur le langage 	      est donc des programmes d'exemples qui sont, pour moi, l'occasion 	      d'aborder telle ou telle notion. 	      <BR><BR> 	      L'inconvnient majeur de cette mthode est qu'elle ne permet  	      pas une prsentation complte du point prsent. Si, par  	      exemple, sur un programme que je juge adquat, je prsente le  	      type <B>article</B>, je proposerai d'abord un approche  	      lmentaire de cette notion. Je reviendrai peut-tre, par la  	      suite, sur ce type. 	      <BR><BR> 	      <B> 	      <CENTER> 		Consquence de cette approche&nbsp;:&nbsp;la  		dispersion invitable de l'information. 		<BR><BR> 	      </CENTER> 	    </B> 	      Pour pallier cette insuffisance, je me propose de rassembler  	      dans un index par sujet, la rfrence aux diffrentes pages du  	      site. Cet index sera mis en place ds que mon temps libre me le  	      permettra. 	    </FONT> 	    </TD> 	  </TR> 	</TABLE> 	<BR><BR>       </BLOCKQUOTE>              <DL>       <DL>       <TABLE CELLPADDING=2 CELLSPACING=2 BGCOLOR="#efc86e"> 	<TR> 	  <TD> 	    <P> 	      <A NAME="ada012"><B>Ada Augusta Byron</B></A> 	    </P> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada013"> 		<IMG SRC="../images/redo.jpg" ALT="Suivant" BORDER="0"></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada011"> 		<IMG SRC="../images/undo.jpg"  ALT="Prcdent" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#plada01"><IMG SRC="../images/info.jpg"  ALT="Plan de la page" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	</TR>       </TABLE>     </DL>     </DL>              <BLOCKQUOTE STYLE="margin-left: 5%; margin-right: 5%; text-align: justify">&nbsp;&nbsp;&nbsp;&nbsp; 	Fille du clbre pote, Lord Byron, Ada Augusta Byron (1815-1857) eut  	une vie brve et prodigieusement bien remplie par une passion : les  	sciences. Ds l'ge de 18 ans elle rencontra Charles Babbage qui  	cherchait  mettre au point un calculateur universel. Babbage avait  	trac les plans d'une machine, alimente par des cartes perfores qui 	constituaient des programmes, qui devait permettre de raliser de  	nombreux calculs. Ada Byron se passionna pour cette machine analytique 	et ralisa les cartes perfores qui taient les premiers programmes de 	l'histoire humaine. C'est en son honneur que le langage informatique, 	sujet des prsentes pages, fut appel Ada. 	<BR><BR> 	Sur ce sujet, je vous conseille vivement de consulter le site : 	<BR><BR> 	<PRE> http://www.centredoc.ch/ssc/articlesPDF/CSEMAutomates.PDF 	</PRE> 	Vous pourrez y charger un article au format .PDF qui fait le point sur  	les automates et y montre le rle qu'ont jou Charles Babbage et Ada  	Augusta Byron dans l'histoire de leur volution jusqu' nos modernes 	ordinateurs.       </BLOCKQUOTE>            <DL>       <DL>       <TABLE CELLPADDING=2 CELLSPACING=2 BGCOLOR="#efc86e"> 	<TR> 	  <TD> 	    <P> 	      <A NAME="ada013"><B>Bref historique du langage Ada</B></A> 	    </P> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada014"> 		<IMG SRC="../images/redo.jpg" ALT="Suivant" BORDER="0"></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada012"> 		<IMG SRC="../images/undo.jpg"  ALT="Prcdent" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#plada01"><IMG SRC="../images/info.jpg"  ALT="Plan de la page" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	</TR>       </TABLE>     </DL>     </DL>              <BLOCKQUOTE STYLE="margin-left: 5%; margin-right: 5%; text-align: justify">&nbsp;&nbsp;&nbsp;&nbsp; 	L'histoire du langage Ada remonte aux annes 70, 1974 exactement. Le  	dpartement de la Dfense des Etats-Unis prend alors conscience qu'il 	dpensait des sommes excessives en maintenance pour les applications 	destines  des systmes embarqus. Rappelons que dans un systme  	embarqu, le systme informatique est intgr  une machine (missile, 	automobile, lave-linge ...). 	<BR><BR> 	Ce Dpartement de la Dfense lance un appel  dveloppement d'un cahier 	des charges qui permette de dfinir un langage robuste, fiable. C'est 	une quipe de CII Honeywell Bull, en France, place sous la direction  	de Jean D. Ichboah qui produira le cahier des charges final. Ainsi  	pourra-t-on publier en 1983, le standard ANSI pour Ada dans le MR83 (le 	Manuel de Rfrence pour Ada 83). 	<BR><BR> 	En informatique les volutions vont trs vite et ds 1988 le projet 	Ada9X est lanc. Un document trs prcis est publi en 1990, Ada9X 	requirements qui dfinit 41 exigences spcifiques et 22 sujets d'tude. 	Le standard d'Ada ainsi rvis fut publi le 15 fvrier 1995 et Ada9X  	a pris comme nom Ada95.       </BLOCKQUOTE>            <DL>       <DL>       <TABLE CELLPADDING=2 CELLSPACING=2 BGCOLOR="#efc86e"> 	<TR> 	  <TD> 	    <P> 	      <A NAME="ada014"><B>Le projet : un master mind</B></A> 	    </P> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada015"> 		<IMG SRC="../images/redo.jpg" ALT="Suivant" BORDER="0"></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada013"> 		<IMG SRC="../images/undo.jpg"  ALT="Prcdent" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#plada01"><IMG SRC="../images/info.jpg"  ALT="Plan de la page" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	</TR>       </TABLE>     </DL>     </DL>              <BLOCKQUOTE STYLE="margin-left: 5%; margin-right: 5%; text-align: justify">&nbsp;&nbsp;&nbsp;&nbsp; 	Dans le cadre de l'apprentissage progressif de l'utilisation du langage 	Ada, je vous propose un objectif final : crer un jeu Master Mind en  	mode console. Ce projet n'a rien de trs original mais il me permettra  	d'aborder progressivement de nombreux aspects de la programmation. De  	plus, comme je ne suis li dans cette partie de mon site  aucun autre  	site, j'aborderai les apprentissages d'une manire diffrente de celle  	que j'ai pu mettre en oeuvre dans la partie consacre au langage C. 	<BR><BR> 	Voici donc le cahier des charges du projet final que nous chercherons  	mettre en oeuvre. 	<ol> 	  <li>Initialisation du jeu 	    <BR><BR> 	    L'ordinateur tire au sort une range de 5 plots de couleur. Les  	    plots sont choisis parmi 9 couleurs. Le tirage ainsi ralis reste 	    secret. Le joueur doit alors essayer de retrouver la couleur et la 	    place de chaque pion. 	    <BR><BR> 	    Les couleurs, notes dans un premier temps par leur nom, en lettres 	    majuscules, seront les suivantes&nbsp;: 	    <PRE> BLEU, VERT, ORANGE, ROSE, ROUGE, JAUNE, MAGENTA, CYAN, NOIR. 	    </PRE> 	  </li> 	  <li>Rgle du jeu classique 	    <BR><BR> 	    Le tirage au sort des couleurs peut faire qu'une mme couleur peut 	    figurer plusieurs fois dans la range de plots de couleur. Pour  	    essayer de dcouvrir la solution, le joueur propose  chaque coup  	    une combinaison correspondant  une range de 5 plots. Les ranges  	    de plots proposes comme solution resteront affiches pendant  	    toute la dure d'une partie.  	    <BR><BR> 	    Pour chaque proposition de solution du joueur, l'ordinateur  	    affichera sur une mme ligne, la combinaison des plots propose  	    par le joueur et le rsultat de l'analyse de cette proposition qui 	    se prsentera ainsi&nbsp;: 	    <BR><BR> 	    <ul> 	      <li>Une colonne avec comme tiquette Places 		<BR><BR> 		On affichera dans cette colonne le nombre de couleurs bien  		places. 		<BR><BR> 	      </li> 	      <li>Une colonne avec comme tiquette Couleurs 		<BR><BR> 		On affichera dans cette colonne le nombre de couleurs exactes, 		en excluant les couleurs dj bien places. 		<BR><BR> 	      </li> 	      <li>A droite de ces deux colonnes, 5 colonnes tiquetes 		<BR><BR> 		<PRE> PLOT1  PLOT2  PLOT3  PLOT4  PLOT5 		</PRE> 		Sous chacun de ces plots seront inscrites les propositions de 		solution du joueur. 		<BR><BR> 	      </li> 	      <li>Une zone de choix des couleurs 		<BR><BR> 		L'cran sera spar horizontalement en trois parties. La partie 		suprieure servira  afficher l'tat du jeu en cours  		conformment aux conventions ci dessus.  		<BR><BR> 		La partie mdiane servira de zone de slection des couleurs.  		Afin d'viter des erreurs de saisie dans le choix des couleurs  		par le joueur, le joueur choisira les couleurs dans un menu  		slectionn par les flches gauche ou droite, ou par les  		touches de fonctions F1  F9. La couleur slectionne sera  		place en inversion vido. La slection sera valide par  		l'appui sur la touche Entre. 		<BR><BR> 		Enfin la partie infrieure sera rserve  la communication  		avec le joueur. 		<BR><BR> 	      </li> 	      <li>Exemples comments de copies d'cran du jeu 		<BR><BR> 		Voici donc tout d'abord le jeu tel qu'il se prsente au  		lancement du programme que j'ai potiquement appel mm. 		<BR><BR> 		<CENTER> 		  <IMG SRC="./images/mm01.png" ALT="Au commencement : l'espoir"> 		  </IMG> 		</CENTER> 		<BR><BR> 		Vous remarquerez le partage de l'cran en trois zones. Dans  		ce terminal xterm, l'affichage en gras est associ  la couleur 		bleu. 		<BR><BR><BR> 		<CENTER> 		  <IMG SRC="./images/mm02.png" ALT="Pendant : la crainte"> 		  </IMG> 		</CENTER> 		<BR><BR> 		Voici maintenant le jeu en cours de partie. Le joueur a dj  		propos deux solutions qui ont t analyses par le programme. 		Le rsultat de ces deux premiers coups jous sont affichs dans 		la partie gauche de l'cran. La premire proposition du joueur 		contenait une couleur bien place et une utilise mais mal  		place. La deuxime proposition contenait une couleur bien  		place et trois	bonnes mais mal places. 		<BR><BR> 		Le joueur est en train de jouer son troisime coup. Il a dj  		slectionn 3 couleurs (JAUNE, BLEU, MAGENTA) qui ont t  		places sous les 3 premiers plots par le programme. La couleur 		NOIR est slectionne, mais non valide. Dans l'tat actuel des 		choses, si le joueur appuie sur la touche Entre, la couleur  		NOIR sera place par le programme sous le Plot4. 		<BR><BR><BR> 		<CENTER> 		  <IMG SRC="./images/mm03.png" ALT="Pendant : la crainte"> 		  </IMG> 		</CENTER> 		<BR><BR> 		Le jeu se termine. Le joueur a fait dix propositions sans  		trouver la solution. Le programme affiche le message vous avez  		perdu et affiche la solution.  		<BR><BR> 	      </li> 	    </ul> 	  </li> 	  <li>Fin du jeu 	    <BR><BR> 	    La partie se termine&nbsp;: 	    <PRE> Soit, lorsque le joueur a fait 10 propositions fausses. Soit lorsque le joueur a trouv la bonne combinaison des pions de couleur. 	    </PRE> 	  </li> 	  <li>Scores 	    <BR><BR> 	    Chaque hypothse de solution fausse propose par le joueur,  	    comptera un point. Le meilleur score sera donc le nombre le plus  	    petit. On conservera dans un fichier, le prnom et le score ralis 	    par les dix meilleurs joueurs. 	    <BR><BR> 	  </li> 	  <li>Niveau de difficult 	    <BR><BR> 	    <ul> 	      <li>Niveau normal 		<BR><BR> 		Il correspond  l'application des rgles que nous venons de  		dfinir. 		<BR><BR> 	      </li> 	      <li>Niveau difficile 		<BR><BR> 		L'ordinateur peut tirer au sort une position vide. Dans ce cas 		l, il faudra retrouver les pions  la bonne place parmi dix 		possibilits. 		<BR><BR> 	      </li> 	      <li>Niveau facile 		<BR><BR> 		L'ordinateur positionne dans son affichage les bonnes rponses. 		Par exemple si en position 3 et 4 le joueur a propos le  		couleurs en bonne place alors, on affichera sous la colonne  		Places, le nombre de bonnes couleusr et entre parenthses,  		spars par une virgule, les bons emplacements. Dans notre 		exemple nous aurions l'affichage suivant&nbsp;: 		<BR><BR> 		<PRE> Places 2(3,4) 		</PRE> 		Nota bene&nbsp;: 		<PRE> Dans ce cas l il faudra prvoir 3 fichiers des scores associs  chaque niveau de jeu  Et videmment un menu permettant de saisir le choix du niveau. 		</PRE> 	      </li> 	    </ul> 	     	</ol>        </BLOCKQUOTE>            <DL>       <DL>       <TABLE CELLPADDING=2 CELLSPACING=2 BGCOLOR="#efc86e"> 	<TR> 	  <TD> 	    <P> 	      <A NAME="ada015"><B>Les diffrentes tapes de l'apprentissage</B></A> 	    </P> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada016"> 		<IMG SRC="../images/redo.jpg" ALT="Suivant" BORDER="0"></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada014"> 		<IMG SRC="../images/undo.jpg"  ALT="Prcdent" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#plada01"><IMG SRC="../images/info.jpg"  ALT="Plan de la page" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	</TR>       </TABLE>     </DL>     </DL>              <BLOCKQUOTE STYLE="margin-left: 5%; margin-right: 5%; text-align: justify">&nbsp;&nbsp;&nbsp;&nbsp; 	Dans un premier temps nous ne chercherons  raliser qu'un seul niveau  	de difficult&nbsp;:&nbsp;le jeu normal. Pour cela nous procderons de  	manire progressive. Nous consacrerons&nbsp;: 	<BR><BR> 	<PRE> Plusieurs leons aux apprentissages de l'affichage,  Plusieurs leons aux aprentissages de la saisie,  Deux leons au problme du tirage au sort,  Trois leons  la gestion des fichiers. 	</PRE> 	Ensuite seulement, nous nous occuperons des diffrents niveaux de jeu  	et de la ralisation d'une documentation et d'une aide au joueur.       </BLOCKQUOTE>            <DL>       <DL>       <TABLE CELLPADDING=2 CELLSPACING=2 BGCOLOR="#efc86e"> 	<TR> 	  <TD> 	    <P> 	      <A NAME="ada016"><B>A propos des fichiers sources</B></A> 	    </P> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada017"> 		<IMG SRC="../images/redo.jpg" ALT="Suivant" BORDER="0"></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada015"> 		<IMG SRC="../images/undo.jpg"  ALT="Prcdent" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#plada01"><IMG SRC="../images/info.jpg"  ALT="Plan de la page" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	</TR>       </TABLE>     </DL>     </DL>        <BLOCKQUOTE STYLE="margin-left: 5%; margin-right: 5%; text-align: justify">&nbsp;&nbsp;&nbsp;&nbsp; 	Dans l'apprentissage du C, sur ce mme site, j'ai souvent fini par  	publier tout ou partie des programmes que je vous demandais de  	raliser. Mais je l'ai fait de manire volontairement dcale. Un jeune 	correspondant me faisait remarquer qu'il aurait aim avoir les sources 	des programmes pour les tester et apprendre grce aux  modifications 	apportes au programme d'origine. J'ai mis en avant des arguments  	pdagogiques tournant autour de la mise en oeuvre d'une solution  	personnelle. 	<BR><BR> 	Mais d'une part, cela ne correspond pas  la philosophie que je dfends 	des logiciels libres (livrer les sources du programme), d'autre part, 	je ne suis pas sr, que mme sur le plan purement pdagogique, il n'ait 	pas raison. Ceux que cela intresse touveront donc  	<BR><BR> 	<A HREF="adasrc01.html"> 	  ici les sources affiches dans une page du site, 	</A> 	<BR><BR> 	<A HREF="http://perso.club-internet.fr/ariffart/archives/mmada.zip"> 	  et l l'ensemble des sources  du projet Master Mind en .zip  	</A> 	<BR><BR> 	<A HREF="http://perso.club-internet.fr/ariffart/archives/mmada.tar.gz"> 	  et en .tar.gz. 	</A> 	<BR><BR> 	Ces sources correspondent au premier tat du programme  raliser,  	c'est  dire avec un seul niveau de jeu, sans documentation ni aide.       </BLOCKQUOTE>             <DL>       <DL>       <TABLE CELLPADDING=2 CELLSPACING=2 BGCOLOR="#efc86e"> 	<TR> 	  <TD> 	    <P> 	      <A NAME="ada017"><B>Vue sur la prochaine tape</B></A> 	    </P> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#bpada01"> 		<IMG SRC="../images/redo.jpg" ALT="Suivant" BORDER="0"></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#ada016"> 		<IMG SRC="../images/undo.jpg"  ALT="Prcdent" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	  <TD> 	    <CENTER> 	      <a href="#plada01"><IMG SRC="../images/info.jpg"  ALT="Plan de la page" BORDER="0" ></a> 	    </CENTER> 	  </TD> 	</TR>       </TABLE>     </DL>     </DL>              <BLOCKQUOTE STYLE="margin-left: 5%; margin-right: 5%; text-align: justify">&nbsp;&nbsp;&nbsp;&nbsp; 	L'tape suivante est vidente. Il s'agit de la leon 1, celle qui  	prsente l'criture d'un programme minimum et surtout la structure d'un 	programme Ada et les notions de base indispensables.       </BLOCKQUOTE>            <TABLE BORDER="4" ALIGN="center" BGCOLOR="#efc86e" CELLPADDING=3 CELLSPACING=2 >       <TR> 	<TD> 	  Le compilateur gcc ou g++ que vous utilisez  sont des produits du  	  projet GNU. 	  <BR><BR> 	  Ils sont placs sous la licence GPL de la FSF. Ces programmes doivent 	  tre livrs avec leur code. 	  <BR><BR> 	  Nul ne peut se les approprier. Les auteurs en restent propritaires. 	  <BR> 	</TD>       </TR>     </TABLE>       <A NAME="bpada01"></A>     <HR SIZE=3 NOSHADE>          <BLOCKQUOTE STYLE="margin-left: 5%; margin-right: 5%;  text-align: center">       <A HREF="../sommaire.html#resuindex">&lt;Sommaire&gt;</A>       <A HREF="#hpada01">&lt;Haut de page&gt;</A>       <A HREF="./ada02.html">&lt;Page suivante&gt;</A>     </BLOCKQUOTE>   </BODY> </HTML> <!-- DEBUT / Cybermonitor / START --> <script language="javascript"><!-- CM_RUBRIQUE = "edit_PagesPersos_abonnes"; CM_CLIENT = "clubv3"; CM_SECTION1 = "PagesPersos"; // --></script> <script language="javascript" src="http://js.cybermonitor.com/clubv3.js"> </script> <noscript> <img src="http://stat3.cybermonitor.com/clubv3_v?R=edit_PagesPersos_abonnes&S=total;PagesPersos"> </noscript> <!-- FIN / Cybermonitor / END --> 
