[PDF] Introduction à lalgorithmique ... Application 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 

Introduction à l'algorithmique ...... Application au langage Pascal(c) F. Bonnardot, Février 2005

Qu'est ce qu'un algorithme ?Qu'est ce qu'un algorithme ?Définition :Ensemble d'instructions qui permettent à une personne ou à une machine d'obtenir à partir de données la solution

d'un problème en un nombre fini d'étapes.Exemple :Calcul des racines x1 et x2 d'un polynôme du second ordre : ax2+bx+c dans R.Algorithme :Calcul des racines d'unpolynôme du 2nd ordreCoefficientsa, b et cRacinesx1 et x2

Comment obtenir les données ? Comment obtenir les données ? Indiquer les résultats ?Indiquer les résultats ?Algorithme :Calcul des racines d'unpolynôme du 2nd ordreCoefficientsa, b et cRacinesx1 et x2

Sorties :Écran, Haut-parleur, Fichier sur disque, Imprimante, Variable en mémoire, ...Entrées :Clavier, Micro, Scanner, Webcam, Fichier sur disque, Variable en mémoire, ...Unité centrale

Imprimante

Scanner

Ecran, clavier,

souris

Unités de

stockage

Comment décrire l'algorithme ? Comment décrire l'algorithme ? (1/2)(1/2)Langage machine :Suite de nombres directement compréhensibles par l'ordinateur.Assembleur :Suite de commandes qui seront directement traduites en langage machine.program_init:

pushl%ebp movl%esp,%ebp subl$4,%esp movb$1,U_SYSWIN32_ISCONSOLE callFPC_INITIALIZEUNITS .L4: lealU_SYSWIN32_OUTPUT,%edi movl%edi,-4(%ebp) pushl.L9 pushl-4(%ebp) pushl$0 callFPC_WRITE_TEXT_ANSISTR pushl-4(%ebp) callFPC_WRITE_END pushl$.L4

callFPC_IOCHECKProblèmes :Jeu d'instruction de l'ordinateur limité(beaucoup de texte à écrire)Instructions différentes d'un µP à l'autre(re-écrire pour chaque µP)Code difficile à lireAvantage : rapidité, ...

Comment décrire l'algorithme ? Comment décrire l'algorithme ? (2/2)(2/2)Langages de haut niveau :Langage proche du langage parlé (par les anglophones).Avantages :Indépendant de l'ordinateur (+ ou -)(fonctionne sur PC, Mac, Unix, ...)Lisibilité accrueInstructions " assez performantes »écriture sur l'écran, lecture de texte, ...Program Chiffre;

{ Demande de saisir un chiffre et recopie ce chiffre } Var a : integer; { Chiffre lu } Begin { Demande du chiffre } write ('Entrez un chiffre : ');readln (a); { Recopie le chiffre } writeln ('Vous avez tapé ',a); End.

CompilateurLangage de

haut niveauLangage machineExécutableOn utilise un compilateur pour traduire le programme en langage machine.

