MODULE 13 : TECHNIQUES DE PROGRAMMATION STRUCTURÉE

  • Published on
    12-Jun-2015

  • View
    11.816

  • Download
    2

Embed Size (px)

DESCRIPTION

L'objectif de ce module est d'initier les stagiaires laborer des algorithmes pour rpondre desproblmes varis et raliser des programmes pour rsoudre des problmes informatiques de faonlogique et structure.

Transcript

<p>Techniques des Rseaux Informatiques</p> <p>Techniques des Rseaux Informatiques</p> <p>MODULE 13</p> <p>Dure : 90 heures</p> <p>OBJECTIF OPRATIONN</p> <p>COMPTENCE Appliquer les techniques de programmation structure PRSENTATION Ce module de comptence gnrale sinscrit dans la premire anne du programme dtudes et vise initier les stagiaires codifier des algorithmes. Ce module ncessite comme pr requis l'enseignement du module "Notions de mathmatiques appliques l'informatique", et constitue un pralable pour l'enseignement des modules "Langage de programmation structure". DESCRIPTION L'objectif de ce module est d'initier les stagiaires laborer des algorithmes pour rpondre des problmes varis et raliser des programmes pour rsoudre des problmes informatiques de faon logique et structure</p> <p>http://adnaneadnane.ifrance.com/super.adnane@hotmail.fr</p> <p>WWW.TRI.ON.MA</p> <p>Page1</p> <p>Techniques des Rseaux Informatiques</p> <p>SommaireIntroductionalAlgorithmique............................................................................................................................5 1.Questcequelalgomachin?......................................................................................................................5 2.Fautiltrematheuxpourtrebonenalgorithmique?.............................................................................6 3.LADN,lesShadoks,etlesordinateurs........................................................................................................6 4.Algorithmiqueetprogrammation...............................................................................................................7 5.Avecquellesconventionscritonunalgorithme?....................................................................................7 Partie1:LesVariables.........................................................................................................................................9 1.Aquoiserventlesvariables?......................................................................................................................9 2.Dclarationdesvariables............................................................................................................................9 3.Linstructiondaffectation.........................................................................................................................12 4.Expressionsetoprateurs.........................................................................................................................14 5.Deuxremarquespourterminer ................................................................................................................15 . Partie2:LectureetEcriture .............................................................................................................................17 . . 1.Dequoiparleton? ..................................................................................................................................17 2.Lesinstructionsdelectureetdcriture....................................................................................................17 Partie3:LesTests.............................................................................................................................................19 1.Dequoisagitil?.......................................................................................................................................19 2.Structureduntest ....................................................................................................................................19 . 3.Questcequunecondition? ....................................................................................................................20 . . 4.Conditionscomposes ..............................................................................................................................21 5.Testsimbriqus .........................................................................................................................................22 . 6.Delaiguillagelagaredetri....................................................................................................................23 7.VariablesBoolennes................................................................................................................................25 Partie4:EncoredelaLogique..........................................................................................................................26 1.FautilmettreunET?FautilmettreunOU?...........................................................................................26 2.Audeldelalogique:lestyle...................................................................................................................27 Partie5:LesBoucles.........................................................................................................................................29 1.Aquoicelasertildonc?...........................................................................................................................29 2.Bouclerencomptant,oucompterenbouclant........................................................................................32 3.Desbouclesdansdesboucles(toutestdanstout...etrciproquement)...........................................33</p> <p>WWW.TRI.ON.MA</p> <p>Page2</p> <p>Techniques des Rseaux Informatiques</p> <p>4.Etencoreunebtisenepasfaire!.........................................................................................................34 Partie6:LesTableaux.......................................................................................................................................36 1.Utilitdestableaux....................................................................................................................................36 2.Notationetutilisationalgorithmique........................................................................................................36 3.Tableauxdynamiques................................................................................................................................38 Partie7:TechniquesRusees.............................................................................................................................39 1.Triduntableau:letriparSELECtion........................................................................................................39 2.Unexempledeflag:larecherchedansuntableau..................................................................................40 3.Tridetableau+flag=tribulles..............................................................................................................43 4.Larecherchedichotomique.......................................................................................................................44 Partie8:TableauxMultidimensionnels............................................................................................................46 1.Pourquoiplusieursdimensions? ..............................................................................................................46 . 2.Tableauxdeuxdimensions.....................................................................................................................46 3.Tableauxndimensions...........................................................................................................................47 Partie9:LesFonctionsPrdfinies...................................................................................................................48 1.Structuregnraledesfonctions..............................................................................................................48 2.Lesfonctionsdetexte ...............................................................................................................................49 . 3.Troisfonctionsnumriquesclassiques......................................................................................................50 4.Lesfonctionsdeconversion......................................................................................................................51 Partie10:LesFichiers....................................................................................................................................52 1.Organisationdesfichiers.........................................................................................................................52 2.Structuredesenregistrements...............................................................................................................53 3.Typesdaccs............................................................................................................................................54 4.Instructions(fichierstexteenaccssquentiel)...................................................................................55 5.Stratgiesdetraitement..........................................................................................................................58 6.DONNEESSTRUCTUREES.............................................................................................................................59 7.Rcapitulatifgnral................................................................................................................................61 Partie11:ProcduresetFonctions..................................................................................................................62 1.Fonctionspersonnalises..........................................................................................................................62 2.SousProcdures........................................................................................................................................65 3.Variablespubliquesetprives ..................................................................................................................69 . 4.PEUTONTOUTFAIRE?.............................................................................................................................70 5.Algorithmesfonctionnels..........................................................................................................................71</p> <p>WWW.TRI.ON.MA</p> <p>Page3</p> <p>Techniques des Rseaux Informatiques</p> <p>WWW.TRI.ON.MA</p> <p>Page4</p> <p>Techniques des Rseaux Informatiques</p> <p> IntroductionalAlgorithmique Un langage de programmation est une convention pour donner des ordres un ordinateur. Ce nest pas cens tre obscur, bizarre et plein de piges subtils. Ca, ce sont les caractristiques de la magie. - Dave Small C'est illogique, Capitaine - Mr Spock</p> <p>Lalgorithmique est un terme dorigine arabe, comme algbre, amiral ou znith. Ce nest pas une excuse pour massacrer son orthographe, ou sa prononciation. Ainsi, lalgo nest pas rythmique , la diffrence du bon rockn roll. Lalgo nest pas non plus lagglo . Alors, ne confondez pas lalgorithmique avec lagglo rythmique, qui consiste poser des parpaings en cadence.</p> <p>1.Questcequelalgomachin?Avez-vous dj ouvert un livre de recettes de cuisine ? Avez vous dj dchiffr un mode demploi traduit directement du coren pour faire fonctionner un magntoscope ou un rpondeur tlphonique rticent ? Si oui, sans le savoir, vous avez dj excut des algorithmes. Plus fort : avez-vous dj indiqu un chemin un touriste gar ? Avez vous fait chercher un objet quelquun par tlphone ? Ecrit une lettre anonyme stipulant comment procder une remise de ranon ? Si oui, vous avez dj fabriqu et fait excuter des algorithmes. Comme quoi, lalgorithmique nest pas un savoir sotrique rserv quelques rares initis touchs par la grce divine, mais une aptitude partage par la totalit de lhumanit. Donc, pas dexcuses Un algorithme, cest une suite dinstructions, qui une fois excute correctement, conduit un rsultat donn. Si lalgorithme est juste, le rsultat est le rsultat voulu, et le touriste se retrouve l o il voulait aller. Si lalgorithme est faux, le rsultat est, disons, alatoire, et dcidment, cette saloperie de rpondeur ne veut rien savoir. Compltons toutefois cette dfinition. Aprs tout, en effet, si lalgorithme, comme on vient de le dire, nest quune suite dinstructions menant celui qui lexcute rsoudre un problme, pourquoi ne pas donner comme instruction unique : rsous le problme , et laisser linterlocuteur se dbrouiller avec a ? A ce tarif, nimporte qui serait champion dalgorithmique sans faire aucun effort. Pas de a Lisette, ce serait trop facile. Le malheur (ou le bonheur, tout dpend du point de vue) est que justement, si le touriste vous demande son chemin, cest quil ne le connat pas. Donc, si on nest pas un goujat intgral, il ne sert rien de lui dire de le trouver tout seul. De mme les modes demploi contiennent gnralement (mais pas toujours) un peu plus dinformations que dbrouillez vous pour que a marche . Pour fonctionner, un algorithme doit donc contenir uniquement des instructions comprhensibles par celui qui devra lexcuter. Cest dailleurs lun des points dlicats pour les rdacteurs de modes demploi : les rfrences culturelles, ou lexicales, des utilisateurs, tant variables, un mme mode demploi peut tre trs clair pour certains et parfaitement abscons pour dautres.</p> <p>WWW.TRI.ON.MA</p> <p>Page5</p> <p>Techniques des Rseaux Informatiques En informatique, heureusement, il ny a pas ce problme : les choses auxquelles ont doit donner des instructions sont les ordinateurs, et ceux-ci ont le bon got dtre tous strictement aussi idiots les uns que les autres.</p> <p>2.Fautiltrematheuxpourtrebonenalgorithmique?Je consacre quelques lignes cette question, car cette opinion aussi fortement affirme que faiblement fonde sert rgulirement dexcuse : moi, de toute faon, je suis mauvais(e) en algo, jai jamais rien pig aux maths . Faut-il tre bon en maths pour expliquer correctement son chemin quelquun ? Je vous laisse juge. La matrise de lalgorithmique requiert deux qualits, trs complmentaires dailleurs : il faut avoir une certaine intuition, car aucune recette ne permet de savoir a priori quelles</p> <p>instructions permettront dobtenir le rsultat voulu. Cest l, si lon y tient, quintervient la forme dintelligence requise pour lalgorithmique. Alors, cest certain, il y a des gens qui possdent au dpart davantage cette intuition que les autres. Cependant, et jinsiste sur ce point, les rflexes, cela sacquiert. Et ce quon appelle lintuition nest finalement que de lexprience tellement rpte que le raisonnement, au dpart laborieux, finit par devenir spontan . il faut tre mthodique et rigoureux. En effet, chaque fois quon crit une srie dinstructions quon croit justes, il faut systmatiquement se mettre mentalement la place de la machine qui va les excuter, arm d'un papier et d'un crayon, afin de vrifier si le rsultat obtenu est bien celui que lon voulait. Cette opration ne requiert pas la moindre once dintelligence. Mais elle reste nanmoins indispensable, si lon ne veut pas crire laveuglette. Et petit petit, force de pratique, vous verrez que vous pourrez faire de plus en plus souvent lconomie de c...</p>