[PDF] [PDF] Algorithmes et programmation en Pascal Cours

Entier signé en complément `a deux sur 16 ou 32 bits, selon machine et compila- teur : 16 pour Turbo Pascal, 32 pour Delphi Sur 16 bits, `a valeur dans −32 768  



Previous PDF Next PDF





[PDF] Algorithmes et programmation en Pascal Cours

Entier signé en complément `a deux sur 16 ou 32 bits, selon machine et compila- teur : 16 pour Turbo Pascal, 32 pour Delphi Sur 16 bits, `a valeur dans −32 768  



[PDF] Algorithmes et programmation en Pascal TD corrigés

Algorithmes et programmation en Pascal Faculté des Sciences de Luminy Sous Turbo Pascal, vu que maxint = 32767, on aurait dû déclarer ns comme un



[PDF] Algorithmique et programmation Pascal

Ecriture d'un programme qui consiste `a traduire un algorithme pour une machine dans un langage de programmation donné, ici le Pascal Définition 1 1



[PDF] Tutoriel Pascal

Ce Tutorial en langage Pascal est destiné à vous guider dans vos premier pas dans la programmation Il est difficile, et pour tout dire vain et inutile, de 



[PDF] Cours et exercices corrigés en Pascal - CHIHI Lotfi

En DEUG A, les premiers cours d'informatique commencent traditionnellement par des notions d'algorithmique et l'apprentissage d'un langage de programmation 



[PDF] cours free pascal - D DUBOIS, ESTIT

Le Pascal est facile à enseigner et à apprendre : il permet d'écrire des un langage de programmation, ici le langage Pascal, permettant de produire des 



[PDF] Le langage PASCAL - Patrick TRAU

Néanmoins le Pascal reste bien meilleur pour le débutant et le programmeur moyen : parfaitement structuré et clair, il conduit rapidement à un programme de  



[PDF] le Langage PASCAL - Free

pour bien programmer en C) De plus le C est plus utilisé dans mon environnement d'informaticiens Néanmoins le Pascal reste bien meilleur pour le débutant 

[PDF] langage pascal site du zero

[PDF] langage poétique définition

[PDF] langage programmation facebook

[PDF] langage python en seconde

[PDF] Langage soutenu - URGENT

[PDF] langage soutenu dictionnaire

[PDF] langage soutenu mots

[PDF] language de la continuité- limite

[PDF] Language HTML

[PDF] Language sql exercice de maison

[PDF] Language tools

[PDF] langue allemande dans le monde

[PDF] langue et détrôner

[PDF] Langue étrangere

[PDF] langue latine liste

AlgorithmesetprogrammationenPascal

FacultedesSciencesdeLuminyEdouardThiel

Cours

Deug1MassMA

Modulede75heures

1997a2004

Tabledesmatieres

ILesvariablesenPascal6

1Premiersprogrammes6

2Identicateur7

3Typespredenis8

4Declarations11

5Expressions12

6Nouveauxtypes14

IIProcedures18

1Proceduresansparametre18

2Procedureparametree20

2.4Bonsre

exes............................23

IIILesinstructionsenPascal24

CoursDeug1MassMA,1997a20043

1Instructioncomposee24

2Lesbranchements24

3Lesboucles27

IVFonctions32

1Fonctionsansparametre32

2Fonctionavecparametres33

3Fonctionavecplusieursresultats34

4Gestiond'erreurs36

VTableaux38

1Letypearray38

2Supertableaux40

3Letypestring42

VIFichierssequentiels44

1Leclavieretl'ecran44

2Fichiersdedisque47

VIIAlgorithmesavecdesvecteurs52

1Recherchesequentielled'unelement52

2Ladichotomie54

3Trid'unvecteur56

4Miseajourd'unvecteur60

5Triparinsertion61

CoursDeug1MassMA,1997a20045

I.LesvariablesenPascal

1Premiersprogrammes

1.1Leprogrammebonjour

PROGRAMbonjour;

BEGINwriteln('Bonjour');END.

1.2Commentairesdansunprogramme

truction.

1.3Utilisationd'unevariableentiere

reel,caractere,etc). audessusletype,etdanslabo^telecontenu.

PROGRAMvar_entiere;

CoursDeug1MassMA,1997a20047

etc).

1.4Traceettableaudesortie

unprogrammeenTP.

DemandeenTDetexamen.

1.5Lectureauclavierd'unevaleur

PROGRAMlit_ecrit;

VARa:integer;BEGIN

END.

2Identicateur

Sertadonnerunnomaunobjet.

Syntaxe

