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,
sourisUnités de
stockageComment 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$.L4callFPC_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 racinesForme 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 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 guillemetExemple : 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*cSi 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éelsDébut du programme
Écrire " Entrez les coefficients a, b, c »Lire a, b, c delta <- b*b-4*a*cSi delta<0 Alors
Écrire " delta<0, pas de solution dans R »SinonSi 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 86 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 ...)SiFinIf Then
If Then
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 entierDé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 entierDébut du programme
Écrire " Entrez un nombre : »
Si nombre<0 alors
Écrire " Nombre négatif »
SinonSi 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
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èreDé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 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