[PDF] Introduction au langage Pascal





Previous PDF Next PDF



Algorithmes et programmation en Pascal Cours

Les variables en Pascal Le nom de la variable permet d'accéder au contenu de la zone mémoire; ... teur : 16 pour Turbo Pascal 32 pour Delphi.



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.



PREMIÈRES LEÇONS DE PROGRAMMATION EN TURBO PASCAL

lycéens et débutants en informatique. Pascal



Maitrise Biologie des Populations et des Ecosystèmes Module

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



Introduction au langage Pascal

BEGIN readln(rayon); circonference:=rayon*2*3.1416 ; writeln(rayoncirconference);. END. Ce programme demande a un utilisateur de taper un nombre



Introduction à lalgorithmique ... Application au langage Pascal

Beaucoup de langages de programmation (Grafcet Calculatrice



Quelques éléments de syntaxe du langage Pascal

5 sept. 2005 En Pascal un identificateur doit débuter par une lettre et peut être poursuivi par n'importe quelle combinaison de lettres chiffres et blancs ...



Untitled

Exercice 12. Ecrire un programme Pascal intitulé EQUA_1D qui fait résoudre dans IR l'équation ax+b=0 pour tout couple de réels (a



Sources de programmes danalyse de données en langage

en langage PASCAL : (III) : élaboration de tableaux divers (IIIG) : codage d'échelles suivant l'équation personnelle. Les cahiers de l'analyse des données 



U.E. Informatique 1 Introduction au Turbo-Pascal

Le fichiers exécutable est dans le répertoire. “ C:Program FilesTPW ”. et se nomme TPW.EXE. donc pour lancer ce programme plusieurs méthodes : - en utilisant 

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

Introduction

au langagePascal 1

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

Contents

1Commenconsparunpetitexemple...3

2Lapartiedesdeclarations4

3Lapartiealgorithme6

4Contr^olede

ux7

5D'autrestypes13

6Lestableaux15

7Fonctionsetprocedures17

8Algorithmesrecursifs21

9Conclusion:Formed'unprogrammePascal30

2

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

1Commenconsparunpetitexemple...

PROGRAMcirconference;

VARrayon,circonference:REAL;

BEGIN readln(rayon); circonference:=rayon*2*3.1416; writeln(rayon,circonference); END. lespartieslesplusimportantes.

Ilyad'abordlesqueletteduprogramme:

PROGRAM...;

(*Calculdelacirconferenced'uncercle*)

VAR....;

BEGIN END. unprogramme.Ilsnesontpasfacultatifs; gramme. 3

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

2Lapartiedesdeclarations

2.1Lesdierentstypesdebase

VARrayon,circonference:REAL;

TRUE(vrai)ouFALSE(faux);

fairedesoperationsdessus!

2.2Lesoperationsquipreserventletype

pourvaleur:

1.17mod3apourvaleur2;

2.17div3apourvaleur5.

detypereal.

CHR(67)prendlavaleur'C';

CHR(51)prendlavaleur'3'.

Exercice:

xory. 4

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

xnyfalsetrue falsefalsetrue truetruetrue xnyfalsetrue falsefalsetrue truefalsetrue xORy xANDy xnotx falsetrue truefalse xnyfalsetrue falsefalsetrue truetruefalse notx xXORy

Figure 1:les op erationsbooleennes

2.3 Lesop erationsquirendentun typ eboolean

Il ya ici touteslesop erationsde comparaison<,>,<=,>= et<>(dierent). Oncompare entre elles deux expressionsd'un m^ emetype,sice typepeut^ etreordonn e. Ilestaussipossiblede comparerdes expressions det yperealavecdesexpressions det ype integer. Pourlescaract eres, onutilisel'ordredu codeASCI I.Parexemple :

CHR(60)< CHR(49) rendfalse;

3:5>= 3rend true;

3:0<>3 rendfalse.

5

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

3Lapartiealgorithme

readln(rayon); circonference:=rayon*2*3.1416; writeln(rayon,circonference);

3.1Interfaceavecl'utilisateur

Lesdeuxcommandes:

readln(rayon); writeln(rayon,circonference); pouruninteger:3;5;17;:::maispas3:5ou'A'; esttoujourspossibledelesecrire; pourleschar:3,A,',e,...,maispas'AA'.

3.2Lesaectations

circonference:=rayon*2*3.1416; ...:=rayon*2*3.1416 circonference:=... quiaetestockeedanscettevariable.

Ilfautnoterdeuxchoses:

6

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

4Contr^olede

ux

4.1Executionconditionnelle

Programvaleurabsolue;

nombre,valeurabsolue:real; begin readln(nombre); (*calculdelavaleurabsolue*) end. ifexpr booltheninst expr programmedevient:

Programvaleurabsolue;

Onutilisedeuxconditionnelles.

Varnombre,valeurabsolue:real;

begin readln(nombre); if(nombre>=0)thenvaleurabsolue:=nombre; if(nombre<0)thenvaleurabsolue:=-nombre; end. ifexpr booltheninst1elseinst2 7

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

Leprogrammedevientalors:

Programvaleurabsolue;

Onn'utiliseplusqu'uneconditionnelle

Varnombre,valeurabsolue:real;

begin readln(nombre); if(nombre>=0)then valeurabsolue:=nombre else valeurabsolue:=-nombre; end. valeurabsolue:=nombre quisuitl'instruction valeurabsolue:=-nombre

4.2Lesblocsd'instructions

lesinstructionsaveclaconstruction: begininst1;:::;instnend maintenant: 8

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

Programvaleurabsolue;

Varnombre,valeurabsolue:real;

begin readln(nombre); if(nombre>=0)then begin valeurabsolue:=nombre; writeln('Lenombreentreestpositif,'); writeln('doncilestegalasavaleurabsolue') end else begin valeurabsolue:=-nombre; writeln('Lenombreentreestnegatif,'); end; end.

4.3Lesbouclessurdestypesenumeres

d'autresdanslasuiteducours.

Exercice:

ProgramlettresAE;

OnacheleslettresdeAaE,uneparligne...

Onn'apasbesoindedeclarerdevariables.

begin writeln('A'); writeln('B'); writeln('C'); writeln('D'); writeln('E') end. 9

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

l'instruction seraex ecuteepourtouteslesvaleurs delavariable entre leminim umetlemaxim um dans l'ordrecroissan t.Onappelle lav ariableindicede lab oucle.Biens^ ur,cette instructionpeut^etre un bloc...Utilisonscette nouvelle construction:

ProgramlettresAEboucle;

On acheleslettres deA a E,en utilisant une

boucle.

Varlettre :char;

begin forlettre :='A' to'E'do writeln(lettre) end. Exercice :Ecrire tousles motsde exactement 3lettres ecrisav ecles lettresde 'A'a'E'. Cette fois-ci,ceserait unp eulong d' ecrireleslignes ala main(ilyena125).

Programmotstroislettres;

On achelesmots detrois lettresen utilisant trois

bouclesles unesdans lesautres. Ily aune boucle pour lapremi ere lettre, unep ourladeuxi eme,une pourlatroisieme.

Varlettre1, lettre2,lettre3 :char;

begin forlettre1 :='A' to'E'do forlettre2 :='A' to'E'do forlettre3 :='A' to'E'do writeln(lettre1,lettre2,lettre3) end. Les boucles\for" sontutilesmais ilfaut prendrequelques pr ecautionsquand onles utilise:

1. ilne fautjamais changer lav aleurdel'indiced'une boucle dansl'instruction.

Si ille faut,on utiliseraune autrev ariablequi prendla valeur del'indice;

2. Lav aleurdel'indiceest limit ee al'instruction delaboucle.C'estune variable

muette. Ne passuivre lapremi ere reglepeutdonner unprogrammevalide(quimarc hebien),maisil ya des risques d'erreurset ilest possible derendre leprogrammeincompr ehensible.P arexemple, quefait la boucleforsuivante: 10

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

Programmauvaiseboucle;

Exempledeprogrammeouonchangelevaleurde

l'indiceal'interieurd'unebouclefor

Varlettre1,lettre2,lettre3:char;

begin forlettre1:='A'to'E'do begin writeln(lettre1);lettre1:='A'end end.

4.4Lesboucleswhileetrepeat

combiended'iterationilfaudrafaire. b)Tantquejf(xn)j>,calculer: x n+1=xnf(xn) f0(xn) nf(x ) xxnn+1 whiledo 11

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

1.(a)testersilaconditionestvraie;

2.(a)testersilaconditionestvraie;

3.... unblocbegin...end; vraie). 12

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

5D'autrestypes

precisiondanslenommagedesvariables.

5.1Typesenumeresnonstandards

peutfaireunetable: lundi=0 mardi=1 typeentier: touslestypesenumeres: 0); denis.Onnesaitpascequ'ilsvalent; lesoperateursdecomparaison; lesbouclesfor;

