Accueil
Rechercher:
sur developpez.com sur les forums
Forums | Tutoriels | F.A.Q's | Participez | Hébergement | Contacts
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi MS-Office SQL & SGBD Oracle  4D  Business Intelligence
ACCUEIL PASCAL FORUM PASCAL F.A.Q PASCAL TUTORIELS PASCAL SOURCES COMPILATEURS OUTILS LIVRES

Les fonctions de base

 

Règles de bases :

    Le langage pascal (Turbo en est une extension qui ajoute la programmation orientée objet) est créée à partir de mots en américain : begin, produre, function, end, ... Je vous propose d'en apprendre les principales. Pour commencer, sachez que ce langage ne fait pas la distinction entre les majuscules et les minuscules : BeGIN, begin, BEGIN, bEgIn sont tous exacts. Le retour à la ligne n'est pas obligatoire, seul le point virgule ";" l'est pour délimiter les fonctions (mais l'éditeur de texte de Turbo Pascal 7.0 demande à ne pas écrire de lignes trop longues tout de même), c'est à dire : 

var i: LongInt; begin for i := 0 to 9 do begin WriteLn (i,' ',chr(i)); Writeln (i,'² = ',i*i); end; end.

est accepté, ... mais illisible à mon goût, un compilateur informatique, le préfèrera peut-être à :

var
  i: LongInt;
begin
  for i := 0 to 9 do begin
    Writeln (i,' ',chr(i));
    Writeln (i,'² = ',i*i);
  end;
end.

    Personnellement j'utilise des majuscules, un retour à la ligne après chaque fonction et j'ajoute 2 espaces au début de chaque groupe d'instructions. C'est plus agréable à lire, et ça facilite la compréhension du programme.

Fonctions begin, end, procedure et WriteLn :
    La fonction "begin" est la fonction mère d'un programme : tout programme commence par "begin", qui d'ailleurs signifit "commence" en américain. La fonction "end" (fin) est obligatoirement complémentaire de "begin", cette fonction clôt la procédure. Voici un exemple (c'est toujours plus parlant) :

procedure Aurevoir;
begin
  Writeln ('Aurevoir');
end;

begin
  Writeln ('Salut toi !');

  Aurevoir;
end.
(Téléchargez l'exemple : Salut.pas)

Vous voyez donc que la fonction "begin" indique que le code (les instructions) commence et la fonction "end" clôt ce code. Remarque : la fonction "end" est terminée par ";" (fin d'instruction), sauf pour l'ultime "end", celui qui ferme le programme, il est suivit par un point : "end.". Mais revoyons ce court programme :

procedure Aurevoir;
begin
  Writeln ('Aurevoir');
end;

begin
  Writeln ('Salut toi !');

  Aurevoir;
end.


   
Le texte sur fond vert (begin ...), est la procédure principale, elle n'est pas déclarée par la fonction "procedure Principale;", on la distingues des autres procédures car c'est la dernière procédure du code source et elle se termine par "end." (et non "end;").
    Le texte sur fond jaune (procedure ...) est une procédure. Toute procédure comme par la fonction "procedure NomProcedure;" où NomProcedure est (vous l'avez compris) le nom de la procédure. Il faut ensuite introduire la fonction "begin" et ne pas oublier "end;".
    La fonction "WriteLn" signifit (dans ce cas) que ce qui suit doit être affiché à l'écran.
    Enfin la fonction "Aurevoir;" a été crée par moi-même, c'est en fait une procédure que j'appelle.

 

Fonction WriteLn (en détail) et les variables :
    La fonction "Write" est une des fonctions les plus utilisées dans Turbo Pascal. Elle permet à la fois d'écrire du texte à l'écran (Write ('Salut !');), écrire dans un fichier en mode texte (Write (F, 'Texte sans importance ...');) et écrire dans un périphérique définit (écran, fichier ou autre : Write (Periph, 'Rien du tout');). En fait, Turbo Pascal s'occupe de comprendre pour qui est l'information est créer une procédure appropriée : pour l'écran une procédure qui modifie la VRAM, pour les fichiers une procédure qui appelle les procédures DOS. Si on lui ajoute les caractères "LN", elle va à la ligne suivant après avoir écrit ses données.
    Reprenons un exemple :

WriteLn ('Salut toi !');

    Vous avez sur fond jaune (WriteLn () ) la fonction : introduite par son nom : "WriteLn", puis ses paramètres entre parenthèses. Les paramètres, sur fond bleu ('Salut toi') sont ici une chaîne de caractères. Les chaînes de caractères sont délimitées par le caractère >'< (un au début, un à la fin). La fonction est terminé par le conventionnel point virgule : ";". Les paramètres peuvent de tout type : chaîne de caractère, un caractère, un nombre, une variables, ... En voici des exemples :

var
  txt: String;
  i: Byte;
begin
  WriteLn ('Haypo !');   { Ecrit une chaîne de caractère }
  WriteLn (10);   { Ecrit le nombre 10 }
  WriteLn ('dix = ',10);   { Mélange de chaîne de caractère et de nombre }
  txt := 'Haypo Power !!!';
  WriteLn (txt);   { Ecrit le contenu de la variable "txt" }
  i := 123;
  WriteLn (i);   { Ecrit le contenu de la variable "i" }
end.
(Télécharger l'exemple : Writeln.pas)

    Tient, voici des nouveaux mots : "var", "string" et "byte". Ho ! Des "{" et des "}" ! Explications : "var" introduit les "variables". Une variable est un petit morceau de mémoire où on peut y stocker un certain type de donnée. Justement "string" et "byte" sont deux types de données : "string" est une chaîne de caractères et "byte" est un octet (un nombre positif ayant une valeur entre 0 et 255). Les caractères "{ }" délimitent des commentaires. Les commentaires sont des textes qui ne sont pas interprétés lors de la compilation du code source, ils sont simplement passés. Ils sont vitaux pour la compréhension du code source, par exemple la variable "NbrOctetLigne" n'est pas très clair, alors que si on ajoute le commentaire "{ Nombre d'octet par ligne de l'écran vidéo }", tout est plus clair.

Retour aux tutoriels

Par Haypo

Responsable bénévole de la rubrique Pascal : wormful_sickfoot - Contacter par EMail :
Vos questions techniques : forum d'entraide Pascal - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright © 2000-2008 www.developpez.com - Legal informations.