Вот мой вариант ;):
Исходный код
program Super_Ugadayka;
uses crt;
const
welcome : array [0..1, 1..5] of string =
(('‡¤а бвўг©вҐ, гў ¦ Ґ¬л© €Ја®Є! џ, ўҐ¤гйЁ© ‚ бЁ«Ё© ЏгЇЄЁ®ўЁз ”Ј ¤ ©ЄЁ,',
'а ¤ ЇаЁўҐвбвў®ў вм ў б ЁЈаҐ _[зЁв вм в®а¦Ґб⢥®]_ SUPER UGADAYKA ! ! !',
'џ ¤Ґобм ўл е®а®и® Ї®¤Ј®в®ўЁ«Ёбм ЁЎ ... ЁЎ® ᥩз б ў ¬ ЇаҐ¤бв®Ёв',
'Ї®¤ Їапзмбп Є Є б«Ґ¤гҐв! џ Ј®ў®ао ®Ў г¬б⢥®¬ Їа殮ЁЁ. €в Є ўл Ј®в®ўл',
'ЁбЇлв вм ᥡп??? ’®Ј¤ ...'),
('„®Ўа® Ї®¦ «®ў вм ЁЈаг Super Ugadayka Ё п ў и ўҐ¤гйЁ© - ‚ бЁ«Ё© ”Ј ¤ ©ЄЁ.',
' ЏҐаҐ¤ ⥬ Є Є ¬л зс¬ бЇа®бЁвҐ ᥡп:',
'ѓ®в®ўл «Ё ўл ЁбЇлв вм бў®© ЁвҐ«ҐЄв, Ё«Ё ўл 室ЁвҐбм ў® ў« б⨠ᮬҐЁп?',
'ѓ®в®ўл «Ё ўл ®Єггвбп ў «гзЁ б« ўл Ё«Ё ЁбЇлв вм Ј®аҐзм Ї®а ¦ҐЁп?',
'‘Ґ©з б ¬л г§ Ґ¬ бЄ®«мЄ® ¤ «ҐЄ® ўл ®в®и«Ё ®в ®ЎҐ§мпл ў бў®с¬ а §ўЁвЁЁ.'));
tutor : array [0..1, 1..5] of string =
((' Ќ® бЇҐаў Єа вЄ®Ґ ўўҐ¤ҐЁҐ ў Їа ўЁ« ЁЈал:',
'’аЁ а г¤ ў Є ¦¤®¬ Ё§ Є®в®але ў ¬ ЇаҐ¤бв®Ёв § ваЁ Ї®ЇлвЄЁ ®вЈ ¤ вм',
'б«гз ©®Ґ зЁб«® ®в 0 ¤® 8. Џ®зҐ¬г ®в 0 ¤® 8? Ћ¤®¬г ᮧ¤ вҐ«о Ё§ўҐбв®',
'Ї®зҐ¬г... Ќ® ў б нв® ў®«®ў вм Ґ ¤®«¦®. ‚Ґ¤м ў и 楫м - Ї®ЎҐ¤ , Ґ',
'в Є «Ё?'),
('‚ б ¦¤гв ваЁ а г¤ ў Є ¦¤®¬ Ё§ Є®в®але ў ¬ ЇаҐ¤бв®Ёв ®вЈ ¤лў вм б«гз ©®Ґ',
'зЁб«® ®в 0 ¤® 8. Ќ ®вЈ ¤лў ЁҐ Є ¦¤®Ј® Ё§ Ёе г ў б Ґбвм а®ў® ваЁ Ї®ЇлвЄЁ.',
'Џ®зҐ¬г ®в 0 ¤® 8 - бЇа®бЁвҐ ўл? ЏаҐ¤б⠢⥠ᥡҐ аҐиҐЁҐ вҐ®аҐ¬л ”Ґа¬ ,',
'§ ЇЁб ®Ґ Ї а Ў®«®©¤Ґ ўа 饨п бЁў®« ¬Ё Є ¤§Ё Ё Ї®ўв®аЁвҐ ўб«ге в Ў«Ёжг',
'㬮¦ҐЁп. …б«Ё Ї®б«Ґ нв®Ј® ўл Ґ Ї®бвЁЈ«Ё „ ®, б ў ¬Ё Ґ®зҐ¬ а §Ј®ў аЁў вм.'));
roundtext : array [0..4] of string =
('ђ г¤ ',
'€ ᥩз б а г¤ ',
'ЏаЁЈ®в®ўвҐбм... ђ г¤ ',
'Ќ зс¬ а г¤ ь',
'Ќ ®зҐаҐ¤Ё а г¤ ');
readytext : array [0..4] of string =
('Џа®Ја ¬¬ 㦥 § ¤г¬ « зЁб«®.',
'‚бс 㦥 § Ј ¤ ® Ё ¦¤св бў®ҐЈ® з б Ўлвм а §Ј ¤ л¬. Ђбм?',
'—Ёб«® 室Ёвбп ў Ї ¬пвЁ Є®¬ЇмовҐа . Ћбв «®бм в®«мЄ® ҐЈ® гЈ ¤ вм.',
'”ў ¦ Ґ¬л© Є®¬ЇмовҐа 㦥 § ¤г¬ « ¤ў ҐўҐале ®вўҐв ...®©!...ў б¬лб«Ґ зЁб«®!',
'Ће Є Є®Ґ Є ўҐа§®Ґ зЁб«® § ¤г¬ « и Є®¬ЇмовҐа...');
question : array [1..3, 0..4] of string =
(('€в Є, ў и ЇҐаў п Ї®ЇлвЄ .',
'Њ®¦Ґв г ў б Ї®«гзЁвбп ®вЈ ¤ вм б ЇҐаў®© Ї®ЇлвЄЁ? Љв® § Ґв...',
'„ ў ©вҐ ¦Ґ, гЈ ¤лў ©вҐ!',
'‚ и ўҐабЁп.',
'‚ и ўл室!'),
('Џ®ЇлвЄ ®¬Ґа ¤ў !',
'Џ®ЇлвЄ - Ґ ЇлвЄ ! ...Є 祬г нв® п?',
'Ќг, Ї®ЎҐ¤ б ¤ўге Ї®Їлв®Є - н⮠⮦Ґ Ґ Ї«®е®. Њ®¦Ґв ⥯Ґам Ї®ўҐ§св?',
'„ ў ©вҐ! Џ®Їа®Ўг©вҐ Ґйс а §.',
'ЌЁзҐЈ®, б ЇҐаў®© Ї®ЇлвЄЁ ¬ «® Єв® гЈ ¤лў Ґв. Џ®Їа®Ўг©вҐ Ґйс.'),
('’аҐвмп Ї®ЇлвЄ .',
'Ќг ¦Ґ! Џ®б«Ґ¤Ё© и б!!!',
'‘®б।®в®звҐбм. ” ў б Ґбвм Ґйс ®¤Ё и б.',
'Џ®б«Ґ¤пп Ї®ЇлвЄ .',
'‚л б¤ свҐбм? …йс Ґв? ’®Ј¤ гЈ ¤лў ©вҐ.'));
more : array [0..4] of string =
('ЃЋ‹њ�…!',
'—Ёб«®, § ¤г¬ ®Ґ Є®¬ЇмовҐа®¬, ЃЋ‹њ�….',
'ЌҐв, Є®¬ЇмовҐа § ¤г¬ « пў® ЃЋ‹њ�….',
'Ђ ў®в Ё Ґ гЈ ¤ «! —Ёб«® ЃЋ‹њ�…!',
'„ Ґв! ЃЋ‹њ�….');
less : array [0..4] of string =
('Њ…Ќњ�…!',
'Њ…Ќњ�… Ўг¤Ґв.',
'Њ…Ќњ�…, нв® ¦Ґ ®зҐўЁ¤®!',
'—в® § Ј«гЇ®бвм, Њ…Ќњ�…!',
'Њ®Ј® ў§п«. Њ…Ќњ�… ¤® Ўл.');
yesss : array [0..4] of string =
('„ ! „ ! ќв® в® зЁб«®!',
'‚л гЈ ¤ «Ё.',
'ќв® Їа ўЁ«м®Ґ зЁб«®.',
'‘®ўҐа襮 ўҐа®!',
'ЌҐўҐа®пв®, ® ўл гЈ ¤ «Ё.');
victory : array [0..1, 1..5] of string =
(('‚л Їа ўЁ«м® гЈ ¤ «Ё ўбҐ зЁб« , § ¤г¬ лҐ Є®¬ЇмовҐа®¬. ‚л ¤®Є § «Ё, зв®',
'¤®бв®©л §лў вмбп ¬лб«пйЁ¬ бгйҐбвў®¬. ‚ и г¬ ЎҐ§Ја ЁзҐ, ў и ў®«п',
'¤®бв®© ў®беЁйҐЁп, г¤ з - § ўЁбвЁ. ‚л пў«пҐвҐбм Ї®ЎҐ¤ЁвҐ«Ґ¬ 襩',
'ᥣ®¤п襩 ЁЈал. ‚ и ЇаЁ§ - ®¤Ё ¬Ё«Ё® Ї®§¤а ў«ҐЁ©!',
'„® бЄ®але ўбваҐз!!!'),
('„ ! „ ! „ ! ‚л ᤥ« «Ё нв®! ЌҐв, п Ґ ¬®Јг Ї®ўҐаЁвм, ® ўл Ї®ЎҐ¤Ё«Ё!',
'‚ и ЇаЁ§... ‘ҐЄг¤®зЄг, г ¬Ґп Ўг¬ ¦ЄҐ § ЇЁб ®... ’…‹…‚€‡Ћђ, Љ”•ЋЌЌ›‰',
'ЉЋЊЃЂ€Ќ, 2 „…‘џвЄ пЁж, Ўге Є е«ҐЎ , бҐаўҐ« в Љ ५мбЄЁ©,... Ћ‰! Џа®иг',
'Їа®йҐЁп, нв® ¦Ґ ®бв ўЁ« бЇЁб®Є Ї®ЄгЇ®Є... ў®в!... ‚ и ЇаЁ§ -',
'•ЋђЋ�…… ЌЂ‘’ђЋ…Ќ€… ЌЂ –…‹›‰ „…Ќњ. Џ®§¤а ў«по!!!'));
ad : array [0..2] of string =
('Љ®аЇ®а жЁп MilkoSoft, «оЎҐ§® ЇаҐ¤®бв ўЁўи п «Ј®аЁв¬ § ¤г¬лў Ёп зЁб« .',
'Љ®¬Ї Ёп NukeTrade - Ї®бв ўйЁЄ ўлб®Є®в®ЄбЁз®Ј® бламп ¤«п Їа®Ё§ў®¤бвў ЇЁвЄ ColaLoca.',
'”Ёа¬ FinalPath - Їа®Ё§ў®¤ЁвҐ«м ўлб®Є®Є зҐб⢥ле Ја®Ў®ў б Ї®¤®ЈаҐў®¬.');
defeat : array [0..1, 1..3] of string =
(('”ўл! Ќ® ᥣ®¤пипп ЁЈа ®Є®зЁ« бм ў иЁ¬ Ї®а ¦ҐЁҐ¬. ЌҐ а бва Ёў ©вҐбм,',
'” ў б ўбс Ґйс ў ЇҐаҐ¤Ё. џ 㢥аҐ, зв® ў б«Ґ¤гойЁ© а § ў ¬ Ї®ўҐ§св Ў®«миҐ.',
'Ђ ᥣ®¤п - Їа®й ©вҐ!'),
('ЌҐв. ќв® ҐЇа ўЁ«мл© ®вўҐв. €в Є... Љв® Ґ ®Їа ў¤ « ®¦Ё¤ Ё©? Љв® Ґ',
'®вўҐвЁ« Ї®бв ў«Ґл© ў®Їа®б? Љв® бЁ¤Ґ« ¬®с¬ бвг«Ґ? €Ја®Є, ўл - б ¬®Ґ',
'Ј«гЇ®Ґ §ўҐ®. „® бўЁ¤ Ёп!'));
procedure Start;
var
i : integer;
begin
TextMode(C80 + Font8x8);
TextColor(2);
for i := 2 to 79 do
begin
GoToXY(i, 1);
Write('Н');
GoToXY(i, 49);
Write('Н');
GoToXY(i, 5);
Write('Н');
end;
for i := 2 to 48 do
begin
GoToXY(1, i);
Write('є');
GoToXY(80, i);
Write('є');
end;
GoToXY(1, 1);
Write('Й');
GoToXY(80, 1);
Write('»');
GoToXY(1, 49);
Write('И');
GoToXY(80, 49);
Write('ј');
GoToXY(1, 5);
Write('М');
GoToXY(80, 5);
Write('№');
TextColor(5);
GoToXY(15,2);
Write('**********************************************');
GoToXY(15,3);
Write('* Welcome to the Super Ugadayka Game ! ! ! *');
GoToXY(15,4);
Write('**********************************************');
end;
var
i, j, ans, num, vict : integer;
begin
Randomize;
Start;
Window(2, 6, 79, 48);
TextColor(15);
j := random(2);
for i := 1 to 5 do
WriteLn(welcome[j, i]);
WriteLn;
WriteLn(' Њл зЁ Ґ¬!');
WriteLn;
j := random(2);
for i := 1 to 5 do
WriteLn(tutor[j, i]);
WriteLn;
WriteLn(' ‚®в ⥯Ґам ¬л ¤Ґ©бвўЁвҐ«м® зЁ Ґ¬!');
WriteLn;
vict := 0;
for i := 1 to 3 do
begin
WriteLn;
WriteLn(roundtext[Random(5)], i);
num := Random(9);
WriteLn(readytext[Random(5)]);
WriteLn;
for j := 1 to 3 do
begin
WriteLn(question[j, Random(5)]);
TextColor(10);
Write('=> ');
TextColor(4);
Read(ans);
TextColor(15);
WriteLn;
if ans = num then
begin
WriteLn(yesss[Random(5)]);
Inc(vict);
break;
end;
if ans < num then
WriteLn(more[Random(5)])
else
WriteLn(less[Random(5)]);
end;
if vict < i then break;
end;
WriteLn;
j := Random(2);
if vict = 3 then
for i := 1 to 5 do
WriteLn(victory[j, i])
else
for i := 1 to 3 do
WriteLn(defeat[j, i]);
WriteLn;
WriteLn('‘Ї®б®а 襩 ᥣ®¤п襩 ЁЈал:');
WriteLn(ad[Random(3)]);
ReadKey;
end.
PS Вот скажите, писать такое извращение с моей стороны - это нормально?