Quel langage ?Quel langage ?Beaucoup de langages de programmation (Grafcet, Calculatrice, C++, ...)On étudiera ici le PascalN.B. : Delphi permet de programmer windows en PascalMéthode :1°) On écrit d'abord l'algorithme en Français (pseudo-langage)=> On réfléchit (étape d'analyse)2°) On le traduit ensuite en Pascal=> On adapte pour un ordinateur et un langageL'étape 1 est la plus difficile... => livres d'algorithmieL'étape 2 est la plus facile => Livres d'apprentissage de Pascal, C++, ...

Exemple : Racines d'un polynôme Exemple : Racines d'un polynôme du second ordre dans R (1/4)du second ordre dans R (1/4)Analyse :D'après le cours de maths de 1èreOn calcule D=b²-4acSi D<0 alors pas de racine dans RSi D=0 alors racine double x=-b/(2a)Si D>0 alors deux racines :x1=-[b-sqrt(delta)]/(2a)x2=-[b+sqrt(delta)]/(2a)Algorithme :Calcul des racines d'unpolynôme du 2nd ordreCoefficientsa, b et cRacinesx1 et x2

Étape 1 : Demander à l'utilisateurde saisir a, b et cÉtape 2 : Calcul de D Étape 3 : Selon D calcul et affichagedes racines

Forme simplifiée d'un programmeForme simplifiée d'un programmeRemplacer les < >Remplacer les < >Programme

Variables utilisées :

: ; , :

Début du programme

Fin du programme

Program ;

Var : ; , : ; ; Begin ; ;

End.En Pascal,Pas d'accent ni d'espacepour les nomset les instructions.Chiffres utilisablesà partir du 2nd

caractère.

Exemple : Racines d'un polynôme Exemple : Racines d'un polynôme du second ordre dans R (2/4)du second ordre dans R (2/4)Étape 1 : Demander à l'utilisateurde saisir a, b et cÉtape 2 : Calcul de D

Étape 3 : Selon D calcul et affichagedes racinesInstruction : LireLire a, b, cÉcriture en pseudo-langage :Utilisation de 4 variables identifiées a, b, c et deltaInstruction : ÉcrireÉcrire " Bonjour »

Affectation :delta <- b*b-4*a*c

Instruction : ÉcrireÉcrire " Delta= »,delta Texte à écrire entre guillemetsValeur de la variable delta : pas de guillemet

Exemple : Racines d'un polynôme Exemple : Racines d'un polynôme du second ordre dans R (3/4)du second ordre dans R (3/4)Programme Racines Polynôme ordre 2Variables utilisées :a,b,c,delta : nombres réels

Début du programmeÉcrire " Entrez les coefficients a, b, c »Lire a, b, c delta <- b*b-4*a*c

Si delta<0 Alors

Écrire " delta<0, pas de solution dans R »SinonSi delta=0 Alors

Écrire " Racine double : x1= »,-b/2/a

SinonDébutÉcrire " delta>0, deux racines »Écrire " x1= »,-(b-sqrt(delta))/2/a

Écrire " x2= »,-(b+sqrt(delta))/2/a

FinFin du programmeNom du programmeType des variablesNom des variablesTestDécalage pourplus de lisibilitéToute variableutilisée doit êtredéclarée (permet dedétecter les fautes defrappe)

Exemple : Racines d'un polynôme Exemple : Racines d'un polynôme du second ordre dans R (4/4)du second ordre dans R (4/4)Programme Racines Polynôme ordre 2

Variables utilisées :

a,b,c,delta : nombres réels

Début du programme

Écrire " Entrez les coefficients a, b, c »Lire a, b, c delta <- b*b-4*a*c

Si delta<0 Alors

Écrire " delta<0, pas de solution dans R »Sinon

Si delta=0 Alors

Écrire " Racine double : x1= »,-b/2/aSinonDébutÉcrire " delta>0, deux racines »Écrire " x1= »,-(b-sqrt(delta))/2/a

Écrire " x2= »,-(b+sqrt(delta))/2/a

FinFin du programmeProgram RacPoly;

Vara,b,c,delta : real;BeginWrite('Entrez les coefficients a, b, c');Read (a, b, c); delta := b*b-4*a*c; If delta<0 ThenWriteLn ('delta<0, pas de solution dans R') ElseIf delta=0 ThenWriteLn ('Racine double : x1= ',-b/2/a)

ElseBegin

WriteLn ('delta>0, deux racines');

WriteLn ('x1= ',-(b-sqrt(delta))/2/a);

WriteLn ('x2= ',-(b+sqrt(delta))/2/a);

End; End.

DémonstrationDémonstration

QuelquesQuelques types de données types de donnéesNombresRéels (-1.6e-4, 3.1415926...) : Real en Pascal

Étendue : 5.0E-324 à 1.7E308 sur µP 32 bits intelPrincipe : -1.6e-4 => 2 entiers : -0.16 et -3Entiers relatifs (-1, 54, ...) : Integer en PascalÉtendue : -231 à 231-1 (µP 32 bits) ; -215 à 215-1 (16 bits)231=2 147 483 648(231-1)+1=-231TexteChaîne de caractères ('Bonjour') : String en PascalVecteurs1 seul Caractère ('B') : Char en Pascal

Tableau 1D ([5 8 2 5]) : Array [1..4] of Real

MatricesTableau 2D ([ ]) : Array [1..2,1..3] of Real[8 5 8

6 1 0]

Exemple d'utilisation : voir page suivante ...LogiqueBooléen (True ou False) : Boolean en Pascal215=32 768

Utilisation de différents types deUtilisation de différents types dedonnées en Pascaldonnées en PascalProgram Donnees;

{ Programme de démonstration des types de données } {Variables utilisées } Var punit,ptot:real; (* prix unitaire, prix total *) quantite :integer; (* quantité commandée *) tva :real=0.206; (* tva *) reference :string; (* référence produit *)

b:array [1..3] of real; (* vecteur à 3 éléments*) c:array [1..3] of real=(1,5,9); (* vecteur à 3 éléments*) A:array [1..2,1..3] of real; (* matrice 2x3 *)

Begin punit:=1.30; quantite:=3; reference:='Stylo'; { Calcul du prix total } ptot:=quantite*punit; { Affiche le prix total } writeln ('Prix total de ',reference,': ',ptot); b [1]:=23;

A [2,1]:=9.9e3;

End.

Comment commenter un Comment commenter un programme en Pascalprogramme en PascalProgram ResistanceCu;

{ Ce programme calcul la résistance d'un fil de cuivre à partir de sa longueur et de la section } { Auteur : Frédéric Bonnardot } Uses WinCrt; { Uniquement pour Turbo Pascal Windows de Borland } Var section, longueur : real; { nombres saisis par l'utilisateur } resistance : real; { resistance du fil } begin { Lecture de la section et de la longueur du fil } write ('Section du fil de cuivre en mm2 : '); readln (section); write ('Longueur du fil de cuivre en m : '); readln (longueur); { Calcul } { Affichage du résultat } write ('La résistance du fil est : ',resistance:6:1,' mohms'); end. InstructionsInstructionsLes tests (si ... alors ...)Les tests (si ... alors ...)Si alors 2 variantes :Si alors sinon 1 seuleinstruction plusieursinstructionsDébut

FinIf Then

If Then

Else En Pascal :En Pascal : : (a=1 ou b≥2) et c≠1 s'écrit en Pascal (a=1 or b>=2) and c<>1 Begin ; ; End

Exemple de testExemple de testOn demande un nombre et on indique si il est positif ou négatifProgramme Signe nombre

Variables utilisées :

nombre : nombre entier

Début du programme

Écrire " Entrez un nombre : »

Lire nombre

Si nombre<0 alors

Écrire " Nombre négatif »

Sinon

Écrire " nombre positif ou nul»

Fin du programmeEtapes : 1) Demander le nombre 2) Selon le signe écrire positif ou négatifBesoins : une variable pour ranger le nombreProgramme Signe nombre v2