5.2Lestypesintervalles

detravail: typejourtravail=lundi..vendredi

Onpeutaussidenirlesminuscules:

typeminuscule='a'..'z' outouteautresortedetype... 13

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

5.3L'instructionCASE

l'instructioncase:

CASEOF

listedecas1:instruction1; listedecas2:instruction2; :::listedecasN:instructionN plusieurstypes:

1.unevaleur,parexemplemardi;

samedi,lundi;

3.unintervalle:jeudi..samedi.

Exercice:

majuscule,unchireouautrechose. 14

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

6Lestableaux

Pourdeniruntableau,ilfautdeuxchoses:

2.letypedesvaleursqu'ilcontient.

delasemaine: horaires[mercredi]:=5 cours:=horaires[lundi] etc.

6.1Lestableauxdetableaux

unematrice3x3:

Cequipeutaussis'ecrire:

Varmatrice:Array[1..3,1..3]ofreal

6.2Lestypesdetableaux

Typevecteur:Array[1..3]ofreal;

matrice:Array[1..3,1..3]ofreal;

Varu,v:vecteur;

M:matrice;

6.3Lescha^nesdecaracteres

15

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

6.4Lesconstantes

Constdimension=3;

pi=3.1415; message='Bienvenue.';

Typevecteur=Array[1..dimension]ofreal;

