-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathQUOTES.PAS
144 lines (128 loc) · 4.91 KB
/
QUOTES.PAS
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
{ @author: Sylvain Maltais (support@gladir.com)
@created: 2022
@website(https://www.gladir.com/lettrex)
@abstract(Target: Turbo Pascal, Free Pascal)
}
Program QUOTES;
Uses Strings;
Type
QuotationsRec=Record
Author,Quotation:PChar;
End;
Const
QuotationsList:Array[0..22]of QuotationsRec=(
(Author:'Albert Einstein';
Quotation:'Deux choses sont infinies : l''Univers et la bˆtise humaine. ' +
'Mais en ce qui concerne l''Univers, je n''en ai pas encore ' +
'acquis la certitude absolue.'),
(Author:'Albert Einstein';
Quotation:'Il est plus facile de d‚sint‚grer un atome qu''un pr‚jug‚.'),
(Author:'Albert Einstein';
Quotation:'Je ne sais pas comment sera la troisiŠme guerre mondiale, '+
'mais ce dont je suis s–r, c''est que la quatriŠme guerre '+
'mondiale se r‚soudra … coups de bƒtons et de silex.'),
(Author:'Albert Einstein';
Quotation:'L''Etat est notre serviteur et nous n''avons pas … en '+
'ˆtre les esclaves.'),
(Author:'Albert Einstein';
Quotation:'L''ob‚issance aveugle en l''autorit‚ est le plus grand '+
'ennemi de la v‚rit‚.'),
(Author:'Albert Einstein';
Quotation:'La connaissance s''acquiert par l''exp‚rience, '+
'tout le reste n''est que de l''information.'),
(Author:'Albert Einstein';
Quotation:'La folie est de toujours se comporter de la mˆme maniŠre '+
'et de s''attendre … un r‚sultat diff‚rent.'),
(Author:'Albert Einstein';
Quotation:'Le progrŠs technique est comme une hache qu''on aurait '+
'mis dans les mains d''un psychopathe.'),
(Author:'Albert Einstein';
Quotation:'Ne fais jamais rien contre ta conscience, mˆme si '+
'l''Etat te le demande.'),
(Author:'Albert Einstein';
Quotation:'Nous aurons le destin que nous aurons m‚rit‚.'),
(Author:'Albert Einstein';
Quotation:'Quiconque pr‚tend s''‚riger en juge de la v‚rit‚ et du '+
'savoir s''expose … p‚rir sous les ‚clats de rire des dieux '+
'puisque nous ignorons comment sont r‚ellement les choses '+
'et que nous n''en connaissons que la repr‚sentation que '+
'nous en faisons.'),
(Author:'Bruce Lee';
Quotation:'Je ne crains pas l''homme qui a pratiqu‚ 10 000 coups une '+
'fois, mais je crains l''homme qui a pratiqu‚ un coup 10 000 '+
'fois.'),
(Author:'Bruce Lee';
Quotation:'La connaissance donne le pouvoir, mais la force '+
'de caractŠre entraŒne le respect.'),
(Author:'Charles-Maurice de Talleyrand-P‚rigord';
Quotation:'Si cela va sans dire, cela ira encore mieux en le disant.'),
(Author:'Jean de La Fontaine';
Quotation:'L''avarice perd tout en voulant tout gagner.'),
(Author:'Jean de La Fontaine';
Quotation:'La m‚fiance est mŠre de la s–ret‚.'),
(Author:'Miguel de CervantŠs';
Quotation:'Qui perd la sant‚ perd beaucoup ; Qui perd un ami perd '+
'encore plus ; Mais celui qui perd le courage perd tout.'),
(Author:'MoliŠre';
Quotation:'A vaincre sans p‚rils on triomphe sans gloire.'),
(Author:'MoliŠre';
Quotation:'Qui veut noyer son chien l''accuse de la rage.'),
(Author:'Platon';
Quotation:'L''amour est aveugle'),
(Author:'Saint Matthieu';
Quotation:'Si un aveugle conduit un autre aveugle, ils tomberont tous '+
'les deux dans un trou.'),
(Author:'Socrate';
Quotation:'Je sais que je ne sais rien.'),
(Author:'Virginia Foxx';
Quotation:'Trompez-moi une fois, honte sur vous. '+
'Tromper moi deux fois, honte … toi.')
);
Var
I,J:Integer;
CurrExpr:String;
Function StrToUpper(S:String):String;
Var
I:Byte;
Begin
For I:=1 to Length(S)do Begin
If S[I] in['a'..'z']Then S[I]:=Chr(Ord(S[I])-32);
End;
StrToUpper:=S;
End;
BEGIN
If(ParamStr(1)='/?')or(ParamStr(1)='--help')or(ParamStr(1)='-h')or
(ParamStr(1)='/h')or(ParamStr(1)='/H')Then Begin
WriteLn('QUOTES : Cette commande permet de rechercher des citations ',
'c‚lŠbre.');
WriteLn;
WriteLn('Syntaxe : QUOTES expression');
WriteLn(' QUOTES /RANDOM');
WriteLn;
WriteLn('expression Indique une expression a rechercher dans une citation');
WriteLn(' /RANDOM Sort une citation au hasard.');
End
Else
If ParamCount>0 Then Begin
For I:=1 to ParamCount do Begin
CurrExpr:=ParamStr(I);
If StrToUpper(CurrExpr)='/RANDOM'Then Begin
Randomize;
J:=Random(High(QuotationsList));
WriteLn('Auteur: ',StrPas(QuotationsList[J].Author));
WriteLn('Citation : ®',StrPas(QuotationsList[J].Quotation),'¯');
WriteLn;
End
Else
For J:=Low(QuotationsList)to High(QuotationsList)do Begin
If Pos(StrToUpper(CurrExpr),StrToUpper(StrPas(QuotationsList[J].Quotation)))>0Then Begin
WriteLn('Auteur: ',StrPas(QuotationsList[J].Author));
WriteLn('Citation : ®',StrPas(QuotationsList[J].Quotation),'¯');
WriteLn;
End;
End;
End;
End
Else
WriteLn('ParamŠtre requis !');
END.