Jeu du pendu assez basic.
Source / Exemple :
program pendu;
(* Jeu du pendu - à 2 joueurs *)
uses windows;
var MotSaisi, MotAfficher :string;
TailleChaine, i, Ver, Erreur :integer;
Lettre, Menu :char;
begin
writeln('+-----------------------------+');
writeln('| PENDU |');
writeln('+-----------------------------+');
writeln;
// Initialisation de Menu
Menu := '1';
// Boucle de sortie de menu
while (Menu <> '2') do
begin
writeln('+-----------------------------+');
writeln('| MENU DE JEU |');
writeln('+-----------------------------+');
writeln('| 1 | Jouer |');
writeln('| 2 | Quitter |');
writeln('+-----------------------------+');
writeln;
write('Entrer votre choix : ');
readln(Menu);
writeln;
case Menu of
'1': begin
// -- Choix 1 --------------------------------------------------------------- //
// -------------------------------------------------------------------------- //
// Initialisation de variables
MotAfficher := '';
Erreur := 10;
// Saisi du MotSaisi
writeln('| Joueur 1 |');
write('Entrer un mot a deviner : ');
readln(MotSaisi);
// Taille de la chaine
TailleChaine := length(MotSaisi);
// Passage en majuscule
for i:=0 to TailleChaine do
begin
MotSaisi[i] := upcase(MotSaisi[i]);
end;
// Initialisation de MotAfficher
for i:=1 to TailleChaine do
begin
MotAfficher := '-'+MotAfficher;
end;
// Effacement de l'écran
for i:=0 to 25 do
begin
writeln;
end;
// -------------------------------------------------------------------------- //
// -------------------------------------------------------------------------- //
while (Erreur <> 0) and (MotAfficher <> MotSaisi) do
begin
// Initialisation de Ver
Ver := 0;
// Saisi d'une lettre du joueur 2
writeln('| Joueur 2 | ', Erreur);
write('Entrez une lettre : ');
readln(Lettre);
// Passage de lettre en majuscule
Lettre := upcase(Lettre);
// Gestion des lettres
for i:=0 to TailleChaine do
begin
if (Lettre = MotSaisi[i]) then
begin
Ver := 1;
MotAfficher[i] := Lettre;
end
end;
// Décrémentation du compteur si la lettre n'est pas dans le mot
if (Ver = 0) then
begin
Erreur := Erreur - 1;
end;
// Affichage de MotAfficher
writeln(MotAfficher);
writeln;
end;
// Test si perdu
if (Erreur = 0) then
begin
writeln('| Joueur 2 | Perdu, le mot etait : ', MotSaisi);
writeln;
end;
// Test si gagné
if (MotAfficher = MotSaisi) then
begin
writeln('| Joueur 2 | Gagnee, le mot etait : ', MotSaisi);
writeln;
end;
end;
// -------------------------------------------------------------------------- //
// -------------------------------------------------------------------------- //
// -- Choix 2 --------------------------------------------------------------- //
// -------------------------------------------------------------------------- //
'2': writeln('Fin du Jeu')
// -------------------------------------------------------------------------- //
// -------------------------------------------------------------------------- //
else writeln('Mauvaise saisie dans le choix du menu.');
// Fin du case of
end;
// Fin de boucle du menu
end;
end.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.