Onappelledigituncaracterede'0'..'9'.

parunelettre.

Exemples

Remarques

lesnomsdeconstantes,lesnomsdetypes.

3Typespredenis

3.1Typeentier:integer

teur:16pourTurboPascal,32pourDelphi.

Operateurssurlesentiers:

abs(x)valeurabsoluedejxj. pred(x)x1. succ(x)x+1. odd(x)truesixestimpair,falsesinon. sqr(x)lecarredex. +xidentite. -xsigneoppose. x+yaddition. x-ysoustraction. x*ymultiplication.

Remarques

yestnul.

3.2Typereel:real

1001:
base10

0;30;61;20;40;81;6

base20;01001

CoursDeug1MassMA,1997a20049

Exemples

dereal x*y. tablesuruninteger,ilyadebordement.

3.3Typecaractere:char

etc,estcodesurunoctetnonsigne. par97,''par32,'{'par123,etc. semi-graphiques.

Lesoperateurssurlescharssont:

Remarque

Exemple

PROGRAMcaracteres;VARc,d:char;

a:integer;BEGINc:='F';

Exercice

Divers

{Lecaractereapostrophesenote''''.

3.4Typebooleen:boolean

Utilisepourlesexpressionslogiques.

Deuxvaleurs:false(faux)ettrue(vrai).

Exemple

{Declaration} moyen:=true;grand:=not(petitormoyen);

Tabledeverite

decesoperateurs xy notxxandyxory truetruefalsetruetrue truefalse falsefalsetrue falsetrue truefalsetrue falsefalse truefalsefalse booleens):

Leresultatd'unecomparaisonestunbooleen.

approximativementa(1x),,+.

CoursDeug1MassMA,1997a200411

4Declarations

4.1Constantes

Syntaxe

identificateur=valeur_constante; ou identificateur:type=valeur_constante; caracteres(plusieurs).

Exemple

PROGRAMconstantes;CONST

VAR{variables}BEGIN

{instructions}END.

4.2Variablesetaectation

Syntaxe

identificateur:type;

Exemple

VARa,b,c:integer;

BEGIN{Partieinitialisation}

END.

5Expressions

afonctionoudessous-expressions.

Exemple

chaquelignecontientuneexpression: 5 x+3.14

2*cos(x)(x2*(x+1))

5.1Syntaxe

Certainsoperateursagissentsur2operandes:

operande1operateur_binaireoperande2 etd'autresagissentsur1operande: operateur_unaireoperande

Lesoperateursbinairessont:

{operateursderelation=<><=<>>= {operateursadditifs+-or {operateursmultiplicatifs*/divmodand

Lesoperateursunairessont:

{operateursdesigne+- {operateurdenegationnot desvirgules.

CoursDeug1MassMA,1997a200413

5.2Typedesexpressionsbienformees

echouera. pression.

Exemple

(round(r+1)>(i/e))or(c<'a') booleenz booleenz entierz round( reelz reelz}|{r+entierz}|{1)>(reelz}|{

Remarque

5.3Reglesd'evaluation

parcequele*estprioritaireparrapporta+. m^emeligneayantuneprioriteegale. ()fonction()primaire +-notunaire */divmodandmultiplicatif +-oradditif =<><<=>=>relation

Remarque

erreurclassique. quiestfaux.

6Nouveauxtypes

6.1Typeintervalle

Syntaxe

N..M rieuresdel'intervalle,NetMinclus.

Exemple

Remarques

ordinal. declarer'aaa'..'zzz'.

CoursDeug1MassMA,1997a200415

Bonnehabitude

ecritesqu'uneseulefois.

Exemple

CONST

PMin=0;PMax=100;VAR

END.

6.2Typeenumere

Exemple

BEGIN{...}iffeux=0

thenArreterelseiffeux=1thenRalentir elseiffeux=2{...}END. valeursdecode: VAR iffeux=RougethenArreterelseiffeux=Orange thenRalentirelseiffeux=Vert{...} END. toujourslavaleur0). pasdejaexister. succ(Orange)estVert,ord(Orange)est1).

6.3Declareruntype

typesentrelesmotsclesTYPEetVAR.

Syntaxe

nom_du_type=type;

Exemple

feux:couleurs_feux_t; char.

Exemplecomplet

PROGRAMportrait;

END.

Remarque

CoursDeug1MassMA,1997a200417

6.4Typeenregistrement

T2,...dansunevariable.

Syntaxe

RecordV1:T1;

V2:T2;{...}End;

r.V2,...

Reprenonsl'exempleduprogrammeportrait.

{...}TYPE{...} yeux:yeux_t;End;VAR bob,luc:personne_t;BEGINbob.taille:=180; END.

Remarque

der2dansr1enecrivant:r2:=r1; risquepasd'oublierunchamp.

Inter^etdecetype

Remarquegenerale

doncT1doit^etredeclareavantT2.

II.Procedures

unprogrammeenplusieursmorceaux. generalaudetail.

1Proceduresansparametre

1.1Principe

foisl'executiondecegrouped'instructions.

Exemple

PROGRAMexemple1;VARx,y,t:integer;

BEGIN{Corpsdelaprocedure}t:=x;x:=y;y:=t;

END; BEGIN writeln(x,'',y);END.

Ceprogrammeache

34
43
34

Remarques

.Lenomdelaprocedureestunindenticateur.

CoursDeug1MassMA,1997a200419

1.2Appels

Exemple

donnantlem^emeresultat.

PROGRAMexemple2;

VARx,y,t:integer;

PROCEDUREAffiche_xy;BEGIN

writeln(x,'',y);END;

PROCEDUREEchange_xy;BEGINt:=x;x:=y;y:=t;

Affiche_xy;END;

BEGINx:=3;y:=4;Affiche_xy;

Echange_xy;

Echange_xy;END.

Remarque

l'onn'etudierapasdanscemodule.

1.3Variableslocales

Exemple

Reprenonsexemple1etchangeonst:

PROGRAMexemple3;VARx,y:integer;

BEGINt:=x;x:=y;y:=t;END;

BEGIN{...}

END. etnesertqueacetteprocedure. !Ameliorelalisibiliteduprogramme.

1.4Porteedesvariables

partout.

Exemple

PROGRAMexemple4;

VARx:integer;

PROCEDUREToto;

VARx:integer;BEGINx:=4;

writeln('totox=',x);END;

BEGINx:=2;writeln('globx=',x);

Toto; writeln('globx=',x);END.

Ceprogrammeache

globx=2 totox=4 globx=2

1.5Eetdebord

Voicilescenariocatastrophe:

Alacompilationtoutvabien!

voulu. changerdevaleurtoutseul!

2Procedureparametree

2.1Pseudo-passagedeparametres

CoursDeug1MassMA,1997a200421

PROGRAMexemple5;VARx,y,z,a,b,c,d:real;

PROCEDUREProduit;BEGINz:=x*y;

END;

BEGINwrite('ab?');readln(a,b);

x:=a;y:=b;{donnees}Produit; c:=z;{resultat} x:=a-1;y:=b+1;{donnees}Produit; d:=z;{resultat} writeln('c=',c,'d=',d); END.

Remarques

.L'ecritureestunpeulourde. laprocedure;sinongareauxeetsdebord!

2.2Parametrage

PROGRAMexemple5bis;

VARa,b,c,d:real;

BEGINz:=x*y;END;

BEGINwrite('ab?');readln(a,b);

writeln('c=',c,'d=',d);END.

2.3Commentcamarche

etdansuncertainordre(iciapuisbpuisc). [Dessinerdes ^echesa!x,b!y,c!z] parreference. (zonememoire)quea). reference(presenceduvar). ^echec !z]

Erreursclassiques

enparametre. delaprocedure.

Exemples

d'erreursal'appeldeProduit(a-1,b+1,d); expressionquiestpassee.

PROCEDUREProduit(x,y,z:real);

variablesdistinctes.

Porteedesvariables:

riableslocalesaProduit.

CoursDeug1MassMA,1997a200423

pilation.Exemple: END;

2.4Bonsre

exes globales. alaprocedure,surtoutpasglobale. leseetsdebords. dem^emetype.

III.LesinstructionsenPascal

1Instructioncomposee

surdesobjets.

Instructiondejavues

{a:=5aectation {writeln('Bonjour')achage {readln(x)lecture {ma_procedure(parametres)appelprocedure

Plusgeneralement

SoientI1,I2,etc,desinstructions.

{ifexprthenI1 {whiletestdoI1 {etc uniqueenl'encadrantentreunbeginetunend beginI1;I2;I3;end

Inter^et

OnveutfaireI1puisI2dansunif.

z ifBthenz}|{I1;z}|{I2;z}|{ ifBthenz}|{ beginz}|{I1;z}|{I2;end; (onmetdesaccoladessurlesinstructions).

2Lesbranchements

CoursDeug1MassMA,1997a200425

2.1Letestbooleenif

Syntaxe

ifBthenI1; ifBthenI1elseI2; executee.quotesdbs_dbs46.pdfusesText_46