Varu,v:vecteur;

M:matrice;

16

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

7Fonctionsetprocedures

7.1Introduction

ulierementinteressantdanslescassuivants: programme; pourpouvoirleschangerplusfacilement. pasd'erreurs).

7.2Declarationdesfonctions,ranement

3x3donneeparl'utilisateur:

pi=3.1415; message='Bienvenue.';

Typevecteur=Array[1..dimension]ofreal;

Varu,v:vecteur;

M:matrice;

det: oat; (*declarationsdesfonctionsetprocedures*) begin

Entrermatrice(M);

det:=Calculdeterminant(M); end. quetoutmarchebien.

7.3Lesprocedures

17

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

Varliste;

begin listed'instruction end; a:

Procedureligne(n:integer);

Vari:integer;

begin fori:=1tondo write('*');(*achesansalleralaligne*) writeln(*vaalaligne*) end; ...function f(a,b:integer):integer; x:=11; y:=f(x,17); ...function f(a,b:integer):integer; x:=11; y:=f(x,17); function f(a,b:integer):integer; begin f:=a+b end;on met la valeur 17 dans la variable b on met la valeur de x dans la variable a on met le résultat dans le nom de la fonction, puis on termine la fonction et enfin on met la valeur de f dans la variable y.

ProcedureEntrermatrice(VarM:matrice);

Vari,j:integer;

begin (*instructions*) end;; 18

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

procedure f(M : matrice);var mat : matrice; begin end.f(mat) procedure f(M : matrice);var mat : matrice; begin end.f(mat) beginprocedure f(var M:matrice); end; M[1,1]:=1;... ...Dans le corps de la procédure f, M est un alias pour la matrice mat on fait un changement de M, donc on va changer la matrice mat qui est en dehors de la procédure. variablesentredierentsappelschangent.

7.4Lesfonctions

pasdetableau).Ilfaut:

Onutiliseladeclarationsuivante:

Varliste;

begin; :=:::;end; resultat.

1.dequellesproceduresa-t-onbesoin?

2.lesquellesmodientleursarguments?

3.ecrirecesprocedures.

19

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

20

Deug TI 1A

Yannick Chevalier

UNIVERSITE HENRI POINCARE - NANCY I, 2000/2001

8Algorithmesrecursifs

8.1Desexemplesbienconnus

c'estasia=b.

Functionpgcd(a,b:integer):integer;

(*fonctionquicalculelepgcddeaetb*) begin if(a<0)thena:=-a; if(b<0)thenb:=-b; if(a=0)then pgcd:=b else if(b=0)then pgcd:=b else while(a<>b)do if(aFunctionfactorielle(a:integer):integer;

Vartemp,indice:integer;

(*fonctionquicalculelafactorielledea*) begin temp:=1; forindice:=1toado temp:=temp*indice; factorielle:=temp;quotesdbs_dbs46.pdfusesText_46
[PDF] langage pascal pour debutant pdf

[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