Jeu du pendu en pascal
miss-mojahid
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
miss-mojahid Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
miss-mojahid Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai un mini projet pour le jeu du pendu en pascal avec les procédures et les fonctions plus les fichiers,, j'ai commencer mais je n'arrive pas a le terminer, il manque de détails et d'améliorations
les variables globales sont :
mot: string, {le mot caché}.
motjeu : string {le mot affiché au joueur}
letvin : array[1..10] of char ; (tableau contenant les lettres invalides)
nbletinv : integer ; {nombre de lettre invalides}
fonction principales :
procédure init_motjeu:
//initialise motjeu en remplaçant les caractères par des points sauf le premier et le dernier
procédure affiche_jeu :
// affiche le lettre passée en parametres aux bons endrois dans motjeu si la lettre axiste, sinon elle l'ajoute au tableau letvin et incrémente nbletinv;
fonction fin_jeu : integer ;
// fonction qui détermine l'etat du jeu, elle retourne :
0 : si le jeu peut continuer
1: si le mot est trouvé par le joueur (le joueur gagne)
2 : si le nombre de lettres invalides atteint 10 (le joueur perd
programme principal :
// il doit initialiser motjeu (procédure init_motjeu) puis affiche le jeu (procédure affiche_jeu) dans une boucle, on va demander au joueur de taper une lettre, le lettre sera placée par la procédure place_lettre(...) et le jeu sera affiché par affiche_jeu; la boucle vérifie la valeur retournée par la fonction fin_jau si cette valeur n'est pas nulle (le jeu est termine) on sort de la boucle et on affiche le résultat; en cas de perte, on affiche le mot caché au joueur. avec le graphique célèbre du jeu du pendu mais j'arrive pas a le faire ( quand l'utilisateur entre un caractère non valide il affiche une tiret jusqu'à la fin du jeu ça veut dire 10 caractères non-valides)
c'est le début que j'ai fait :
program mini2projet;
uses wincrt;
var mot:string; (*mot caché*)
motjeu: string;(*le mot affiche au joueur,initialisé par:M....N*)
letvin:array[1..10] of char;(* tableau contenent les lettres invalides*)
nbletinv:integer; (*nombre de lettre invalide*)
procedure exerfichier;
var f:text;
ch:string;
n,i:integer;
begin
randomize;
assign(f,'c:\chou.txt');
reset(f);
n:=random(10)+1;
for i:=1 to n do
begin
readln(f,ch);
end;
mot:=ch;
close(f);
end;
procedure init_motjeu;
var i: integer;
begin
motjeu:=mot;
for i:=2 to (length(mot)-1) do
motjeu[i]:='.';
end;
procedure affiche_jeu;
var i:integer;
begin
writeln(motjeu);
write('lettre invalide: ');
for i:=1 to nbletinv do
write(letvin[i],' ');
writeln;
writeln('Essais: ',nbletinv);
end;
procedure place_letrre (lt:char);
var i, cpt :integer; existe:boolean;
begin
existe:=false;
for i:=2 to (length(mot)-1) do
begin
if (lt=mot[i])then
motjeu [i]:=lt;
existe:=true;
end;
if not existe then
existe:= false;
begin
nbletinv:= nbletinv+1;
letvin[nbletinv]:=lt;
end;
end;
function fin_jeu :integer;
begin
if mot =motjeu then
else if nbletinv=10 then
fin_jeu:=2
else fin_jeu:=0;
end;
begin
exerfichier;
init_motjeu;
nbletinv:=10;
letvin[1]:='Z';
letvin[2]:='W';
affiche_jeu;
end.
s'il vous plait , pouvez vous m'aidez de le terminer ??
j'ai un mini projet pour le jeu du pendu en pascal avec les procédures et les fonctions plus les fichiers,, j'ai commencer mais je n'arrive pas a le terminer, il manque de détails et d'améliorations
les variables globales sont :
mot: string, {le mot caché}.
motjeu : string {le mot affiché au joueur}
letvin : array[1..10] of char ; (tableau contenant les lettres invalides)
nbletinv : integer ; {nombre de lettre invalides}
fonction principales :
procédure init_motjeu:
//initialise motjeu en remplaçant les caractères par des points sauf le premier et le dernier
procédure affiche_jeu :
// affiche le lettre passée en parametres aux bons endrois dans motjeu si la lettre axiste, sinon elle l'ajoute au tableau letvin et incrémente nbletinv;
fonction fin_jeu : integer ;
// fonction qui détermine l'etat du jeu, elle retourne :
0 : si le jeu peut continuer
1: si le mot est trouvé par le joueur (le joueur gagne)
2 : si le nombre de lettres invalides atteint 10 (le joueur perd
programme principal :
// il doit initialiser motjeu (procédure init_motjeu) puis affiche le jeu (procédure affiche_jeu) dans une boucle, on va demander au joueur de taper une lettre, le lettre sera placée par la procédure place_lettre(...) et le jeu sera affiché par affiche_jeu; la boucle vérifie la valeur retournée par la fonction fin_jau si cette valeur n'est pas nulle (le jeu est termine) on sort de la boucle et on affiche le résultat; en cas de perte, on affiche le mot caché au joueur. avec le graphique célèbre du jeu du pendu mais j'arrive pas a le faire ( quand l'utilisateur entre un caractère non valide il affiche une tiret jusqu'à la fin du jeu ça veut dire 10 caractères non-valides)
c'est le début que j'ai fait :
program mini2projet;
uses wincrt;
var mot:string; (*mot caché*)
motjeu: string;(*le mot affiche au joueur,initialisé par:M....N*)
letvin:array[1..10] of char;(* tableau contenent les lettres invalides*)
nbletinv:integer; (*nombre de lettre invalide*)
procedure exerfichier;
var f:text;
ch:string;
n,i:integer;
begin
randomize;
assign(f,'c:\chou.txt');
reset(f);
n:=random(10)+1;
for i:=1 to n do
begin
readln(f,ch);
end;
mot:=ch;
close(f);
end;
procedure init_motjeu;
var i: integer;
begin
motjeu:=mot;
for i:=2 to (length(mot)-1) do
motjeu[i]:='.';
end;
procedure affiche_jeu;
var i:integer;
begin
writeln(motjeu);
write('lettre invalide: ');
for i:=1 to nbletinv do
write(letvin[i],' ');
writeln;
writeln('Essais: ',nbletinv);
end;
procedure place_letrre (lt:char);
var i, cpt :integer; existe:boolean;
begin
existe:=false;
for i:=2 to (length(mot)-1) do
begin
if (lt=mot[i])then
motjeu [i]:=lt;
existe:=true;
end;
if not existe then
existe:= false;
begin
nbletinv:= nbletinv+1;
letvin[nbletinv]:=lt;
end;
end;
function fin_jeu :integer;
begin
if mot =motjeu then
else if nbletinv=10 then
fin_jeu:=2
else fin_jeu:=0;
end;
begin
exerfichier;
init_motjeu;
nbletinv:=10;
letvin[1]:='Z';
letvin[2]:='W';
affiche_jeu;
end.
s'il vous plait , pouvez vous m'aidez de le terminer ??
A voir également:
- Jeu du pendu en pascal
- Turbo pascal - Télécharger - Édition & Programmation
- Jeu du pendu - Télécharger - Vie quotidienne
- My pascal - Télécharger - Édition & Programmation
- 94 jeu - Télécharger - Puzzle & Réflexion
- Dev pascal - Télécharger - Édition & Programmation