Sign in Join
Wiki copytemporary

Basic Pascal Tutorial/Chapter 4/Solution/fr: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Basic Pascal Tutorial/Chapter 4/Solution/fr

OldNewLine
1+[[Basic Pascal Tutorial/fr|Tutoriel de Pascal Objet]] : Sous-programmes / **Solution de l'exercice**
2+
3+``` pascal
4+(* Auteur: Tao Yue
5+ Date: 13 July 2000
6+ Description:
7+ Résout les Tours de Hanoï
8+ Version:
9+ 1.0 - version originale
10+*)
11+
12+program TowersofHanoi;
13+
14+var
15+ numdiscs : integer;
16+
17+(********************************************************)
18+
19+procedure DoTowers (NumDiscs, OrigPeg, NewPeg, TempPeg : integer);
20+(* Explanation of variables:
21+ NumDiscs -- nombre de disque sur OrigPeg
22+ OrigPeg -- numéro du piquet de la tour
23+ NewPeg -- numéro du piquet où déplacer la tour
24+ TempPeg -- piquet pour le stockage temporaire
25+*)
26+
27+begin
28+ (* Faites attention à la condition d'arrêt -- un disque *)
29+ if NumDiscs = 1 then
30+ writeln (OrigPeg, ' ---> ', NewPeg)
31+ (* Faites attention à tous les autres cas *)
32+ else
33+ begin
34+ (* En premier, déplacer tous les disques sauf le disque
35+ du bas vers TempPeg, en utilisant NewPeg comme piquet
36+ temporaire pour ce transfert *)
37+ DoTowers (NumDiscs-1, OrigPeg, TempPeg, NewPeg);
38+ (* Maintenant, déplacer le disque le plus bas depuis OrigPeg
39+ vers NewPeg *)
40+ writeln (OrigPeg, ' ---> ', NewPeg);
41+ (* Finalement, déplacer les disques qui sont actuellement
42+ sur TempPeg vers NewPeg, en utilisant OrigPeg comme
43+ piquet temporaire pour ce transfert *)
44+ DoTowers (NumDiscs-1, TempPeg, NewPeg, OrigPeg)
45+ end
46+end;
47+
48+(********************************************************)
49+
50+begin (* Main *)
51+ write ('Veuillez entrer le nombre de disques dans la tour ===> ');
52+ readln (numdiscs);
53+ writeln;
54+ DoTowers (numdiscs, 1, 3, 2)
55+end. (* Main *)
56+```
57+
58+---
59+*From the Free Pascal wiki, page "Basic Pascal Tutorial/Chapter 4/Solution/fr", as it stood on 2022-08-20 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history