Que pouvez-vous faire dans Pascal ABC. Plusieurs captures d'écran du programme, avec une brève description. Une des blagues

Aujourd’hui, les jeux simples, sans graphismes ni effets sonores, connaissent une renaissance. En les jouant, l'utilisateur se concentre sur l'intrigue et non sur les techniques artistiques. Le langage Pascal est bien adapté pour créer de tels jeux.

Instructions

  • Téléchargez le compilateur du langage Pascal à partir de la page suivante - http://edn.embarcadero.com/article/20803. Lisez les conditions d'utilisation de ce progiciel, puis installez-le.
  • Essayez de créer un jeu dans lequel le joueur doit deviner un nombre compris entre 0 et 100. Tout d'abord, entrez le nom du programme : programme ugadayka ;
  • Connectez le module CRT : utilise crt ;
  • Notons les variables comme suit :var
  • zagadka,mnenie,popytki:entier;

  • Démarrez le programme en effaçant l'écran et les variables, et en attribuant une valeur pseudo-aléatoire au nombre masqué : commencer
  • zagadka:=int(rnd*100);

  • Demandez à l'ordinateur de demander à l'utilisateur ce qu'il pense être le numéro caché jusqu'à ce qu'il le devine : while not mnenie=zagadka do
  • popytki:=popytki+1;

    writeln("Numéro de tentative ",popytki,".");

    write("Selon vous, quel numéro est caché ?");

    if zagadka>mnenie then writeln("Non, le nombre caché est plus grand !")

    else writeln("Non, le nombre caché est inférieur !")

  • Une fois le nombre deviné, la répétition automatique des événements ci-dessus s'arrêtera. Les lignes suivantes du programme commenceront à s'exécuter. Dans ceux-ci, faites en sorte que la machine affiche des informations indiquant que l'utilisateur a deviné le numéro : writeln("Félicitations ! Vous avez deviné le numéro sur le numéro d'essai ",popytki." Il est en réalité égal à ",zagadka,".");
  • bouton :=clé de lecture

  • Entrez l'instruction pour terminer le programme : end.
  • Enregistrez le programme sous le nom de votre choix en utilisant le fichier des éléments de menu -> Enregistrer sous. À l'avenir, après chaque modification, enregistrez-la en appuyant sur la touche F2.
  • Pour exécuter le programme, appuyez simultanément sur les touches Contrôle et F9.
  • Après avoir terminé le programme, afin de voir ce qu'il a affiché à l'écran juste avant, appuyez simultanément sur les touches Alt et F5. Pour revenir à l'éditeur, appuyez à nouveau sur la même combinaison de touches.
  • Soumettre votre bon travail à la base de connaissances est facile. Utilisez le formulaire ci-dessous

    Les étudiants, étudiants diplômés, jeunes scientifiques qui utilisent la base de connaissances dans leurs études et leur travail vous seront très reconnaissants.

    Publié le http://www.allbest.ru/

    Publié le http://www.allbest.ru/

    Introduction

    1. Énoncé du problème

    2. Description des données

    3. Algorithmes et organigrammes

    4. Programme Pascal avec commentaires

    Conclusion

    Liste de la littérature utilisée

    INTRODUCTION

    L'objectif principal de ce projet de cours est de consolider et de démontrer les connaissances acquises lors de l'étude du cours d'informatique.

    La réalisation du travail nécessite une approche créative et l'application de connaissances supplémentaires dans le domaine du graphisme. Le projet de cours n'implique pas une utilisation commerciale ultérieure de ce produit logiciel.

    1. Énoncé du problème

    Il est nécessaire de créer un jeu dont l'idée principale est qu'un objet d'un type (« Avion ») se déplace dans une partie de l'écran, et dans l'autre partie de l'écran il y a un objet d'un type différent (« Arme de défense anti-aérienne »), et « Arme de défense aérienne » doit abattre « Avion".

    a) Sélection, justification et présentation de la méthode de résolution du problème.

    J'ai préféré utiliser la mémoire dynamique, en dessinant des textures dans une procédure distincte.

    Avec la mémoire dynamique, dans ce cas, il est très pratique d'organiser le mouvement simultané d'objets dynamiques sur l'écran avec un scintillement minimal de l'écran.

    Dessiner des textures dans une procédure distincte est pratique car, si vous le souhaitez, il est possible de dessiner un objet en mouvement sans approfondir les spécificités du programme.

    b) Construction d'un algorithme pour le problème.

    Le programme commence par un menu, mais si le choix s'est porté sur le menu « Démarrer le jeu », alors d'abord les carrés d'écran « propres » sont entrés dans la mémoire dynamique, puis les images d'objets dynamiques sont affichées séquentiellement à l'écran et entrées séquentiellement dans la mémoire dynamique. . Des carrés « propres » sont superposés sur la zone esquissée de l'écran, de sorte qu'il n'y ait aucune confusion lors de la numérisation des images suivantes.

    c) Créer et déboguer un programme.

    La création du programme comprenait trois étapes : la création d'un menu, la création du corps principal du jeu en tant que procédure distincte sans dessiner de textures et le dessin final des textures.

    d) Préparation d'une note explicative et soutenance du projet de cours.

    2. Description des données :

    Size1, Size2, Size3, Size4 sont des variables de type entier qui stockent la zone allouée aux variables dynamiques.

    Pustota, Sam1, Rocket, F16 sont des variables dynamiques qui stockent des objets de jeu.

    Key est une variable booléenne qui prend la valeur TRUE lorsqu'une touche est enfoncée.

    Nom, Head, Cl - variables de chaîne écrites dans le fichier :

    NOM - stocke le nom du joueur saisi au clavier ;

    HEAD et CL - contiennent une chaîne représentant un ensemble de descripteurs de langage HTML qui, après avoir écrit dans un fichier, le convertissent en page HTML.

    F1 - variable de fichier

    Événement - variable décrivant les événements (type : Tevent) ;

    3. Schéma fonctionnel

    4. Programme Pascal avec commentaires

    Utilise Crt, App, Boîtes de dialogue, Objets, Pilotes, Vues, ​​Graphique ;

    Procédure Super_Mega_Game ;

    Étiquette b1 ;

    var Driver1,Mode,Size,Size2,x,y,size3,n,xs,d2,d11,d12,m,xt,p,h,Size4:Integer; s:char; Pustota, Sam1, Rocket, F16 : Pointeur ; clé : booléenne ; Nom, Tête, Cl : Chaîne ; F1 : Texte ;

    commencer

    Randomiser;

    xs :=1 ;

    Pilote1 :=Détecter ;

    Mode :=Détecter ;

    InitGraph(Pilote1,Mode,"");

    Effacer le périphérique ;

    SetBkColor(3);

    Taille:=TailleImage(0,0,53,53);

    GetMem(Pustota,taille);

    GetImage(0,0,53,53,Pustota^);

    Taille2:=TailleImage(640,0,600,40);

    GetMem(Sam1,Taille2);

    Définir la couleur (jaune);

    Ligne(605,35,630,35);

    LIGNE(630,35,635,40);

    Ligne(600,40,605,35);

    Ligne(600,40,635,40);

    Ligne(615,35,615,29);

    Ligne(615,29,620,35);

    DéfinirCouleur(6);

    Ligne(610,32,620,24);

    Ligne(610,29,620,21);

    Définir la couleur (rouge);

    Ligne(620,24,624,20);

    Ligne(620,21,624,20);

    Arc(610,30,0,90,2);

    GetImage(640,0,600,40,Sam1^);

    Taille4 :=TailleImage(100 100 150 150 );

    GetMem(F16,Taille4);

    (CADRE)

    DéfinirCouleur(6);

    Ligne(105 120 135 120 );

    Ligne (105 114 130 114 );

    (CABINE)

    Définir la couleur (bleu);

    Arc(131,117,0,90,3);

    Définir la couleur (6);

    Ligne(134 117 144 118 );

    Ligne(134 120 144 118 );

    (PREMIÈRE AILE)

    Ligne(115,119,113,130);

    Ligne(113 130 117 130 );

    Ligne(117 130 121 119 );

    Ligne(115 119 121 119 );

    (QUEUE)

    Ligne(105 114 101 110 );

    Ligne (101 110 105 120 );

    (DEUXIÈME AILE)

    Ligne(119 114 117 109 );

    Ligne(117 109 113 109 );

    Ligne(113,109,114,114);

    GetImage(100,100,150,150,F16^);

    PutImage(100,100,Pustota^,NormalPut);

    Taille3:=TailleImage(640,0,600,40);

    GetMem(Rocket,Taille3);

    DéfinirCouleur(6);

    Ligne(610,32,620,24);

    Ligne(610,29,620,21);

    Définir la couleur (rouge);

    Ligne(620,24,624,20);

    Ligne(620,21,624,20);

    Arc(610,30,0,90,2);

    GetImage(640,0,600,40,Rocket^);

    Définir la couleur (6);

    Ligne(1 460 640 460) ;

    x:=6;

    y :=400 ;

    n:=0;

    m:=0;

    xt:=5;

    p:=1;

    h:=0;

    PutImage(585,10,Pustota^,NormalPut);

    RepeatRepeatif p=1 puis commencez Delay(100); PutImage(xt,100,F16^,NormalPut); xt:=xt+1; h:=h+1; si h=550 alors p :=0 ; fin; si p = 0 alors commence le délai (100); PutImage(xt,100,F16^,NormalPut); xt:=xt-1; h:=h-1; si h=0 alors p:=1 ; end;key:=KeyPressed;if (key=True) then goto b1;jusqu'à s=chr(27);

    b1 :

    s:=LireClé;

    si s=chr(77) alors x :=x+4 ;

    si s=chr(75) alors x :=x-4 ;

    si s=chr(72) alors commencez à répéter PutImage(x+51+n,y-35-n,RocKet^,NormalPut); inc(n); PutImage(x+51+n,y-35-n,Pustota^,NormalPut); si (x+51+n)=550 alors n :=300 ; jusqu'à n=300 ; PutImage(x+n,y-35-n,Pustota^,NormalPut); si ((y+51+n)>100) et ((x+51+n)>(xt-10)) et ((x+51+n)<(xt+60)) then begin OutTextXY(250,200,"F16-vipe out!!!"); s:=chr(27); end; n:=0; end;

    PutImage(x-4,y,Pustota^,NormalPut);

    PutImage(x,y,Sam1^,NormalPut);

    jusqu'à ce que s=chr(27);

    lire;

    FermerGraphique ;

    Couleur du texte (vert);

    Write("Saisissez votre nom : ");

    Readln(Nom);

    Tête :="
    Gagnant !!!

    ";

    Cl:="


    ";

    Tête:=concat(Tête," MegaMen : ",nom,cl);

    attribuer(F1,"Namer.htm");

    Réécrire(f1);

    Écrire(f1,tête);

    Fermer(f1);

    fin;

    taper

    PProg=^TProg;

    TProg=objet(TApplication)

    ConstructeurInit ;

    fin;

    Pdial=^TDial;

    TDial=objet(Tdialog)

    Procédure HandleEvent (var Event:TEvent);

    Virtuel;

    fin;

    constcmPrint = 100 ;

    Constructeur TProg.Init ;

    varR:TRect;Dia:Pdial;g:char;

    commencer

    Init hérité ;

    R.assign(20,9,60,17);

    Dia:=Nouveau(PDial,Init(R,""));

    R.assign(3,4,22,6);

    Dia^.Insert(New(PButton,Init(R,"Démarrer le jeu",cmPrint,bfDefault)));

    R.assign(23,4,35,6);

    Dia^.Insert(New(PButton,Init(R,"Quit",cmCancel,bfNormal)));

    si execView(Dia)=cmPrint alors commencez Super_Mega_Game ; Writeln("Appuyez sur "b" pour revenir au menu principal"); répéter g:=ReadKey; si g="b" alors commencez clrscr; fin; jusqu'à g="b"; Writeln("Appuyez sur "Alt-x" pour quitter"); fin;

    fin;

    Procédure TDial.HandleEvent (var Event:TEvent);

    commencer

    Hérité de HandleEvent(Event);

    if (Event.What=evCommand) et (Event.Command=cmPrint) then EndModal(cmPrint);

    fin;

    Procédure Batva ;

    var

    Prog:TProg;

    commencer

    Prog.Init ;

    Prog.Exécuter ;

    Prog.Terminé ;

    fin;

    commencer

    batva;

    fin.

    5. Guide de l'utilisateur pour l'utilisation du programme

    Lorsque vous démarrez le programme, un menu apparaît offrant un large choix d'options.

    Le curseur est déplacé à l'aide des touches curseur, la sélection s'effectue avec la touche ENTER.

    Lorsque vous sélectionnez un élément de menu, un message correspondant apparaît, cependant, lorsque vous sélectionnez l'élément « Programme », le jeu lui-même démarre directement.

    L'essence du jeu est d'abattre des avions en utilisant la défense aérienne.

    Le système de défense aérienne peut se déplacer horizontalement sur l'écran à l'aide d'un curseur. Lorsque vous appuyez sur la barre d'espace, l'arme de défense aérienne tire un coup de feu. Si un obus touche, le message « F-16 wipe out » apparaît. Une fois l’avion abattu, il vous est demandé d’écrire votre nom, puis d’appuyer sur « b » – ce qui vous amène à un écran où, lorsque vous appuyez sur ALT+X, cela vous fait quitter le programme.

    programme de texture de jeu informatique

    Conclusion

    Au cours du processus de débogage du programme, des difficultés sont survenues du fait que lors de l'analyse du plein écran puis de l'utilisation de cet objet, le programme a commencé à ralentir fortement sa vitesse. Pour surmonter cet obstacle, il fallait scanner de petites parties de l'écran, puis les utiliser.

    Le processus de dessin détaillé des graphiques est également long.

    Il faut que dans le dossier où se trouve ce programme il y ait un fichier egavga.bgi. Ce fichier est disponible dans de nombreuses versions de TP dans le dossier bin ; il est responsable de l'initialisation des graphiques.

    Liste de la littérature utilisée.

    1. Mejenny O.A. "Turbo Pascal - apprendre à programmer" ; Moscou-S. Saint-Pétersbourg-Kyiv ; "Dialectique"; 2001 ; 448p.

    2. Babouchkine I.A. ; « Atelier sur TR » - un manuel pour les cours IVT ; Moscou, 1998.

    3. http://www.freepascal.org ;

    4. http://www.geocities.com/~franzglaser/tp.htm ;

    5. http://www.garbo.uwasa.fi/pc/turboobj.html ;

    Publié sur Allbest.ru

    Documents similaires

      Développement et implémentation du jeu informatique "Snake" en utilisant le langage de programmation Pascal et le module CRT. Élaboration d'un algorithme général du programme, mettant en évidence ses parties fonctionnelles. Développement de cas de tests. Utilisation de fichiers tapés.

      travail de cours, ajouté le 23/02/2011

      Caractéristiques du système informatique et des outils de développement. Programmation en Pascal dans l'environnement Turbo Pascal et en Pascal Objet dans l'environnement Delphi. Utilisation de procédures, fonctions, tableaux, recherche binaire. Création d'une base de données sous forme de fichier.

      rapport de pratique, ajouté le 02/05/2014

      Histoire du développement du langage de programmation Java. L'histoire de Tetris - un jeu informatique culte inventé en URSS. Règles du jeu, caractéristiques du score. Création de l'interface du programme, son implémentation dans l'environnement Java, codage, tests.

      travail de cours, ajouté le 27/09/2013

      Représentation algorithmique et description des règles du jeu "Evolution". Construction d'un diagramme de cas d'utilisation. Développement d'interface utilisateur graphique. Implémentation de l'interface dans l'environnement Unity. Structure du fichier de sauvegarde du jeu. Concevoir le comportement d'un ordinateur.

      thèse, ajoutée le 18/02/2017

      Description des règles du jeu "Sea Battle". Caractéristiques des ordinateurs modernes et de l'intelligence artificielle. Création d'un schéma fonctionnel général du programme, son apparence. Variables, procédures et fonctions requises. Caractéristiques des objets utilisés dans l'application.

      travail de cours, ajouté le 11/05/2012

      Développement d'un programme pour un jeu logique de "tic-tac-toe" cinq à la suite sur un champ de taille 15x15 cellules utilisant des graphiques en Pascal en utilisant une programmation orientée objet. La structure de l'algorithme du programme et la description de son fonctionnement.

      travail de cours, ajouté le 13/02/2012

      Bases du travail dans le langage de haut niveau Turbo Pascal. Équipement et logiciels de base. Opérateurs devant travailler dans l'environnement graphique Turbo Pascal. Démarrez le mode graphique. Texte du programme dans l'environnement graphique Turbo Pascal.

      travaux de laboratoire, ajouté le 14/05/2011

      Développement d'un programme pour le jeu casual "Zuma Deluxe" en C\C++. Utilisant le style des anciens Incas et Aztèques, les capacités du moteur graphique HGE version 1.53. Objectif des classes principales du jeu. Manuel d'utilisation, contenu du menu principal.

      travail de cours, ajouté le 28/10/2014

      Langage de programmation Pascal et son turbo shell. Revue analytique des logiciels de jeux. Fonctions du module Crt. Énoncé du problème de création d'un programme de jeu simple "Turbosnake", algorithme d'implémentation et description de l'interface utilisateur.

      travail de cours, ajouté le 15/05/2014

      Implémentation de structures algorithmiques de base. Déclarations conditionnelles et de sortie tronquées. Boucle avec un paramètre (boucle de comptage). Impression des tableaux de fonctions. Outils de développement de programmes en Free Pascal. Développement de l'application de jeu "Taureaux et Vaches".

    Textuel (Mine Mines Game) utilise GraphABC, ABCObjects, ABCButtons ; Const N = 10 ; //Champ N x N sz = 40 ; //Taille de cellule d0 = 10 ; //Retrait à partir du bord gauche et supérieur zz = 2; //Distance entre les cellules NMines = 10; //Nombre de mines Tapez OneSellField = record mine: boolean; //Y a-t-il une mine fl: boolean; //Y a-t-il une case à cocher voisins : entier ; //positif - Combien de voisins ; neg - nécessaire à l'algorithme de traçage - ouverture de cellules vides click : boolean ; // Était-ce une fin ouverte ? Var BtNewGame : ButtonABC ;<= N) and (jj >Vendre : tableau de SquareABC ;<= N)) then begin c:= c + Integer(Field.mine); end; end; end; Field.neighbours:= c; end; Opened:= 0; //Кол. открытых мин Nfl:= 0; //Кол. установленных флажков end; Procedure OpenZero(fx, fy: integer); var fl:boolean; step, ii, jj: integer; begin Field.neighbours:= -1; step:= -1; repeat fl:= true; for var x:= 1 to N do begin for var y:= 1 to N do begin if Field.neighbours < 0 then begin {*** Проверка соседних клеток ***} for var dx:= -1 to 1 do begin for var dy:= -1 to 1 do if not ((dx = 0) and (dy = 0)) then begin //Центральную клетку не считаем ii:= x + dx; jj:= y + dy; //Если не выходит за границы поля if ((ii >Field : tableau de OneSellField ;<= N) and (jj >Vendre : tableau de SquareABC ;<= N)) then begin if Field.neighbours = 0 then begin Sleep(30); //Для анимации открывания клеток Sell.Color:= clLightYellow; Field.click:= true; Field.neighbours:= step; fl:= false; //Была открыта клетка - ищем др. end; if Field.neighbours > 0 puis commencez Sell.Color:= clLightGreen;

    c : raccourci ; //Pour compter les mines dans les cellules voisines Opened: shortint; //Combien de cases sont cochées correctement Nfl: Integer; //Le nombre de drapeaux cochés (pour gagner doit être égal au nombre de minutes) Procedure CreateField; commencer pour var y:= 1 à N faire pour var x:= 1 à N faire commencer Vendre := new SquareABC(d0+(x-1)*(sz+zz),d0+(y-1)*(sz+zz ), taille, clLightSeaGreen);

    Vendre.BorderColor:= clGreen;
    Il existe de nombreux environnements différents qui utilisent Pascal comme langage de programmation. Mais parmi tout cela, j'ai décidé d'utiliser PascalABC.net pour la leçon. Pourquoi? La réponse est simple : premièrement, cet environnement de programmation n'utilise pas du Pascal pur, mais son descendant moderne et plus pratique - le Pascal Objet ; Deuxièmement, Pascal.Net est absolument gratuit, ce qui signifie que vous n'avez pas à vous soucier des fissures ni à dépenser de l'argent pour une licence.

    2. Algorithme.
    Nous avons donc une superficie de 640x480, qui, selon mon idée, sera divisée en 8x8 cellules, qui représentent les liens des tableaux. Ainsi, en changeant la valeur d'une cellule, on peut la rendre « libre » ou « occupée » (par exemple, l'utiliser comme mur).

    De ce fait, nous pourrons déterminer sans manipulation inutile où le joueur peut se déplacer et où il ne peut pas se déplacer (voir figure).

    3. Variables et modules.
    Pour le plein fonctionnement de notre futur jeu, nous n'aurons besoin de connecter qu'un seul module GraphABC, qui nous permet d'afficher des primitives graphiques à l'écran.

    Liste 1 :

    200?"200px":""+(this.scrollHeight+5)+"px");">utilise GraphABC ;

    Var
    s : tableau [,] d'entier ;
    i,x,y,vspeed : entier ;
    game_end : booléen ;

    4. Frappes au clavier.
    Alors, pour que vous n’ayez pas besoin de passer par vos propres écrits pour modifier le code, créons deux procédures distinctes chargées de manipuler la position du joueur.

    Liste 2 :

    200?"200px":""+(this.scrollHeight+5)+"px");">//Gestion des frappes au clavier
    procédure KeyPress(clé: char); commencer

    Si (key="d") et (s[(x div 8)+1,(y div 8)]=0) alors //Si la touche D est enfoncée...
    x:=x+8; //... Et il y a aussi de l'espace libre, puis on passe à...
    //… une cellule en avant (la valeur x augmente de 8)

    Si (key="a") et (s[(x div 8)-1,(y div 8)]=0) alors //voir commentaire ci-dessus
    x:=x-8;

    Si (key="w") et (vspeed=0) et (s[(x div 8),(y div 8)+1]=1) alors //S'il y a une "cellule occupée"...
    vvitesse :=-16 ; //... sous nos pieds, puis on fait un saut.

    Procédure KeyDown(clé : entier); commencer
    if (key=vk_enter) then game_end:=true; //En appuyant sur ENTER...
    //la valeur de la variable game_end est vraie
    fin;

    5. La gravité.
    La gravité fait partie intégrante de la plateforme. Par conséquent, nous devons maintenant rédiger une procédure distincte qui, à l’avenir, aidera le joueur à se remettre sur pied au sens littéral du terme.

    Liste 3 :

    200?"200px":""+(this.scrollHeight+5)+"px");">//Gravité
    procédure Gravité(); commencer

    Si vspeed=0 alors commencez //Si la vitesse de saut est nulle...
    si s[(x div 8),(y div 8)+1]=0 alors y+=8; //... on descend d'une "cellule" (on tombe)
    fin;

    Si s[(x div 8),(y div 8)+vspeed]=0 alors y+=vspeed; // S'il y a une cellule libre au dessus, alors...
    //… monte de vspeed.

    Si vvitesse<>0 alors //Si la vitesse de saut n'est pas nulle (dans notre cas : inférieure à zéro)…
    vvitesse+=2 ; //...puis on le réduit petit à petit.

    6. Dessin.
    Je pense que c'est clair sans plus attendre, mais juste pour le spectacle, je noterai que le jeu est divisé en parties « visuelles » et « non visuelles ». Le « non-visuel » est responsable de tout ce qui se passe dans le jeu lui-même, et le « visuel » est, en fait, responsable de l'affichage de ce qui se passe à l'écran. Ainsi, la procédure donnée ci-dessous est responsable de la partie « visuelle » et rien de plus.

    Liste 4 :

    200?"200px":""+(this.scrollHeight+5)+"px");">procédure Draw(); commencer

    redessiner;
    VerrouillerDessin ;

    //Dessine un rectangle blanc...
    setbrushcolor(clwhite); //... taille 640 par 480
    remplir le rectangle (0,0,640,480);

    Setbrushcolor(clblack);//Dessiner des murs noirs...
    remplirrectangle(0,192,640,224);//… par coordonnées…
    //… 0 – 640 dans X ; 192 – 224 en Y
    //(ATTENTION ! Ces manipulations ne rendent pas les murs tangibles, mais seulement...
    //... créent leur image graphique.

    Setbrushcolor(clred); //Dessine le joueur par coordonnées...
    remplirrectangle(x,y,x+8,y+8);//… x et y

    7. Le corps du programme.
    Nous sommes donc arrivés au programme lui-même. Ici, nous devons remplir le tableau avec les valeurs dont nous avons besoin et également utiliser des procédures écrites précédemment.

    Liste 5 :

    200?"200px":""+(this.scrollHeight+5)+"px");">Begin //début du programme

    //Spécification des valeurs des variables
    fin du jeu :=false ;
    x:=0 ; //Position de départ du joueur par X
    y :=0 ; //Position de départ du joueur en Y

    //Créer un tableau
    s:= nouvel entier ;

    //Créer une plateforme dessinée dans la procédure Draw
    pour i:=0 à 79 fais
    s := 1 ;

    Tandis que game_end=false do start //Créer une boucle...
    //... qui abandonnera si game_end = false

    //Dessiner un écran
    Dessiner();

    //Gravité pour le joueur
    Pesanteur();

    OnKeyPress:=KeyPress; //Traitement des clics...
    OnKeyDown:=KeyDown; //… clés

    Dormir(30); //Attendez environ une demi-seconde pour le jeu...
    //… travaillé à vitesse normale

    Fin;//fin du cycle.

    Fin. //fin du programme

    8. Conclusion.
    Au total, nous avons obtenu un simple jeu de plateforme avec un point dans le rôle principal. On peut se déplacer horizontalement et sauter :

    En général, je ne voudrais pas diluer la fin de cette leçon avec toutes sortes de lie, puisque « l'eau inutile » n'est souvent tout simplement pas lue, je vais donc vous demander de laisser des commentaires. Merci de votre attention ! J'espère vous avoir aidé !



    Des questions ?

    Signaler une faute de frappe

    Texte qui sera envoyé à nos rédacteurs :