1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
program RPG;
Type
Personnage=RECORD
Nom : string;
Age : integer;
PointsDeVie : integer;
Force : integer;
Intelligence : integer;
Niveau : integer;
Arme : string;
Argent: integer;
Objets : array[1..10] of string;
END;
Var
MonPers :Personnage;
Procedure AffecteValeurs;
Var
i: integer;
Begin
Writeln(' Quel nom ? ');
Readln(Monpers.Nom);
Writeln(' Quel âge ? ');
Readln(MonPers.Age);
Writeln(' Combien de points de vie ? ');
Readln(Monpers.PointsDeVie);
Writeln(' Quelle force (de 0 à 1000) ? ');
Readln(Monpers.Force);
Writeln(' Quelle intelligence (de 0 à 100 ? ');
Readln(Monpers.Intelligence);
Writeln(' Quel Niveau ? ');
Readln(Monpers.Niveau);
Writeln(' Arme ? (couteau, sabre, arc, arbalète, épée ');
Readln(Monpers.Arme);
Writeln(' Combien d''argent ? ');
Readln(Monpers.Argent);
For i:=1 to 10 do
Begin
Writeln(' Objet numéro', i, ' ? ');
Readln(Monpers.Objets[i]);
End;
end; {AffecteValeurs}
Procedure AfficheValeurs;
Var
i: integer;
Begin
With Monpers do { Une syntaxe qui permet d'éviter de taper le préfixe à chaque fois }
Begin
Writeln('nom : ', nom, ' âge: ' , Age, ' PDV : ', PointsDeVie, ' Force : ', Force);
Writeln('Intelligence : ', Intelligence, ' Niveau : ', Niveau, ' Arme : ', Arme, ' Argent : ', Argent);
For i:=1 to 10 do
Begin
Writeln(' Objet n° ', i, ' : ', Objets[i]);
End;
End;
End; { AfficheValeurs }
Begin { Principal }
AffecteValeurs;
AfficheValeurs;
Readln {pour voir les résultats }
End. { Principal } |
Partager