cours-mass
62 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
62 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Algorithmes et programmationen PascalFaculte des Sciences de Luminy Edouard ThielCoursDeug 1 Mass MAModule de 75 heures1997 a 20042 Algorithmes et programmation en Pascal Edouard ThielTable des matieresI Les variables en Pascal 61 Premiers programmes 61.1 Le programme bonjour . . . . . . . . . . . . . . . . . . . . . . 61.2 Commentaires dans un programme . . . . . . . . . . . . . . . 61.3 Utilisation d’une variable entiere . . . . . . . . . . . . . . . . . 61.4 Trace et tableau de sortie . . . . . . . . . . . . . . . . . . . . . 71.5 Lecture au clavier d’une valeur . . . . . . . . . . . . . . . . . . 72 Identi cateur 73 Types prede nis 83.1 Type entier : integer . . . . . . . . . . . . . . . . . . . . . . 83.2 Type reel : real . . . . . . . . . . . . . . . . . . . . . . . . . . 83.3 Type caractere : char . . . . . . . . . . . . . . . . . . . . . . . 93.4 Type booleen : boolean . . . . . . . . . . . . . . . . . . . . . 104 Declarations 114.1 Constantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.2 Variables et a ectation . . . . . . . . . . . . . . . . . . . . . . 115 Expressions 125.1 Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125.2 Type des expressions bien formees . . . . . . . . . . . . . . . . 135.3 Regles d’evaluation . . . . . . . . . . . . . . . . . . . . . . . . 136 Nouveaux types 146.1 Type intervalle . . . . . . . . . . . . . . . . . . . . . . . . . . 146.2 Type enumere . ...

Sujets

Informations

Publié par
Nombre de lectures 42
Langue Français

Extrait