Variables utilisées :

nombre : nombre entier

Début du programme

Écrire " Entrez un nombre : »

Si nombre<0 alors

Écrire " Nombre négatif »

Sinon

Si nombre>0 alors

Écrire " nombre positif »

Sinon

Écrire " nombre nul »

Fin du programmeSi on considère que 0 est positif :Sinon :

InstructionsInstructionsLa sélection (selon ... faire)La sélection (selon ... faire)Selon

cas faire cas , faire autres cas faire

Fin selon

Case Of

: ; , : ;

Else

EndEn Pascal :FacultatifCase touche Of

'+' : WriteLn ('Somme : ',a+b); '*' : WriteLn ('Produit : ',a*b);

Else WriteLn ('Touche inconnue.')

EndExemple :

Exemple d'utilisation de selonExemple d'utilisation de selonOn lit deux nombres et on affiche un menu pour demander à l'utilisateursi il veut calculer la somme, le produit, le quotient de ces deux nombres.Programme Opérations

Variables utilisées :

a,b : nombres réels touche : caractère

Début du programme

{ Lecture des données}

Écrire " Saisir 2 nombres a et b »

Lire a,b

{ Affichage du menu }

Écrire " Pour calculer la somme, tapez + »

Écrire " Pour calculer le produit, tapez * » Écrire " Pour calculer le quotient, tapez / » touche <- touche enfoncée au clavier { Réaction selon cette touche }

Selon touche

cas '+' faire Écrire " La somme est »,a+b cas '*' faire Écrire " Le produit est »,a*b cas '/' faire Écrire " Le quotient est »,a/b autres cas faire Écrire " Je n'ai pas compris ce que vous voulez faire »

Fin Selon

Fin du programme

InstructionsInstructionsRépétition (faire ... jusqu'à)Répétition (faire ... jusqu'à)Faire

Jusqu'à En Pascal :Repeat

WriteLn ('Entrer un nombre supérieur à 7 : ');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