ptite maj

This commit is contained in:
Mstrdav 2021-09-01 19:35:09 +02:00
parent 3eb69bd4e4
commit 4effbb0e28
4 changed files with 724 additions and 83 deletions

View file

@ -1,48 +1,408 @@
<!DOCTYPE html>
<!-- Page generated by OCaml with Ocsigen.
See http://ocsigen.org/ and http://caml.inria.fr/ for information -->
<html class="ada1" lang="fr" id="h" xmlns="http://www.w3.org/1999/xhtml"><head><title>TP Ada S1 - premier semestre</title><meta content="text/html; charset=utf-8" http-equiv="content-type"/><link media="all" href="../ystyle.css" rel="stylesheet"/><script src="../Scripts/yfold.js"></script></head><body><div class="header" id="header"><h1 id="title">TP Ada S1 - premier semestre</h1></div><main><section class="yfold"><h2 class="yfold-title" onclick="toggleYfold('88fca160')"><span class="arrow" id="arrow-88fca160">&#x25b8;</span>Sujets des séances de TP</h2><div class="yfold-content" id="content-88fca160" data-yfold-default="hide"><section class="yfold"><h4 class="yfold-title" onclick="toggleYfold('076fa9ca')"><span class="arrow" id="arrow-076fa9ca">&#x25b8;</span>Configuration</h4><div class="yfold-content" id="content-076fa9ca" data-yfold-default="show"><div class="warning">À effectuer obligatoirement une fois en début d'année.</div><p>Nous allons configurer une fois pour toutes l'installation <span class="file">emacs/Ada</span> de votre compte personnel. Pour cela, effectuer les opérations suivantes avant de commencer le premier TP (vous n'aurez pas à le refaire aux TPs suivants).</p><ul class="steps"><li>Trouvez le dossier <span class="menu">COMMETUD</span> : il devrait y avoir un lien sur votre bureau.</li><li>Allez dans <span class="menu">Commetud</span>, <span class="menu">1ere Année</span>, <span class="menu">Ada</span>, puis <span class="menu">Setup</span>. </li><li>Lancer le programme <span class="menu">setup-exe</span> en cliquant dessus.</li><li>Répondez aux questions et attendez le message indiquant que l'installation s'est bien passée.En cas de doute, demandez à vos voisins ou à l'encadrant.</li></ul></div><script>
//<![CDATA[
initYfold('076fa9ca') ;
//]]>
</script></section><section class="yfold"><h4 class="yfold-title" onclick="toggleYfold('6dffd0aa')"><span class="arrow" id="arrow-6dffd0aa">&#x25b8;</span>Les sujets</h4><div class="yfold-content" id="content-6dffd0aa" data-yfold-default="hide"><aside class="answers"><h4>Réponses</h4><ul><li>Mission 1, partie 1 : <a class="file caml_c" href="Corriges/thzq/mission0.adb.html" data-eliom-c-onclick="thNb1mN8ffFH">mission0.adb</a></li><li>Mission 1, partie 2 : <a class="file caml_c" href="Corriges/enwx/mission1.adb.html" data-eliom-c-onclick="xnRLjRnEKHk4">mission1.adb</a></li><li>Mission 2 :<ul><li><a class="file caml_c" href="Corriges/ygie/mission2a.adb.html" data-eliom-c-onclick="jGaxvF2slPJk">mission2a.adb</a></li><li><a class="file caml_c" href="Corriges/rgvi/mission2b.adb.html" data-eliom-c-onclick="CtA8/EwTiNdR">mission2b.adb</a></li><li><a class="file caml_c" href="Corriges/xejr/mission2c.adb.html" data-eliom-c-onclick="6MEHYZuAFrtb">mission2c.adb</a></li></ul></li><li>Mission 3 : <a class="file caml_c" href="Corriges/nact/mission3.adb.html" data-eliom-c-onclick="StBgDTNsI5S4">mission3.adb</a></li><li>Pas de corrigé pour la mission 4.</li></ul></aside>Vous avez cinq séances de TP pour effectuer les missions suivantes :<ul class="lessons"><li><a class="caml_c" href="tp-contexte.html" data-eliom-c-onclick="vrJWaLxVKcOT"><span class="lbutton">Contexte</span>Contexte de l'ensemble des TPs</a>. </li><li><a class="caml_c" href="tp-m1.html" data-eliom-c-onclick="vT0WSKW9QLtn"><span class="lbutton">Mission 1</span> Premiers tests.</a>. </li><li><a class="caml_c" href="tp-m2.html" data-eliom-c-onclick="J7d2RIf2fn+9"><span class="lbutton">Mission 2</span> Le vol de démonstration.</a>. </li><li><a class="caml_c" href="tp-m3.html" data-eliom-c-onclick="QQuOBvBbmoCl"><span class="lbutton">Mission 3</span> Visite d'aéroports européens</a>. </li><li><a class="caml_c" href="tp-m4.html" data-eliom-c-onclick="5zIWBHwwDzcw"><span class="lbutton">Mission 4</span> Le voyage interactif</a>. </li></ul></div><script>
//<![CDATA[
initYfold('6dffd0aa') ;
//]]>
</script></section><section class="yfold"><h4 class="yfold-title" onclick="toggleYfold('de67d706')"><span class="arrow" id="arrow-de67d706">&#x25b8;</span>Acteurs utilisés</h4><div class="yfold-content" id="content-de67d706" data-yfold-default="hide">Acteurs utilisés au premier semestre :<ul class="file-list"><li><a class="file caml_c" href="acteur-gada/gada-text_io.ads.html" data-eliom-c-onclick="tF0Q5Rwgm4/e">GAda.Text_IO</a></li></ul><section class="yfold sober"><h3 class="yfold-title" onclick="toggleYfold('85ee92be')"><span class="arrow" id="arrow-85ee92be">&#x25b8;</span>INSA-Air</h3><div class="yfold-content" id="content-85ee92be" data-yfold-default="show"><ul class="file-list"><li><a class="file caml_c" href="acteurs-insa-air/assert.ads.html" data-eliom-c-onclick="DlJ+boKmevcZ">assert.ads</a></li><li><a class="file caml_c" href="acteurs-insa-air/avion_sol.ads.html" data-eliom-c-onclick="WV+HwWzaZOSU">avion_sol.ads</a> &#8212; Contrôle de l'avion au sol</li><li><a class="file caml_c" href="acteurs-insa-air/carburant.ads.html" data-eliom-c-onclick="CjPbI8hdftNo">carburant.ads</a></li><li><a class="file caml_c" href="acteurs-insa-air/cartographie.ads.html" data-eliom-c-onclick="L4SQyiqz52Zk">cartographie.ads</a> &#8212; Accès aux informations de la carte</li><li><a class="file caml_c" href="acteurs-insa-air/insa_air.ads.html" data-eliom-c-onclick="hIcro6SLnsM2">insa_air.ads</a> &#8212; Contrôle de l'avion en vol</li><li><a class="file caml_c" href="acteurs-insa-air/pilote_automatique.ads.html" data-eliom-c-onclick="scWF37X8Bcfb">pilote_automatique.ads</a> &#8212; Commande le décollage ou l'atterrissage</li><li><a class="file caml_c" href="acteurs-insa-air/simulation.ads.html" data-eliom-c-onclick="T15Ywafn1t9W">simulation.ads</a> &#8212; Contrôle de l'avion au sol en mode SIMULATION</li><li><a class="file caml_c" href="acteurs-insa-air/tour.ads.html" data-eliom-c-onclick="jZsPJFf+QeoT">tour.ads</a> &#8212; Communication avec la tour de contrôle</li><li><a class="file caml_c" href="acteurs-insa-air/train.ads.html" data-eliom-c-onclick="FATrOUjzKAPa">train.ads</a> &#8212; Contrôle du train d'atterrissage</li></ul></div><script>
//<![CDATA[
initYfold('85ee92be') ;
//]]>
</script></section><br class="bbr"/>Tous les acteurs GAda <small class="pcom">(vous n'en avez pas besoin au premier semestre)</small><section class="yfold sober"><h3 class="yfold-title" onclick="toggleYfold('aee00906')"><span class="arrow" id="arrow-aee00906">&#x25b8;</span>GAda</h3><div class="yfold-content" id="content-aee00906" data-yfold-default="hide"><ul class="file-list"><li><a class="file caml_c" href="acteur-gada/dfloat.ads.html" data-eliom-c-onclick="jSoCamqGV/Du">dfloat.ads</a></li><li><a class="file caml_c" href="acteur-gada/gada-advanced_graphics.ads.html" data-eliom-c-onclick="U6l0NTu4ZVaC">gada-advanced_graphics.ads</a></li><li><a class="file caml_c" href="acteur-gada/gada-float_text_io.ads.html" data-eliom-c-onclick="z+EtM2H8ECge">gada-float_text_io.ads</a></li><li><a class="file caml_c" href="acteur-gada/gada-graphics.ads.html" data-eliom-c-onclick="TRy1ODMB37vv">gada-graphics.ads</a></li><li><a class="file caml_c" href="acteur-gada/gada-integer_text_io.ads.html" data-eliom-c-onclick="9s3PLk4Lze0c">gada-integer_text_io.ads</a></li><li><a class="file caml_c" href="acteur-gada/gada-plus.ads.html" data-eliom-c-onclick="I0blie9x+aDs">gada-plus.ads</a></li><li><a class="file caml_c" href="acteur-gada/gada-text_io.ads.html" data-eliom-c-onclick="3TQYqzFJAgsT">gada-text_io.ads</a></li><li><a class="file caml_c" href="acteur-gada/tortue.ads.html" data-eliom-c-onclick="thxexLzGMRPJ">tortue.ads</a></li></ul></div><script>
//<![CDATA[
initYfold('aee00906') ;
//]]>
</script></section></div><script>
//<![CDATA[
initYfold('de67d706') ;
//]]>
</script></section><section class="yfold"><h4 class="yfold-title" onclick="toggleYfold('9c9a879b')"><span class="arrow" id="arrow-9c9a879b">&#x25b8;</span>Problèmes techniques</h4><div class="yfold-content" id="content-9c9a879b" data-yfold-default="hide"><section><h4>Si emacs plante, voici la marche à suivre : </h4><ul class="steps"><li>Cacher la fenêtre emacs ayant planté (minimiser la fenêtre en cliquant sur le 'moins' en haut à droite).</li><li>Rouvrir le fichier <span class="file">mission1.adb</span><small class="pcom"> (par exemple)</small></li><li>Lorsque vous tentez de modifier le fichier, emacs se plaint de ne pas pouvoir l'éditer, <b>dans ce cas, appuyer sur la touche 's'</b> (comme <i>steal</i><small class="pcom"> ou comme <i> c'est moi le chef </i></small>).</li></ul></section><section><h4>Facultatif : si vous voulez aussi détruire la fenêtre emacs ayant planté</h4><ul class="steps"><li>Ouvrir un TERMINAL (à trouver dans le menu Système, ouvrir une console ou un terminal).</li><li>Dans le terminal, écrire : <code class="inline">xkill</code><small class="pcom"> (puis entrée)</small></li><li>Cliquer sur la fenêtre que vous voulez détruire (la fenêtre du emacs ayant planté).</li></ul></section></div><script>
//<![CDATA[
initYfold('9c9a879b') ;
//]]>
</script></section></div><script>
//<![CDATA[
initYfold('88fca160') ;
//]]>
</script></section><section class="yfold"><h2 class="yfold-title" onclick="toggleYfold('b7896e97')"><span class="arrow" id="arrow-b7896e97">&#x25b8;</span>Exercices complémentaires</h2><div class="yfold-content" id="content-b7896e97" data-yfold-default="hide">Tous ces exercices sont faisables sur <a target="_blank" href="https://tech.io/playgrounds/53242/programmation-ada-insa/espace-pour-tous-les-exercices">tech-io</a>. Vous devriez être capables d'effectuer les exercices suivants seuls :<ul class="exo-list"><li><a class="caml_c" href="exercices/appel-procedures.html" data-eliom-c-onclick="Fg4JcAN/UQYV">Base : appel de procédure et de fonction</a></li><li><a class="caml_c" href="exercices/divers.html" data-eliom-c-onclick="uQaMbBkz4D+0">Base : exercices divers</a></li></ul>Cet ensemble d'exercices correspond exactement au niveau attendu à l'examen :<ul class="exo-list"><li><a class="caml_c" href="exercices/algorigramme.html" data-eliom-c-onclick="Lv934KiGaoS4">Traduction d'algorigramme</a></li><li><a class="caml_c" href="exercices/record.html" data-eliom-c-onclick="ibnkFg+pnMWe">Passage d'arguments et type article</a></li><li><a class="caml_c" href="exercices/collection.html" data-eliom-c-onclick="lnd7R8M/AFBX">Exercices sur une collection de données</a></li><li><a class="caml_c" href="exercices/analyse-polynome.html" data-eliom-c-onclick="6jSx4qM2B2YM">Recherche d'extremum sur un polynôme</a></li><li><a class="caml_c" href="exercices/complet-s1.html" data-eliom-c-onclick="2zYOzFiNMPuj">Exercice sur TOUT<img class="nice-inline" style="width:187px;height:45px;" alt="Voiture" src="../Images/car0.png"/></a><small class="pcom"> (Sujet posé en 2017)</small></li></ul></div><script>
//<![CDATA[
initYfold('b7896e97') ;
//]]>
</script></section><section class="yfold"><h2 class="yfold-title" onclick="toggleYfold('7814051f')"><span class="arrow" id="arrow-7814051f">&#x25b8;</span>Compétences et évaluation</h2><div class="yfold-content" id="content-7814051f" data-yfold-default="hide"><section class="card"><h3>Compétences Algorithmiques du semestre 1</h3><p>Le domaine <i>UF Maths-Algo</i> est évaluée par compétences. Les compétences d'algo sont classées dans trois macro-compétences, de difficulté croissante :</p><h4><span class="difficulty"><img style="width:16px;height:16px;" alt="Star" src="../Images/etoile.png"/></span>Bases de programmation</h4><small class="pcom">(le minimum vital à acquérir)</small><ul class="resources"><li>Traduire une spécification de sous-programme (boîte) en une déclaration de procédure ou de fonction Ada.</li><li>Distinguer les structures de contrôle <code class="kw">while</code>, <code class="kw">if</code>, et <code class="kw">for</code>. </li><li>Dans une procédure ou fonction, savoir utiliser les arguments.</li><li>Écrire une procédure de test qui invoque une fonction, affiche ses arguments et son résultat.</li><li>Respecter les conventions de présentation (indentation, espacements, commentaires, nommage des variables).</li></ul><br class="bbr"/><h4><span class="difficulty"><img style="width:16px;height:16px;" alt="Star" src="../Images/etoile.png"/><img style="width:16px;height:16px;" alt="Star" src="../Images/etoile.png"/></span>Éléments d'algorithmique</h4><small class="pcom">(l'objet principal du cours)</small><ul class="resources"><li>Appliquer toutes les règles de construction d'un programme (<b>typage</b>). </li><li>Les programmes sont cohérents et compilent sans erreur.</li><li>Prévoir le résultat d'un programme (<b>sémantique</b>). </li><li>Manipuler les types articles</li><li><mark>Essentiel</mark> : les algorithmes classiques (min, max, moyenne).</li></ul><br class="bbr"/><h4><span class="difficulty"><img style="width:16px;height:16px;" alt="Star" src="../Images/etoile.png"/><img style="width:16px;height:16px;" alt="Star" src="../Images/etoile.png"/><img style="width:16px;height:16px;" alt="Star" src="../Images/etoile.png"/></span>Algorithmique fine</h4><small class="pcom"> (pour obtenir le niveau A+)</small><ul class="resources"><li>Pour le niveau A+ : algorithmes classiques avec un traitement supplémentaire, par exemple filtrage.</li></ul><br class="bbr"/><p>Ces compétences seront évaluées partiellement lors du contrôle Moodle, puis plus complètement lors du contrôle de TP début novembre. Un échec au contrôle Moodle peut être rattrapé par une bonne prestation lors du contrôle de TP.</p><p>Toutes les compétences n'ont pas le même poids. Par exemple, la distinction des blocs <code class="kw">IF</code>, <code class="kw">WHILE</code>, <code class="kw">FOR</code> est a priori plus importante que le respect des conventions de présentation. Un correcteur examinera votre contrôle pour estimer si chaque macro-compétence est acquise. </p><h3>Évaluations</h3><ul><li>Un contrôle Moodle, début octobre. Durée 45 min.</li><li><mark>Évaluation principale : </mark>un contrôle de TP sur ordi, début novembre. Durée 1H30.</li></ul><p>Pendant les évaluations, le seul document autorisé est l'aide-mémoire, possiblement annoté.</p></section></div><script>
//<![CDATA[
initYfold('7814051f') ;
//]]>
</script></section><section class="yfold"><h2 class="yfold-title" onclick="toggleYfold('15018ba3')"><span class="arrow" id="arrow-15018ba3">&#x25b8;</span>Bibliographie et conseils sur la méthode de travail</h2><div class="yfold-content" id="content-15018ba3" data-yfold-default="hide"><h4>Biblio</h4><ul class="bib"><li><cite>L'algorithmique (votre passeport informatique pour la programmation). </cite><span class="author">Bruno Warin, Ellipses </span><small class="pcom"> (ISBN 2729811400)</small>. </li><li><cite>Initiation à l'Informatique (Programmation, Algorithmique, Architectures). </cite><span class="author">Henri-Pierre Charles, Eyrolles </span><small class="pcom"> (ISBN 2212090498)</small></li><li><cite>Apprendre à programmer (Algorithmes et conception objet), Partie I. </cite><span class="author">Christophe Dabancourt, Eyrolles </span><small class="pcom"> (ISBN 9782212123500)</small></li></ul><h4>Conseils</h4><ul class="steps"><li>Garder un exemplaire propre de votre travail de TD (les TDs sont effectués en équipe de 4, vous devriez avoir quatre exemplaires présentables à l'issue des séances).</li><li>Pendant les séances de TP, reportez à la fin de votre aide-mémoire les <b>erreurs de compilation</b> qui vous posent problème. Elles risquent de se reproduire à l'avenir, y compris en contrôle. Une page est déjà prévue pour cela.</li><li>D'une manière générale (ceci est vrai pour toutes les matières), quand vous avez résolu un problème qui vous semble difficile, écrivez une synthèse de ce qu'il faut en retenir. Le simple fait de rédiger cette synthèse vous aidera à mieux appréhender le problème et à vous en rappeler.</li><li>Entre deux séances de TP, relisez les algorithmes et programmes que vous avez effectué à la séance précédente, en comprenant bien <b>chaque étape</b>. Identifiez dans votre aide-mémoire ce que vous avez appris.</li><li>Rappel : vous pouvez librement contacter vos enseignants de TD, TP ou de cours pour poser des questions.</li></ul></div><script>
//<![CDATA[
initYfold('15018ba3') ;
//]]>
</script></section><section class="yfold"><h2 class="yfold-title" onclick="toggleYfold('6eac443c')"><span class="arrow" id="arrow-6eac443c">&#x25b8;</span>Ada en dehors des heures de TP</h2><div class="yfold-content" id="content-6eac443c" data-yfold-default="hide"><section class="card"><h3>Pour travailler Ada à l'INSA</h3><p>Des salles informatiques sont en accès libre : <b>la salle du CSN</b> (au centre informatique), et les salles du sous-sol si vous parvenez à y accéder.</p></section><section class="card"><h3>Pour travailler Ada depuis chez soi, en se connectant sur un serveur de l'INSA (avec connexion VPN)</h3><ol><li>Avoir une connexion VPN qui fonctionne : <a target="_blank" href="http://csn.insa-toulouse.fr/fr/services/services-transverses/connexion-par-vpn.html">le client VPN de l'INSA</a><br/> ou <a target="_blank" href="https://wiki.etud.insa-toulouse.fr/books/r%C3%A9seau-et-internet">le VPN expliqué par WikEtud</a>. </li><li>Puis visiter : <a class="url" target="_blank" href="https://montp.insa-toulouse.fr">//montp.insa-toulouse.fr</a> et choisir une session linux.</li><li>En cas de problème technique, envoyez un email à <i>infrastructure-csn à insa-toulouse.fr</i>. </li></ol></section><section class="card"><h3>Pour travailler Ada directement sur son propre ordi, chez soi (sans connexion internet)</h3><p>Grâce aux efforts du club info, il est possible d'installer sur son ordinateur personnel un environnement semblable à l'environnement des TP Ada à l'INSA.</p><p>Aucune connaissance technique n'est nécessaire. Il suffit de suivre les consignes indiquées <a target="_blank" href="https://wiki.etud.insa-toulouse.fr/books/tutos/chapter/machine-virtuelle-ada">pour installer une machine virtuelle.</a></p></section><section class="card"><h3>Tech.io (connexion internet, pas de VPN)</h3><p>Alternative : vous pouvez travailler directement sur tech.io :</p><ul><li><a target="_blank" href="https://tech.io/playgrounds/5454/learning-algorithmics-with-ada/welcome">Exercices complémentaires du semestre 1<small class="pcom"> (by le Club Info)</small></a></li><li><a target="_blank" href="https://tech.io/playgrounds/53242/exercices-complementaires-ada">Exercices complémentaires du semestre 2<small class="pcom"> (by Le Botlan)</small></a></li><li><a target="_blank" href="https://tech.io/playgrounds/53242/programmation-ada-insa/espace-pour-tous-les-exercices">Espace sur tech-io pour écrire tous les programmes (hors TP)</a></li></ul></section><p>Enfin, notez que le club INFO vous aide à installer l'environnement - contactez-les.</p></div><script>
//<![CDATA[
initYfold('6eac443c') ;
//]]>
</script></section></main><footer><a target="_blank" href="http://www.insa-toulouse.fr"><img title="INSA Toulouse" style="width:194px;height:42px;" alt="INSA logo" src="../Images/logo-insa.jpg"/></a><a target="_blank" href="https://www.laas.fr/"><img title="LAAS" style="width:82px;height:42px;" alt="LAAS logo" src="../Images/laas.png"/></a><a target="_blank" href="http://www.univ-toulouse.fr/"><img title="University of Toulouse" style="width:84px;height:42px;" alt="University of Toulouse logo" src="../Images/univt.jpg"/></a><small class="pcom"><a class="caml_c" href="../yversion.html" data-eliom-c-onclick="Iarl7eQKHOUu">Version information</a></small><a target="_blank" href="http://ocaml.org/"><img title="Powered by OCaml code" style="width:42px;height:42px;" alt="OCaml logo" src="../Images/ocaml-small.png"/></a><a target="_blank" href="http://ocsigen.org/"><img title="Website generated by ocsigen &amp; eliom" style="width:38px;height:32px;" alt="Ocsigen logo" src="../Images/ocsigen-small.png"/></a><a target="_blank" href="http://jigsaw.w3.org/css-validator/check/referer"><img title="Validate css stylesheet" style="width:28px;height:32px;" alt="CSS3 logo" src="../Images/css3.png"/></a><a target="_blank" href="http://validator.w3.org/check/referer"><img title="Validate html5 content" style="width:32px;height:32px;" alt="HTML5 logo" src="../Images/html5.png"/></a></footer></body></html>
<html class="ada1" lang="fr" id="h" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>TP Ada S1 - premier semestre</title>
<meta content="text/html; charset=utf-8" http-equiv="content-type" />
<meta content="width=device-width, initial-scale=1.0" name="viewport" />
<link media="all" href="../ystyle.css" rel="stylesheet" />
<script src="../Scripts/yfold.js"></script>
</head>
<body>
<div class="header" id="header">
<h1 id="title">TP Ada S1 - premier semestre</h1>
</div>
<main>
<section class="yfold">
<h2 class="yfold-title" onclick="toggleYfold('88fca160')"><span class="arrow"
id="arrow-88fca160">&#x25b8;</span>Sujets des séances de TP</h2>
<div class="yfold-content" id="content-88fca160" data-yfold-default="hide">
<section class="yfold">
<h4 class="yfold-title" onclick="toggleYfold('076fa9ca')"><span class="arrow"
id="arrow-076fa9ca">&#x25b8;</span>Configuration</h4>
<div class="yfold-content" id="content-076fa9ca" data-yfold-default="show">
<div class="warning">À effectuer obligatoirement une fois en début d'année.</div>
<p>Nous allons configurer une fois pour toutes l'installation <span
class="file">emacs/Ada</span> de votre compte personnel. Pour cela, effectuer les
opérations suivantes avant de commencer le premier TP (vous n'aurez pas à le refaire aux TPs
suivants).</p>
<ul class="steps">
<li>Trouvez le dossier <span class="menu">COMMETUD</span> : il devrait y avoir un lien sur
votre bureau.</li>
<li>Allez dans <span class="menu">Commetud</span>, <span class="menu">1ere Année</span>,
<span class="menu">Ada</span>, puis <span class="menu">Setup</span>. </li>
<li>Lancer le programme <span class="menu">setup-exe</span> en cliquant dessus.</li>
<li>Répondez aux questions et attendez le message indiquant que l'installation s'est bien
passée.En cas de doute, demandez à vos voisins ou à l'encadrant.</li>
</ul>
</div>
<script>
//<![CDATA[
initYfold('076fa9ca');
//]]>
</script>
</section>
<section class="yfold">
<h4 class="yfold-title" onclick="toggleYfold('6dffd0aa')"><span class="arrow"
id="arrow-6dffd0aa">&#x25b8;</span>Les sujets</h4>
<div class="yfold-content" id="content-6dffd0aa" data-yfold-default="hide">Vous avez cinq séances de
TP pour effectuer les missions suivantes :<ul class="lessons">
<li><a class="caml_c" href="tp-contexte.html" data-eliom-c-onclick="JO6OMQMINqeq"><span
class="lbutton">Contexte</span>Contexte de l'ensemble des TPs</a>. </li>
<li><a class="caml_c" href="tp-m1.html" data-eliom-c-onclick="tP7HOLyDrCrG"><span
class="lbutton">Mission 1</span> Premiers tests.</a>. </li>
<li><a class="caml_c" href="tp-m2.html" data-eliom-c-onclick="Sh06qwsZ+LjI"><span
class="lbutton">Mission 2</span> Le vol de démonstration.</a>. </li>
<li><a class="caml_c" href="tp-m3.html" data-eliom-c-onclick="1TyHe9Ga5Cq3"><span
class="lbutton">Mission 3</span> Visite d'aéroports européens</a>. </li>
<li><a class="caml_c" href="tp-m4.html" data-eliom-c-onclick="rj3xcSxoC0eS"><span
class="lbutton">Mission 4</span> Le voyage interactif</a>. </li>
</ul>
</div>
<script>
//<![CDATA[
initYfold('6dffd0aa');
//]]>
</script>
</section>
<section class="yfold">
<h4 class="yfold-title" onclick="toggleYfold('de67d706')"><span class="arrow"
id="arrow-de67d706">&#x25b8;</span>Acteurs utilisés</h4>
<div class="yfold-content" id="content-de67d706" data-yfold-default="hide">Acteurs utilisés au
premier semestre :<ul class="file-list">
<li><a class="file caml_c" href="acteur-gada/gada-text_io.ads.html"
data-eliom-c-onclick="NF+a/lvfZfJO">GAda.Text_IO</a></li>
</ul>
<section class="yfold sober">
<h3 class="yfold-title" onclick="toggleYfold('85ee92be')"><span class="arrow"
id="arrow-85ee92be">&#x25b8;</span>INSA-Air</h3>
<div class="yfold-content" id="content-85ee92be" data-yfold-default="show">
<ul class="file-list">
<li><a class="file caml_c" href="acteurs-insa-air/assert.ads.html"
data-eliom-c-onclick="GFgJDuVuHEks">assert.ads</a></li>
<li><a class="file caml_c" href="acteurs-insa-air/avion_sol.ads.html"
data-eliom-c-onclick="7iSjGhhxgt9j">avion_sol.ads</a> &#8212; Contrôle de
l'avion au sol</li>
<li><a class="file caml_c" href="acteurs-insa-air/carburant.ads.html"
data-eliom-c-onclick="jYhAY6EN/jSN">carburant.ads</a></li>
<li><a class="file caml_c" href="acteurs-insa-air/cartographie.ads.html"
data-eliom-c-onclick="ETQL82vKQlDT">cartographie.ads</a> &#8212; Accès aux
informations de la carte</li>
<li><a class="file caml_c" href="acteurs-insa-air/insa_air.ads.html"
data-eliom-c-onclick="AbpnUTAEaUVm">insa_air.ads</a> &#8212; Contrôle de
l'avion en vol</li>
<li><a class="file caml_c" href="acteurs-insa-air/pilote_automatique.ads.html"
data-eliom-c-onclick="CqpjIT6PpuDU">pilote_automatique.ads</a> &#8212;
Commande le décollage ou l'atterrissage</li>
<li><a class="file caml_c" href="acteurs-insa-air/simulation.ads.html"
data-eliom-c-onclick="ZxgTc5B3kz9Y">simulation.ads</a> &#8212; Contrôle de
l'avion au sol en mode SIMULATION</li>
<li><a class="file caml_c" href="acteurs-insa-air/tour.ads.html"
data-eliom-c-onclick="PvwFuyKnybXW">tour.ads</a> &#8212; Communication avec
la tour de contrôle</li>
<li><a class="file caml_c" href="acteurs-insa-air/train.ads.html"
data-eliom-c-onclick="N80G5kj07dR9">train.ads</a> &#8212; Contrôle du train
d'atterrissage</li>
</ul>
</div>
<script>
//<![CDATA[
initYfold('85ee92be');
//]]>
</script>
</section><br class="bbr" />Tous les acteurs GAda <small class="pcom">(vous n'en avez pas besoin
au premier semestre)</small>
<section class="yfold sober">
<h3 class="yfold-title" onclick="toggleYfold('aee00906')"><span class="arrow"
id="arrow-aee00906">&#x25b8;</span>GAda</h3>
<div class="yfold-content" id="content-aee00906" data-yfold-default="hide">
<ul class="file-list">
<li><a class="file caml_c" href="acteur-gada/dfloat.ads.html"
data-eliom-c-onclick="wuEktKIMdlpx">dfloat.ads</a></li>
<li><a class="file caml_c" href="acteur-gada/gada-advanced_graphics.ads.html"
data-eliom-c-onclick="v+6q+j5KMMKW">gada-advanced_graphics.ads</a></li>
<li><a class="file caml_c" href="acteur-gada/gada-float_text_io.ads.html"
data-eliom-c-onclick="f2BCGeVBvXxU">gada-float_text_io.ads</a></li>
<li><a class="file caml_c" href="acteur-gada/gada-graphics.ads.html"
data-eliom-c-onclick="Bvg/U7NEM5gx">gada-graphics.ads</a></li>
<li><a class="file caml_c" href="acteur-gada/gada-integer_text_io.ads.html"
data-eliom-c-onclick="aHJPJns6cgvz">gada-integer_text_io.ads</a></li>
<li><a class="file caml_c" href="acteur-gada/gada-plus.ads.html"
data-eliom-c-onclick="qHTGr5OZ02ut">gada-plus.ads</a></li>
<li><a class="file caml_c" href="acteur-gada/gada-text_io.ads.html"
data-eliom-c-onclick="zdN7HGnunMR3">gada-text_io.ads</a></li>
<li><a class="file caml_c" href="acteur-gada/tortue.ads.html"
data-eliom-c-onclick="R2Au1u5Wdm+r">tortue.ads</a></li>
</ul>
</div>
<script>
//<![CDATA[
initYfold('aee00906');
//]]>
</script>
</section>
</div>
<script>
//<![CDATA[
initYfold('de67d706');
//]]>
</script>
</section>
<section class="yfold">
<h4 class="yfold-title" onclick="toggleYfold('9c9a879b')"><span class="arrow"
id="arrow-9c9a879b">&#x25b8;</span>Problèmes techniques</h4>
<div class="yfold-content" id="content-9c9a879b" data-yfold-default="hide">
<section>
<h4>Si emacs plante, voici la marche à suivre : </h4>
<ul class="steps">
<li>Cacher la fenêtre emacs ayant planté (minimiser la fenêtre en cliquant sur le
'moins' en haut à droite).</li>
<li>Rouvrir le fichier <span class="file">mission1.adb</span><small class="pcom"> (par
exemple)</small></li>
<li>Lorsque vous tentez de modifier le fichier, emacs se plaint de ne pas pouvoir
l'éditer, <b>dans ce cas, appuyer sur la touche 's'</b> (comme <i>steal</i><small
class="pcom"> ou comme <i> c'est moi le chef </i></small>).</li>
</ul>
</section>
<section>
<h4>Facultatif : si vous voulez aussi détruire la fenêtre emacs ayant planté</h4>
<ul class="steps">
<li>Ouvrir un TERMINAL (à trouver dans le menu Système, ouvrir une console ou un
terminal).</li>
<li>Dans le terminal, écrire : <code class="inline">xkill</code><small class="pcom">
(puis entrée)</small></li>
<li>Cliquer sur la fenêtre que vous voulez détruire (la fenêtre du emacs ayant planté).
</li>
</ul>
</section>
</div>
<script>
//<![CDATA[
initYfold('9c9a879b');
//]]>
</script>
</section>
</div>
<script>
//<![CDATA[
initYfold('88fca160');
//]]>
</script>
</section>
<section class="yfold">
<h2 class="yfold-title" onclick="toggleYfold('b7896e97')"><span class="arrow"
id="arrow-b7896e97">&#x25b8;</span>Exercices complémentaires</h2>
<div class="yfold-content" id="content-b7896e97" data-yfold-default="hide">Tous ces exercices sont faisables
sur <a target="_blank"
href="https://tech.io/playgrounds/53242/programmation-ada-insa/espace-pour-tous-les-exercices">tech-io</a>.
Vous devriez être capables d'effectuer les exercices suivants seuls :<ul class="exo-list">
<li><a class="caml_c" href="exercices/appel-procedures.html"
data-eliom-c-onclick="tuju6YIu0GwR">Base : appel de procédure et de fonction</a></li>
<li><a class="caml_c" href="exercices/divers.html" data-eliom-c-onclick="vGhJdaoOmlZC">Base :
exercices divers</a></li>
</ul>Cet ensemble d'exercices correspond exactement au niveau attendu à l'examen :<ul class="exo-list">
<li><a class="caml_c" href="exercices/algorigramme.html"
data-eliom-c-onclick="DajWLadXda/X">Traduction d'algorigramme</a></li>
<li><a class="caml_c" href="exercices/record.html" data-eliom-c-onclick="JYb9DAU9izl4">Passage
d'arguments et type article</a></li>
<li><a class="caml_c" href="exercices/collection.html" data-eliom-c-onclick="ZTOu0zpR/Evt">Exercices
sur une collection de données</a></li>
<li><a class="caml_c" href="exercices/analyse-polynome.html"
data-eliom-c-onclick="5GQIa6SrMXGA">Recherche d'extremum sur un polynôme</a></li>
<li><a class="caml_c" href="exercices/complet-s1.html" data-eliom-c-onclick="Zfwz+TPdbOB8">Exercice
sur TOUT<img class="nice-inline" style="width:187px;height:45px;" alt="Voiture"
src="../Images/car0.png" /></a><small class="pcom"> (Sujet posé en 2020)</small></li>
</ul>
</div>
<script>
//<![CDATA[
initYfold('b7896e97');
//]]>
</script>
</section>
<section class="yfold">
<h2 class="yfold-title" onclick="toggleYfold('7814051f')"><span class="arrow"
id="arrow-7814051f">&#x25b8;</span>Compétences et évaluation</h2>
<div class="yfold-content" id="content-7814051f" data-yfold-default="hide">
<section class="card">
<h3>Compétences Algorithmiques du semestre 1</h3>
<p>Le domaine <i>UF Maths-Algo</i> est évaluée par compétences. Les compétences d'algo sont classées
dans trois macro-compétences, de difficulté croissante :</p>
<h4><span class="difficulty"><img style="width:16px;height:16px;" alt="Star"
src="../Images/etoile.png" /></span>Bases de programmation</h4><small class="pcom">(le
minimum vital à acquérir)</small>
<ul class="resources">
<li>Traduire une spécification de sous-programme (boîte) en une déclaration de procédure ou de
fonction Ada.</li>
<li>Distinguer les structures de contrôle <code class="kw">while</code>, <code
class="kw">if</code>, et <code class="kw">for</code>. </li>
<li>Dans une procédure ou fonction, savoir utiliser les arguments.</li>
<li>Écrire une procédure de test qui invoque une fonction, affiche ses arguments et son
résultat.</li>
<li>Respecter les conventions de présentation (indentation, espacements, commentaires, nommage
des variables).</li>
</ul><br class="bbr" />
<h4><span class="difficulty"><img style="width:16px;height:16px;" alt="Star"
src="../Images/etoile.png" /><img style="width:16px;height:16px;" alt="Star"
src="../Images/etoile.png" /></span>Éléments d'algorithmique</h4><small
class="pcom">(l'objet principal du cours)</small>
<ul class="resources">
<li>Appliquer toutes les règles de construction d'un programme (<b>typage</b>). </li>
<li>Les programmes sont cohérents et compilent sans erreur.</li>
<li>Prévoir le résultat d'un programme (<b>sémantique</b>). </li>
<li>Manipuler les types articles</li>
<li><mark>Essentiel</mark> : les algorithmes classiques (min, max, moyenne).</li>
</ul><br class="bbr" />
<h4><span class="difficulty"><img style="width:16px;height:16px;" alt="Star"
src="../Images/etoile.png" /><img style="width:16px;height:16px;" alt="Star"
src="../Images/etoile.png" /><img style="width:16px;height:16px;" alt="Star"
src="../Images/etoile.png" /></span>Algorithmique fine</h4><small class="pcom"> (pour
obtenir le niveau A+)</small>
<ul class="resources">
<li>Pour le niveau A+ : algorithmes classiques avec un traitement supplémentaire, par exemple
filtrage.</li>
</ul><br class="bbr" />
<p>Ces compétences seront évaluées partiellement lors du contrôle Moodle, puis plus complètement
lors du contrôle de TP début novembre. Un échec au contrôle Moodle peut être rattrapé par une
bonne prestation lors du contrôle de TP.</p>
<p>Toutes les compétences n'ont pas le même poids. Par exemple, la distinction des blocs <code
class="kw">IF</code>, <code class="kw">WHILE</code>, <code class="kw">FOR</code> est a
priori plus importante que le respect des conventions de présentation. Un correcteur examinera
votre contrôle pour estimer si chaque macro-compétence est acquise. </p>
<h3>Évaluations</h3>
<ul>
<li>Un contrôle Moodle, début octobre. Durée 45 min.</li>
<li><mark>Évaluation principale : </mark>un contrôle de TP sur ordi, début novembre. Durée 1H30.
</li>
</ul>
<p>Pendant les évaluations, le seul document autorisé est l'aide-mémoire, possiblement annoté.</p>
</section>
</div>
<script>
//<![CDATA[
initYfold('7814051f');
//]]>
</script>
</section>
<section class="yfold">
<h2 class="yfold-title" onclick="toggleYfold('15018ba3')"><span class="arrow"
id="arrow-15018ba3">&#x25b8;</span>Bibliographie et conseils sur la méthode de travail</h2>
<div class="yfold-content" id="content-15018ba3" data-yfold-default="hide">
<h4>Biblio</h4>
<ul class="bib">
<li><cite>L'algorithmique (votre passeport informatique pour la programmation). </cite><span
class="author">Bruno Warin, Ellipses </span><small class="pcom"> (ISBN 2729811400)</small>.
</li>
<li><cite>Initiation à l'Informatique (Programmation, Algorithmique, Architectures). </cite><span
class="author">Henri-Pierre Charles, Eyrolles </span><small class="pcom"> (ISBN
2212090498)</small></li>
<li><cite>Apprendre à programmer (Algorithmes et conception objet), Partie I. </cite><span
class="author">Christophe Dabancourt, Eyrolles </span><small class="pcom"> (ISBN
9782212123500)</small></li>
</ul>
<h4>Conseils</h4>
<ul class="steps">
<li>Garder un exemplaire propre de votre travail de TD (les TDs sont effectués en équipe de 4, vous
devriez avoir quatre exemplaires présentables à l'issue des séances).</li>
<li>Pendant les séances de TP, reportez à la fin de votre aide-mémoire les <b>erreurs de
compilation</b> qui vous posent problème. Elles risquent de se reproduire à l'avenir, y
compris en contrôle. Une page est déjà prévue pour cela.</li>
<li>D'une manière générale (ceci est vrai pour toutes les matières), quand vous avez résolu un
problème qui vous semble difficile, écrivez une synthèse de ce qu'il faut en retenir. Le simple
fait de rédiger cette synthèse vous aidera à mieux appréhender le problème et à vous en
rappeler.</li>
<li>Entre deux séances de TP, relisez les algorithmes et programmes que vous avez effectué à la
séance précédente, en comprenant bien <b>chaque étape</b>. Identifiez dans votre aide-mémoire ce
que vous avez appris.</li>
<li>Rappel : vous pouvez librement contacter vos enseignants de TD, TP ou de cours pour poser des
questions.</li>
</ul>
</div>
<script>
//<![CDATA[
initYfold('15018ba3');
//]]>
</script>
</section>
<section class="yfold">
<h2 class="yfold-title" onclick="toggleYfold('6eac443c')"><span class="arrow"
id="arrow-6eac443c">&#x25b8;</span>Ada en dehors des heures de TP</h2>
<div class="yfold-content" id="content-6eac443c" data-yfold-default="hide">
<section class="card">
<h3>Pour travailler Ada à l'INSA</h3>
<p>Des salles informatiques sont en accès libre : <b>la salle du CSN</b> (au centre informatique),
et les salles du sous-sol si vous parvenez à y accéder.</p>
</section>
<section class="card">
<h3>Pour travailler Ada depuis chez soi, en se connectant sur un serveur de l'INSA (avec connexion
VPN)</h3>
<ol>
<li>Avoir une connexion VPN qui fonctionne : <a target="_blank"
href="http://csn.insa-toulouse.fr/fr/services/services-transverses/connexion-par-vpn.html">le
client VPN de l'INSA</a><br /> ou <a target="_blank"
href="https://wiki.etud.insa-toulouse.fr/books/r%C3%A9seau-et-internet">le VPN expliqué
par WikEtud</a>. </li>
<li>Puis visiter : <a class="url" target="_blank"
href="https://montp.insa-toulouse.fr">//montp.insa-toulouse.fr</a> et choisir une
session linux.</li>
<li>En cas de problème technique, envoyez un email à <i>infrastructure-csn à
insa-toulouse.fr</i>. </li>
</ol>
</section>
<section class="card">
<h3>Pour travailler Ada directement sur son propre ordi, chez soi (sans connexion internet)</h3>
<p>Grâce aux efforts du club info, il est possible d'installer sur son ordinateur personnel un
environnement semblable à l'environnement des TP Ada à l'INSA.</p>
<p>Aucune connaissance technique n'est nécessaire. Il suffit de suivre les consignes indiquées <a
target="_blank"
href="https://wiki.etud.insa-toulouse.fr/books/tutos/chapter/machine-virtuelle-ada">pour
installer une machine virtuelle.</a></p>
</section>
<section class="card">
<h3>Tech.io (connexion internet, pas de VPN)</h3>
<p>Alternative : vous pouvez travailler directement sur tech.io :</p>
<ul>
<li><a target="_blank"
href="https://tech.io/playgrounds/5454/learning-algorithmics-with-ada/welcome">Exercices
complémentaires du semestre 1<small class="pcom"> (by le Club Info)</small></a></li>
<li><a target="_blank"
href="https://tech.io/playgrounds/53242/exercices-complementaires-ada">Exercices
complémentaires du semestre 2<small class="pcom"> (by Le Botlan)</small></a></li>
<li><a target="_blank"
href="https://tech.io/playgrounds/53242/programmation-ada-insa/espace-pour-tous-les-exercices">Espace
sur tech-io pour écrire tous les programmes (hors TP)</a></li>
</ul>
</section>
<p>Enfin, notez que le club INFO vous aide à installer l'environnement - contactez-les.</p>
</div>
<script>
//<![CDATA[
initYfold('6eac443c');
//]]>
</script>
</section><br class="vskip" /><small class="pcom">Un ex-étudiant de 1A avait commencé à proposer un style
alternatif à ces pages de TP. <br />Voici donc : <a target="_blank"
href="http://wwwperso.insa-toulouse.fr/~lebotlan/Y2/Ada-S1/tps.html">TP Ada semestre 1, avec un style au
choix</a></small>
</main>
<footer><a target="_blank" href="http://www.insa-toulouse.fr"><img title="INSA Toulouse"
style="width:194px;height:42px;" alt="INSA logo" src="../Images/logo-insa.jpg" /></a><a target="_blank"
href="https://www.laas.fr/"><img title="LAAS" style="width:82px;height:42px;" alt="LAAS logo"
src="../Images/laas.png" /></a><a target="_blank" href="http://www.univ-toulouse.fr/"><img
title="University of Toulouse" style="width:84px;height:42px;" alt="University of Toulouse logo"
src="../Images/univt.jpg" /></a><small class="pcom"><a class="caml_c" href="../yversion.html"
data-eliom-c-onclick="MNl/dfIRbMYt">Version information</a></small><a target="_blank"
href="http://ocaml.org/"><img title="Powered by OCaml code" style="width:42px;height:42px;" alt="OCaml logo"
src="../Images/ocaml-small.png" /></a><a target="_blank" href="http://ocsigen.org/"><img
title="Website generated by ocsigen &amp; eliom" style="width:38px;height:32px;" alt="Ocsigen logo"
src="../Images/ocsigen-small.png" /></a><a target="_blank"
href="http://jigsaw.w3.org/css-validator/check/referer"><img title="Validate css stylesheet"
style="width:28px;height:32px;" alt="CSS3 logo" src="../Images/css3.png" /></a><a target="_blank"
href="http://validator.w3.org/check/referer"><img title="Validate html5 content"
style="width:32px;height:32px;" alt="HTML5 logo" src="../Images/html5.png" /></a></footer>
</body>
</html>

BIN
Y/Images/car0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

BIN
Y/Images/important.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

View file

@ -1,7 +1,7 @@
/* POLICES */
@font-face {
font-family: 'Poppins';
src: url('/Y/Poppins-Light.ttf') format('truetype');
font-family: "Poppins";
src: url("/Y/Poppins-Light.ttf") format("truetype");
}
/* règles generéales */
@ -23,9 +23,218 @@ body {
position: relative;
}
body:after, body:before {
-webkit-clip-path: polygon(100% 0, 0 0, 0 77.5%, 1% 77.4%, 2% 77.1%, 3% 76.6%, 4% 75.9%, 5% 75.05%, 6% 74.05%, 7% 72.95%, 8% 71.75%, 9% 70.55%, 10% 69.3%, 11% 68.05%, 12% 66.9%, 13% 65.8%, 14% 64.8%, 15% 64%, 16% 63.35%, 17% 62.85%, 18% 62.6%, 19% 62.5%, 20% 62.65%, 21% 63%, 22% 63.5%, 23% 64.2%, 24% 65.1%, 25% 66.1%, 26% 67.2%, 27% 68.4%, 28% 69.65%, 29% 70.9%, 30% 72.15%, 31% 73.3%, 32% 74.35%, 33% 75.3%, 34% 76.1%, 35% 76.75%, 36% 77.2%, 37% 77.45%, 38% 77.5%, 39% 77.3%, 40% 76.95%, 41% 76.4%, 42% 75.65%, 43% 74.75%, 44% 73.75%, 45% 72.6%, 46% 71.4%, 47% 70.15%, 48% 68.9%, 49% 67.7%, 50% 66.55%, 51% 65.5%, 52% 64.55%, 53% 63.75%, 54% 63.15%, 55% 62.75%, 56% 62.55%, 57% 62.5%, 58% 62.7%, 59% 63.1%, 60% 63.7%, 61% 64.45%, 62% 65.4%, 63% 66.45%, 64% 67.6%, 65% 68.8%, 66% 70.05%, 67% 71.3%, 68% 72.5%, 69% 73.6%, 70% 74.65%, 71% 75.55%, 72% 76.35%, 73% 76.9%, 74% 77.3%, 75% 77.5%, 76% 77.45%, 77% 77.25%, 78% 76.8%, 79% 76.2%, 80% 75.4%, 81% 74.45%, 82% 73.4%, 83% 72.25%, 84% 71.05%, 85% 69.8%, 86% 68.55%, 87% 67.35%, 88% 66.2%, 89% 65.2%, 90% 64.3%, 91% 63.55%, 92% 63%, 93% 62.65%, 94% 62.5%, 95% 62.55%, 96% 62.8%, 97% 63.3%, 98% 63.9%, 99% 64.75%, 100% 65.7%);
clip-path: polygon(100% 0, 0 0, 0 77.5%, 1% 77.4%, 2% 77.1%, 3% 76.6%, 4% 75.9%, 5% 75.05%, 6% 74.05%, 7% 72.95%, 8% 71.75%, 9% 70.55%, 10% 69.3%, 11% 68.05%, 12% 66.9%, 13% 65.8%, 14% 64.8%, 15% 64%, 16% 63.35%, 17% 62.85%, 18% 62.6%, 19% 62.5%, 20% 62.65%, 21% 63%, 22% 63.5%, 23% 64.2%, 24% 65.1%, 25% 66.1%, 26% 67.2%, 27% 68.4%, 28% 69.65%, 29% 70.9%, 30% 72.15%, 31% 73.3%, 32% 74.35%, 33% 75.3%, 34% 76.1%, 35% 76.75%, 36% 77.2%, 37% 77.45%, 38% 77.5%, 39% 77.3%, 40% 76.95%, 41% 76.4%, 42% 75.65%, 43% 74.75%, 44% 73.75%, 45% 72.6%, 46% 71.4%, 47% 70.15%, 48% 68.9%, 49% 67.7%, 50% 66.55%, 51% 65.5%, 52% 64.55%, 53% 63.75%, 54% 63.15%, 55% 62.75%, 56% 62.55%, 57% 62.5%, 58% 62.7%, 59% 63.1%, 60% 63.7%, 61% 64.45%, 62% 65.4%, 63% 66.45%, 64% 67.6%, 65% 68.8%, 66% 70.05%, 67% 71.3%, 68% 72.5%, 69% 73.6%, 70% 74.65%, 71% 75.55%, 72% 76.35%, 73% 76.9%, 74% 77.3%, 75% 77.5%, 76% 77.45%, 77% 77.25%, 78% 76.8%, 79% 76.2%, 80% 75.4%, 81% 74.45%, 82% 73.4%, 83% 72.25%, 84% 71.05%, 85% 69.8%, 86% 68.55%, 87% 67.35%, 88% 66.2%, 89% 65.2%, 90% 64.3%, 91% 63.55%, 92% 63%, 93% 62.65%, 94% 62.5%, 95% 62.55%, 96% 62.8%, 97% 63.3%, 98% 63.9%, 99% 64.75%, 100% 65.7%);
body:after,
body:before {
-webkit-clip-path: polygon(
100% 0,
0 0,
0 77.5%,
1% 77.4%,
2% 77.1%,
3% 76.6%,
4% 75.9%,
5% 75.05%,
6% 74.05%,
7% 72.95%,
8% 71.75%,
9% 70.55%,
10% 69.3%,
11% 68.05%,
12% 66.9%,
13% 65.8%,
14% 64.8%,
15% 64%,
16% 63.35%,
17% 62.85%,
18% 62.6%,
19% 62.5%,
20% 62.65%,
21% 63%,
22% 63.5%,
23% 64.2%,
24% 65.1%,
25% 66.1%,
26% 67.2%,
27% 68.4%,
28% 69.65%,
29% 70.9%,
30% 72.15%,
31% 73.3%,
32% 74.35%,
33% 75.3%,
34% 76.1%,
35% 76.75%,
36% 77.2%,
37% 77.45%,
38% 77.5%,
39% 77.3%,
40% 76.95%,
41% 76.4%,
42% 75.65%,
43% 74.75%,
44% 73.75%,
45% 72.6%,
46% 71.4%,
47% 70.15%,
48% 68.9%,
49% 67.7%,
50% 66.55%,
51% 65.5%,
52% 64.55%,
53% 63.75%,
54% 63.15%,
55% 62.75%,
56% 62.55%,
57% 62.5%,
58% 62.7%,
59% 63.1%,
60% 63.7%,
61% 64.45%,
62% 65.4%,
63% 66.45%,
64% 67.6%,
65% 68.8%,
66% 70.05%,
67% 71.3%,
68% 72.5%,
69% 73.6%,
70% 74.65%,
71% 75.55%,
72% 76.35%,
73% 76.9%,
74% 77.3%,
75% 77.5%,
76% 77.45%,
77% 77.25%,
78% 76.8%,
79% 76.2%,
80% 75.4%,
81% 74.45%,
82% 73.4%,
83% 72.25%,
84% 71.05%,
85% 69.8%,
86% 68.55%,
87% 67.35%,
88% 66.2%,
89% 65.2%,
90% 64.3%,
91% 63.55%,
92% 63%,
93% 62.65%,
94% 62.5%,
95% 62.55%,
96% 62.8%,
97% 63.3%,
98% 63.9%,
99% 64.75%,
100% 65.7%
);
clip-path: polygon(
100% 0,
0 0,
0 77.5%,
1% 77.4%,
2% 77.1%,
3% 76.6%,
4% 75.9%,
5% 75.05%,
6% 74.05%,
7% 72.95%,
8% 71.75%,
9% 70.55%,
10% 69.3%,
11% 68.05%,
12% 66.9%,
13% 65.8%,
14% 64.8%,
15% 64%,
16% 63.35%,
17% 62.85%,
18% 62.6%,
19% 62.5%,
20% 62.65%,
21% 63%,
22% 63.5%,
23% 64.2%,
24% 65.1%,
25% 66.1%,
26% 67.2%,
27% 68.4%,
28% 69.65%,
29% 70.9%,
30% 72.15%,
31% 73.3%,
32% 74.35%,
33% 75.3%,
34% 76.1%,
35% 76.75%,
36% 77.2%,
37% 77.45%,
38% 77.5%,
39% 77.3%,
40% 76.95%,
41% 76.4%,
42% 75.65%,
43% 74.75%,
44% 73.75%,
45% 72.6%,
46% 71.4%,
47% 70.15%,
48% 68.9%,
49% 67.7%,
50% 66.55%,
51% 65.5%,
52% 64.55%,
53% 63.75%,
54% 63.15%,
55% 62.75%,
56% 62.55%,
57% 62.5%,
58% 62.7%,
59% 63.1%,
60% 63.7%,
61% 64.45%,
62% 65.4%,
63% 66.45%,
64% 67.6%,
65% 68.8%,
66% 70.05%,
67% 71.3%,
68% 72.5%,
69% 73.6%,
70% 74.65%,
71% 75.55%,
72% 76.35%,
73% 76.9%,
74% 77.3%,
75% 77.5%,
76% 77.45%,
77% 77.25%,
78% 76.8%,
79% 76.2%,
80% 75.4%,
81% 74.45%,
82% 73.4%,
83% 72.25%,
84% 71.05%,
85% 69.8%,
86% 68.55%,
87% 67.35%,
88% 66.2%,
89% 65.2%,
90% 64.3%,
91% 63.55%,
92% 63%,
93% 62.65%,
94% 62.5%,
95% 62.55%,
96% 62.8%,
97% 63.3%,
98% 63.9%,
99% 64.75%,
100% 65.7%
);
display: block;
height: 200px;
position: absolute;
@ -81,7 +290,8 @@ main {
margin-left: 3vw;
margin-right: 3vw;
border-radius: 12px;
width: clamp(10px, 94vw, 900px);
max-width: 900px;
color: black;
}
/* couleurs modulo 3 */
@ -98,13 +308,70 @@ main {
}
.yfold-title {
color: white;
padding: 10px 12px 5px 15px;
cursor: pointer;
}
h1.yfold-title,
h2.yfold-title {
color: white;
}
div.warning {
background-color: yellow;
padding: 15px;
border-radius: 12px;
min-height: 70px;
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
width: 60%;
margin-bottom: 20px;
}
.file {
font-family: sans;
font-size: 96%;
color: #660033;
}
div.warning:before {
content: url(Images/important.png);
float: left;
margin-right: 12px;
}
.arrow {
margin-right: 10px
margin-right: 10px;
}
.menu {
margin: 0.25ex 0;
padding: 0.1ex 0.75ex 0.1ex 0.75ex;
background: rgba(130, 170, 250, 0.5);
border: thin solid #37f;
border-radius: 4px;
box-shadow: 3px 3px 2px #844;
font-family: sans;
font-variant: small-caps;
font-size: 88%;
display: inline-block;
}
.lbutton {
vertical-align: top;
padding: 2px 5px;
color: black;
border-radius: 6px;
box-shadow: 1px 2px 2px grey;
font-size: 90%;
background: #72e0d1;
}
.nice-inline {
vertical-align: top;
max-height: 5ex;
}
/* le fond d'écran d'opacité 0.8 permet d'attraper un peu de la couleur de l'élément parent */
@ -122,37 +389,43 @@ aside.yfold {
border-radius: 12px;
}
aside .yfold-title, .card .yfold-title {
aside .yfold-title,
.card .yfold-title {
color: black;
font-family: 'Poppins', sans-serif;
font-family: "Poppins", sans-serif;
font-weight: 100;
padding: 0px;
}
aside .yfold-content, .card .yfold-content {
aside .yfold-content,
.card .yfold-content {
padding: min(40px, 3vw);
}
h1, h2, h3 {
h1,
h2,
h3 {
font-family: "Poppins", sans-serif;
font-weight: lighter;
}
h4, h5 {
h4,
h5 {
font-size: 110%;
margin-bottom: 5px;
margin-top: 5px;
}
/* Elements qui s'animent, se plient et se déplient */
.anim-hide, aside .anim-hide {
.anim-hide,
aside .anim-hide {
padding-top: 0 !important;
padding-bottom: 0 !important;
animation-name: disappear;
animation-duration: 0.75s;
max-height: 0;
margin: 0;
transition: padding 0.75s ease .3s;
transition: padding 0.75s ease 0.3s;
}
.hidden {
@ -167,7 +440,7 @@ h4, h5 {
animation-duration: 0.75s;
max-height: initial;
margin: 0 0 3ex 0;
transition: padding 0.75s ease .1s;
transition: padding 0.75s ease 0.1s;
}
/* style des éléments a l'intérieur des cartes */
@ -197,7 +470,7 @@ footer {
bottom: 0px;
width: 100%;
min-height: 150px;
background: rgba(19, 19, 19, .8);
background: rgba(19, 19, 19, 0.8);
padding: 30px 50px;
display: flex;
z-index: 2;
@ -229,7 +502,7 @@ footer .pcom a {
/* PAGE DE CODE */
code {
background: rgba(19, 19, 19, .8);
background: rgba(19, 19, 19, 0.8);
font-family: monospace;
color: #ffffcc;
display: inline;
@ -239,9 +512,10 @@ code {
font-style: normal;
}
.output, samp {
.output,
samp {
display: block;
background: rgba(19, 19, 19, .8);
background: rgba(19, 19, 19, 0.8);
margin: 20px 0;
font-family: monospace;
color: #ccffcc;
@ -255,7 +529,7 @@ code {
padding: 20px 50px 22px 25px;
border-left: 10px solid #494;
line-height: 1.55;
transition: all .3s;
transition: all 0.3s;
}
code.block {
@ -268,7 +542,7 @@ code.block {
padding: 20px 50px 22px 25px;
border-left: 10px solid #944;
line-height: 1.55;
transition: all .3s;
transition: all 0.3s;
margin: 20px 0;
}
@ -276,7 +550,7 @@ code.page {
border-radius: 12px;
position: relative;
z-index: 2;
background: rgba(19, 19, 19, .8);
background: rgba(19, 19, 19, 0.8);
width: min(94vw, 900px);
border-radius: 12px;
margin-left: 3vw;
@ -291,7 +565,7 @@ code.page {
padding: 20px 50px 22px 25px;
border-left: 10px solid #884;
line-height: 1.55;
transition: all .3s;
transition: all 0.3s;
}
code * {
@ -300,6 +574,10 @@ code * {
display: inline;
}
code.kw {
vertical-align: middle;
}
code div {
overflow: hidden;
position: absolute;
@ -332,9 +610,11 @@ code div.not-valid {
background: #811;
}
code div.valid, code div.not-valid, code div.darken {
code div.valid,
code div.not-valid,
code div.darken {
animation-name: shake;
animation-duration: .6s;
animation-duration: 0.6s;
}
span.comment {
@ -371,12 +651,12 @@ code:not(.inline).light {
background: rgba(250, 250, 250, 0.8);
color: black;
border-color: #aaa;
transition: all .3s;
transition: all 0.3s;
}
.light div {
background: #aaa;
transition: all .3s;
transition: all 0.3s;
}
code * {
@ -470,7 +750,8 @@ img:hover {
border-radius: 12px;
}
ul li, ol li {
ul li,
ol li {
list-style: circle;
margin-left: 25px;
margin-top: 5px;
@ -516,43 +797,43 @@ small {
/* ANIMATION */
@-webkit-keyframes bgMove {
0% {
background-position: 0% 50%
background-position: 0% 50%;
}
50% {
background-position: 100% 50%
background-position: 100% 50%;
}
100% {
background-position: 0% 50%
background-position: 0% 50%;
}
}
@-moz-keyframes bgMove {
0% {
background-position: 0% 50%
background-position: 0% 50%;
}
50% {
background-position: 100% 50%
background-position: 100% 50%;
}
100% {
background-position: 0% 50%
background-position: 0% 50%;
}
}
@keyframes bgMove {
0% {
background-position: 0% 50%
background-position: 0% 50%;
}
50% {
background-position: 100% 50%
background-position: 100% 50%;
}
100% {
background-position: 0% 50%
background-position: 0% 50%;
}
}