Algorithmes et programmation en Pascal
Faculte´desSciencesdeLuminy
Cours
Edouard Thiel
Deug 1 Mass MA Module de 75 heures a 1997 ` 2004
2Algorithmes et programmation en Pascal Tabledesmati`eres
I
II
III
Edouard Thiel
Les variables en Pascal 6 1 Premiers programmes 6 1.1 Le programme bonjour . . . . . . . . . . . . . . . . . . . . . . 6 1.2 Commentaires dans un programme . . . . . . . . . . . . . . . 6 1.3Utilisationdunevariableentie`re.................6 1.4 Trace et tableau de sortie . . . . . . . . . . . . . . . . . . . . . 7 1.5 Lecture au clavier d’une valeur . . . . . . . . . . . . . . . . . . 7 2 Identificateur 7 3Typespr´ede´nis8 3.1 Type entier :integer 8. . . . . . . . . . . . . . . .. . . . . . 3.2Typer´eel:real 8. . . . . . . . . . . . . . . . . . . . . . . . . . 3.3Typecaracte`re:char 9. . . . . . . . . . . . . . . . . . . . . . . 3.4Typeboole´en:boolean 10. . . . . . . . . . . . . . . .. . . . . 4D´eclarations11 4.1 Constantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 4.2 Variables et affectation . . . . . . . . . . . . . . . . . . . . . . 11 5 Expressions 12 5.1 Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.2Typedesexpressionsbienforme´es................13 5.3Re`glesd´evaluation........................13 6 Nouveaux types 14 6.1 Type intervalle . . . . . . . . . . . . . . . . . . . . . . . . . . 14 6.2Typeenumere´...........................15 ´ ´ 6.3D´eclareruntype.........................16 6.4 Type enregistrement . . . . . . . . . . . . . . . . . . . . . . . 17 Proce´dures18 1Proc´eduresansparam`etre18 1.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.2 Appels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.3 Variables locales . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4Porte´edesvariables........................20 1.5 Effet de bord . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 ´ 2Proce´dureparametr´ee20 2.1Pseudo-passagedeparam`etres..................20 2.2 Par ´trage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 ame 2.3 Comment ca marche . . . . . . . . . . . . . . . . . . . . . . . 22 ¸ 2.4Bonsr´eexes............................23 Les instructions en Pascal 24
CoursDeug1MassMA,1997`a20043 1Instructioncompose´e24 2 Les branchements 24 2.1Letestbool´eenif 25. . . . . . . . . . . . . . . . . .. . . . . . . 2.2S´electiondecasaveccase 26. . . . . . . . . . . . . .. . . . . . 3 Les boucles 27 3.1 La bouclewhile. . . . . . . . . . . . . . . . . . . . 27. . . . . . 3.2 La bouclerepeat. . . . . . .  28. . . . . . . . . . . . . . . . . . 3.3 La bouclefor. . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.4 Choix de la boucle . . . . . . . . . . . . . . . . . . . . . . . . 31 IV Fonctions 32 1Fonctionsansparam`etre32 1.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 1.2 Appel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 1.3 Variables locales . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2Fonctionavecparam`etres33 2.1Proce´durevsfonction.......................33 2.2 Passage de types enregistrement . . . . . . . . . . . . . . . . . 34 3Fonctionavecplusieursre´sultats34 4 Gestion d’erreurs 36 V Tableaux 38 1 Le typearray38 1.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 1.2Contrˆoledesbornes........................39 1.3 Recopie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2 Super tableaux 40 2.1Tableaux`aplusieursdimensions.................40 2.2 Tableaux derecord 41. . . . . . . . . . . . . . . . . .. . . . . . 3 Le typestring42 3.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.2 Operateurs sur les strings . . . . . . . . . . . . . . . . . . . . . 43 ´ VIFichiersse´quentiels44 1Leclavieretle´cran44 1.1 Affichage avecwrite 44. . . . . . . . . . . . . . . . .. . . . . . 1.2 Lecture avecread 45. . . . . . . . . . . . . . . . . .. . . . . . . 2 Fichiers de disque 47 2.1Notionsge´n´erales.........................47 2.2 Fichiers de texte . . . . . . . . . . . . . . . . . . . . . . . . . . 48 2.3Fichiersd´elements........................49 2.4 Gestion des erreurs . . . . . . . . . . . . . . . . . . . . . . . . 50
4
VII
Algorithmes et programmation en Pascal
Edouard Thiel
Algorithmes avec des vecteurs 1Recherches´equentielledune´le´ment 1.1Dansunvecteurnontrie´..................... 1.2Dansunvecteurtrie´....................... 2 La dichotomie 2.1 Le jeu des 1000 francs . . . . . . . . . . . . . . . . . . . . . . 2.2 Recherche dichotomique . . . . . . . . . . . . . . . . . . . . . 3 Tri d’un vecteur 3.1 Tri par remplacement . . . . . . . . . . . . . . . . . . . . . . . 3.2 Tri par permutation . . . . . . . . . . . . . . . . . . . . . . . . 3.3Tri`abulles............................ 3.4 Tri par comptage . . . . . . . . . . . . . . . . . . . . . . . . . Misea`jourdunvecteur 4.1Insertiondansunvecteurnontrie´................ 4.2Insertiondansunvecteurtri´e.................. 4.3 Suppression dans un vecteur no tri´ . . . . . . . . . . . . n e . . 4.4Suppressiondansunvecteurtri´e................. Tri par insertion
4
5
52 52 52 53 54 54 55 56 57 58 59 59 60 60 60 60 61 61
Cours
Deug
1
Mass
MA,
1997
a `
2004
5
6 ThielAlgorithmes et programmation en Pascal Edouard I. Les variables en Pascal
1 Premiers programmes 1.1 Le programme bonjour Unprogrammeestunesuitedinstructions,certainese´tantdesmotscl´es. Ceprogrammeachelachaˆınedecaracte`res«Bonjour»la`´ecran: PROGRAM bonjour; BEGIN writeln (’Bonjour’); END. Le compilateur est un logiciel qui lit (analyse) un programme et le traduit en code machine, directement executable par le processeur de l’ordinateur. ´ 1.2 Commentaires dans un programme On place un{commentaire}t´co`aouinneued-sunprdansmmaegoarsssu-ued truction. Lecommentairenestpasprisencompte`alacompilation.Ilsert`arendrele programmeplusclaira`lalecture,`anoterdesremarques,etc: { Edouard Thiel - 21/01/2003 } PROGRAM bonjour; BEGIN {AfficheBonjour`ale´cran} writeln (’Bonjour’); END. 1.3Utilisationdunevariableentie`re Unevariableestunezonedanslam´emoirevivedelordinateur,dote´edunnomet duntype.Lenomdelavariablepermetdacc´ederaucontenudelazonem´emoire; letypesp´ecielanaturedecequipeutˆetrestock´edanslazoneme´moire(entier, ´l,caract`ere,etc). ree Onacoutumederepre´senterunevariableparuneboıˆte;dessousonmetlenom, au dessus le type, et dans la boˆıte le contenu. Exemple avec une variable de nomaet de type entier : PROGRAM var_entiere; VAR a:integer;{De´claration} BEGIN a := 5; { Affectation } writeln (’valeur de a = ’, a); { Affichage : a = 5 } END.
Cours
Deug1MassMA,1997`a2004
7
La structure de ce programme est en 3 parties : le nom du programme, la partie de´clarations,etlecorpsduprogramme,quiestunesuitedinstructions. Lapartied´eclarationcr´eelesvariables(lesboˆıtes);leurcontenuestind´etermine´ (onmetun?danschaqueboˆıte).Latailledelazonem´emoiredechaquevariable estadapt´eeautype(parexemple1octetpouruncaracte`re,4octetspourunentier, etc). 1.4 Trace et tableau de sortie Latrace d’un programmeestobtenuelpneac¸aedtnswritelnpour que le pro-grammeachelesvaleursdesvariables`alex´ecution.Celasertpourmettreaupoint un programme en TP. Letableau de sortied’un programme est un tableau avec une colonne par va-riable,ou`lone´critle´volutiondesvariablespendantlede´roulementduprogramme. Demand´eenTDetexamen. 1.5 Lecture au clavier d’une valeur PROGRAM lit_ecrit; VAR a : integer; BEGIN write (’Entrez un entier : ’); { pas de retour chariot } readln (a); { Lecture } writeln (’valeur de a = ’, a); END.
2 Identificateur Serta`donnerunnomobunt.je`a Syntaxe O pp_ n a ellelettrect`ecarauneder’a’..’z’ou’A’..’Z’ou’ ’ . On appelledigittce`ereduncara’0’..’9’. UnidenticateurPascalestunesuitedelettresoudedigtae´s,comm¸ i ccol encant par une lettre. Exemples x,y1,jour,mois,annee,NbCouleurs,long _ ig ueur l ne. Remarques ..sucelmertneecnere´idusajtmselecuusinyapasdeIln .aplsnnaOredmettitdeedrotion.ceacs,ntdeniracae`tcdsernopeautc .Unidentictauedrioˆtteeridtdener´esse´cltsmo(begin,write,real . .), . On se sert des identificateurs pour : le nom du programme, les noms de variables, les noms de constantes, les noms de types.
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents