Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
73
Добавлен:
02.05.2014
Размер:
59.48 Кб
Скачать
- 503 -
ѓ ‹ Ђ ‚ Ђ 13 (Ђ­¤ан ‹  Њ®в)
----------------------
€ ‘ Љ “ ‘ ‘ ’ ‚ … Ќ Ќ › ‰ € Ќ ’ … ‹ ‹ … Љ ’

—Ґ«®ўҐзҐбЄЁ© а §г¬ ЇаҐ¤бв ў«пҐв б®Ў®© ЎҐ§¤­г, § Ї®«­Ґ­­го Їа®и«л¬,
­ бв®пйЁ¬ Ё Ўг¤гйЁ¬. Ћ­ ®б®§­ Ґв бў®Ґ б®Ўб⢥­­®Ґ бгйҐбвў®ў ­ЁҐ Ё пў«пҐвбп
ў Ё§ўҐбв­®¬ бЁлб«Ґ ўбҐЈ® «Ёим гбва®©бвў®¬ б ў®§¬®¦­®бвмо б ¬®®аЈ ­Ё§ жЁЁ Ё
бЇ®б®Ў­®бвмо § ¤ ў вм ў®Їа®бл ® бў®Ґ¬ б ¬®®йг饭ЁЁ. ‚лзЁб«ЁвҐ«м­ п вҐе­ЁЄ 
­ е®¤Ёвбп ­  Ї®а®ЈҐ Ї®­Ё¬ ­Ёп ¬Ґе ­Ё§¬®ў ¬лб«Ё, Ї ¬пвЁ Ё ᮧ­ ­Ёп. Ћ¤­ Є®
­ ¬, Є Є Їа®Ја ¬¬Ёбв ¬ Є®¬ЇмовҐа­ле ЁЈа, ­  б ¬®¬ ¤Ґ«Ґ ­Ґ ­г¦­® Ўлвм
б«ЁиЄ®¬ ЁбЄг襭­л¬Ё ў ᮧ¤ ­ЁЁ а §г¬­® ¬лб«пйЁе бЁб⥬. ‘гйҐбвў  ў ­ иЁе
ЁЈа е ¤®«¦­л в®«мЄ® Їа®Ё§ў®¤Ёвм ўЇҐз в«Ґ­ЁҐ, зв® ®­Ё бЇ®б®Ў­л ¬лб«Ёвм
б ¬®бв®п⥫쭮. ‚ нв®© з бвЁ ¬л Ё§Ў®а®§¤Ё¬ ⥠ў®¤л, Є®в®алҐ Ё ¤® бЁе Ї®а
®вбгвбвўгов ­  Є ав е ¤ ¦Ґ б ¬ле ЇҐаҐ¤®ўле ўЁ¤Ґ®ЁЈа. Њл ®Ўбг¤Ё¬ ⥬л, ў
Є®Ёе ®Ў« бвм ®в Їа ЄвЁзҐбЄ®Ј® ¤® ⥮аҐвЁзҐбЄ®Ј® Ї®«­®бвмо Ё§®вҐаЁз­ .
ЌҐб¬®вап ­  нв®, Є®¬Ї«ҐЄб ¬лб«пйЁе ¬®¤Ґ«Ґ© ¬®¦Ґв Ўлвм Ї®«г祭 ¤ ¦Ґ б
¬Ё­Ё¬ «м­л¬Ё §­ ­Ёп¬Ё. ќвЁ ¬®¤Ґ«Ё Ўг¤гв бЇ®б®Ў­л б ¬®бв®п⥫쭮 ўлЇ®«­пвм
в ЄЁҐ Їа®б⥩訥 § ¤ зЁ, Є Є ба ¦Ґ­ЁҐ, Ї®ЁбЄ Ё гЄ«®­Ґ­ЁҐ.
Њл ®Ўбг¤Ё¬ б«Ґ¤гойЁҐ ⥬л:
- ЋЎ§®а в®Ј®, Є Є ¬лб«пв ўЁ¤Ґ®ЁЈал;
- Ђ«Ј®аЁв¬л ЏаҐб«Ґ¤®ў ­Ёп Ё “Є«®­Ґ­Ёп;
- 504 -
-  Ў«®­­лҐ ¬лб«Ё;
- ‘«гз ©­лҐ ЇҐаҐ¤ўЁ¦Ґ­Ёп;
- Ђўв®¬ вл б Є®­Ґз­л¬Ё б®бв®п­Ёп¬Ё;
- ‚Ґа®пв­®бв­лҐ  ўв®¬ вл;
- Џ ¬пвм Ё ®Ўг祭ЁҐ;
- Ђ«Ј®аЁв¬л Џ®ЁбЄ ;
- ’Ґ®аЁп ЁЈа.


ЉЂЉ Њ›‘‹џ’ ‚€„…Ћ€ѓђ›: ЋЃ‡Ћђ

ЏаЁ¤Ґв в®в ¤Ґ­м, Є®Ј¤  Є®¬ЇмовҐа бв ­Ґв в ЄЁ¬ ¦Ґ бҐа쥧­л¬ б®ЎҐбҐ¤­ЁЄ®¬,
Є Є Ё «гзиЁҐ 祫®ўҐзҐбЄЁҐ г¬л. Ћ¤­ Є® ᥣ®¤­пи­ЁҐ Є®¬ЇмовҐал (Ї® Єа ©­Ґ©
¬ҐаҐ, ЏЉ) ­Ґ ®Ў« ¤ ов б«®¦­®бвмо, ­Ґ®Ўе®¤Ё¬®© ¤«п Ё­ЁжЁ жЁЁ ¬лб«Ґ© Ё
вў®азҐбЄЁе Їа®жҐбб®ў.Ќ® ­  б ¬®¬ ¤Ґ«Ґ ­ б нв® Ё ­Ґ ¤®«¦­® ў®«­®ў вм! Њл ¦Ґ
¤Ґ« Ґ¬ ўЁ¤ҐЁЈал,   ­Ґ  ­¤а®Ё¤®ў. ‚ ЁЈаҐ г ­ б ЇаЁбгвбвўгов ­ҐЄ®в®алҐ
ᮧ¤ ­Ёп Ё ®ЎкҐЄвл. ‚бҐ, зв® ­ ¬ ­г¦­® ᤥ« вм, нв® ЇаЁ¤ вм Ё¬ ўЁ¤Ё¬®бвм
бЇ®б®Ў­®бвЁ а §г¬­®Ј® ¬ли«Ґ­Ёп. €Ја ойЁ© ¬®¦Ґв ®йгй вм бҐЎп Ї®¬ҐйҐ­­л¬ ­ 
Є®а®вЄ®Ґ ўаҐ¬п ў ­ҐЄ®Ґ Їа®бва ­бвў®, Ј¤Ґ ®­ ¤г¬ Ґв, зв® ўа ¦ҐбЄ п  в Є  ­ 
Є®а Ў«м ॠ«м­ ! „«п ®бгйҐбвў«Ґ­Ёп нвЁе 楫Ґ© ¬л ¤®«¦­л Їа® ­ «Ё§Ёа®ў вм,
Є ЄЁ¬ ࠧ㬮¬ ¬л ¤®«¦­л ­ ¤Ґ«Ёвм ­ иЁ ЁЈа®ўлҐ ®ЎкҐЄвл. ‘«®¦­®бвм нв®Ј®
"а §г¬ " § ўЁбЁв ®в в®Ј®, Є Єго а §­®ўЁ¤­®бвм бгйҐбвў ¬л Є®­бвагЁа㥬. Љ
ЇаЁ¬Ґаг, ᮧ¤ ­Ёп Ё§ Pac Man Ў®«миго з бвм бў®ҐЈ® ўаҐ¬Ґ­Ё ва впв ­ 
ЇаҐб«Ґ¤®ў ­ЁҐ Ё«Ё гЎҐЈ ­ЁҐ ®в ў б. Ѓг¤м ¬л ⥬Ё «о¤м¬Ё, зв® ­ ЇЁб «Ё Pac
Man, ¬л Ё¬Ґ«Ё Ўл ў®§¬®¦­®бвм § Ј®а вм Ј¤Ґ-­ЁЎг¤м ­  ѓ ў ©пе, ­® г ­ б ў
в Є®¬ б«гз Ґ 㦥 Ўл« Ўл  «Ј®аЁв¬ЁзҐбЄЁ© Ё­бва㬥­в ¤«п ®бгйҐбвў«Ґ­Ёп нвЁе
ЇаҐб«Ґ¤®ў ­Ё© Ё гЎҐЈ ­Ё©.
‘ ¤агЈ®© бв®а®­л, Ґб«Ё Ўл ¬л ᮧ¤ ў «Ё ўЁ¤Ґ®ЁЈал, Ї®¤®Ў­лҐ "Љ®б¬ЁзҐбЄЁ¬
‡ еў взЁЄ ¬", ЇаЁ¤ ­ЁҐ ўЁ¤Ё¬®бвЁ Ё­вҐ««ҐЄв  ўап¤ «Ё Ї®вॡ®ў «® Ўл Ў®«ҐҐ
Ї ал ¤о¦Ё­ бва®Є ў Їа®Ја ¬¬Ґ. ЏбҐў¤®Є®¤ ўлЈ«п¤Ґ« Ўл ЇаЁ¬Ґа­® в Є:
1. Џа®¤®«¦ вм ¤ўЁ¦Ґ­ЁҐ ў ⮬ ­ Їа ў«Ґ­ЁЁ, ў Є®в®а®¬ ўл ¤ўЁЈ ҐвҐбм
(ўЇа ў® Ё«Ё ў«Ґў®);

2. Љ®Ј¤  ўл Ї®Ї ¤ҐвҐ ­  Ја ­Ёжг нЄа ­ , Ё§¬Ґ­Ёвм ­ Їа ў«Ґ­ЁҐ Ё
¤ўЁЈ вмбп ў¤®«м ®бЁ ўлб®вл;

3. ЇҐаҐ©вЁ Є Ї.1.

ЌҐ иЁЎЄ® ®ЎиЁа­л© ­ Ў®а "Ё­вҐ««ҐЄвг «м­ле" дг­ЄжЁ© ¤«п ЁЈал, ЇаЁЎл«м ®в
Є®в®а®© §  ўбҐ ўаҐ¬п ҐҐ бгйҐбвў®ў ­Ёп б®бв ўЁ«  ®в 50 ¤® 100 ¬Ё««Ё®­®ў
¤®«« а®ў. ’аҐе¬Ґа­лҐ ўЁ¤Ґ®ЁЈал ­ ¬ Ё­вҐаҐб­л ­Ґ Ї®в®¬г, зв® ®­Ё "г¬­ҐҐ"
- 505 -
®Ўлз­ле "Ї«®бЄЁе" ЁЈа. ЋЎкҐ¬­®бвм ¤ Ґв в®«мЄ® Ї®ўл襭­®Ґ ®йг饭ЁҐ
ॠ«м­®бвЁ,    «Ј®аЁв¬л, ­ ¤Ґ«пойЁҐ ЇҐаб®­ ¦Ґ© ࠧ㬮¬, ў ­Ёе ⥠¦Ґ, зв® Ё
ў ¤ўг嬥а­ле ЁЈа е. Љ ЇаЁ¬Ґаг, Terminator Rampage Ё¬ҐҐв ¤Ґ©б⢨⥫쭮
­Ґб«®¦­го бЁб⥬㠨бЄгбб⢥­­®Ј® Ё­вҐ««ҐЄв , ЇаЁ¬Ґа­® в®Ј® ¦Ґ га®ў­п
б«®¦­®бвЁ, зв® Ё ў Pac Man. Ћ¤­ Є®, ЇаЁ ­ «ЁзЁЁ ваҐе¬Ґа­®© Ја дЁЄЁ ў¬Ґб⥠б
Ё§®й७­л¬ §ўгЄ®¬ бгйҐбвў  ў ­Ґ© Є ¦гвбп ўЇ®«­Ґ ®¤г襢«Ґ­­л¬Ё.
€в Є, ЇаЁўҐ¤Ґ¬ Є ®ЎйҐ¬г §­ ¬Ґ­ вҐ«о е а ЄвҐа Ў®«миЁ­бвў  Є®¬ЇмовҐа­ле ЁЈа:
Ё­вҐ««ҐЄв ЇҐаб®­ ¦Ґ© ­ е®¤Ёвбп ­  ЇҐйҐа­®¬ га®ў­Ґ, ­® нв®в ­Ґ¤®бв в®Є
Є®¬ЇҐ­бЁагҐвбп §  бзҐв Ја дЁЄЁ Ё §ўгЄ .
ђ §а Ў®взЁЄ®ў ўЁ¤Ґ®ЁЈа Ё¤Ґп ЁбЄгбб⢥­­®Ј® Ё­вҐ««ҐЄв  ЇаЁвпЈЁў Ґв б­®ў  Ё
б­®ў  ­  Їа®в殮­ЁЁ ¤«ЁвҐ«м­®Ј® ўаҐ¬Ґ­Ё, Ї®в®¬г зв® ЁЈал, Є®в®алҐ ®­Ё
ЇЁигв, ў Ў®«миЁ­б⢥ бў®Ґ¬ ¤®ў®«м­®  ЈаҐббЁў­л. Ќ и  § ¤ з  ў нв®© з бвЁ
б®бв®Ёв ў ⮬, зв®Ўл Ї®­пвм ¬Ґв®¤л, ЁбЇ®«м§гҐ¬лҐ ¤«п ¬®¤Ґ«Ёа®ў ­Ёп
Ё­вҐ««ҐЄв , Ё Ј« ў­лҐ ЄаЁвҐаЁЁ, ў­гваЁ Є®в®але бгйҐбвўгов "¬лб«пйЁҐ"
 «Ј®аЁв¬л. ‡ Ї®¬­ЁвҐ, ЁЈал ­Ґ ¤г¬ ов. Ћ­Ё в®«мЄ® "¤Ґ« ов г¬­®Ґ «Ёж®".
Џ®бҐ¬г Ў®«миго з бвм ўаҐ¬Ґ­Ё ¬л Ўг¤Ґ¬ Є®­бвагЁа®ў вм ®б­®ў­®© а §г¬­л© ўЁ¤
¤Ґп⥫쭮бвЁ ўа®¤Ґ ЇаҐб«Ґ¤®ў ­Ёп Ё ­ Ї ¤Ґ­Ёп. Љ Є ўл ¤®Ј ¤лў ҐвҐбм, ­  нв®
Ў®«ми®Ј® г¬  ­Ґ ­ ¤®: ®Ў­ аг¦Ёвм Їа®вЁў­ЁЄ  Ё г­Ёз⮦Ёвм ҐЈ®, Ё«Ё, б в®зЄЁ
§аҐ­Ёп Є®¬ЇмовҐа­®© Їа®Ја ¬¬л, ¤ўЁЈ вмбп Ї® ­ Їа ў«Ґ­Ёо Є ўа Јг, ў§пвм ҐЈ®
­  ¬гиЄг Ё ®вЄалвм ®Ј®­м Ё§ ўбҐе ўЁ¤®ў ®аг¦Ёп.

Ђ‹ѓЋђ€’Њ› Џђ…‘‹…„Ћ‚ЂЌ€џ € “Љ‹ЋЌ…Ќ€џ

€в Є, ­ з­Ґ¬. Ќ ЁЎ®«ҐҐ Їа®бвл¬Ё ЁЈа®ўл¬Ё  «Ј®аЁв¬ ¬Ё ЁбЄгбб⢥­­®Ј®
Ё­вҐ««ҐЄв  пў«повбп в Є ­ §лў Ґ¬л© Ђ«Ј®аЁв¬ ЏаҐб«Ґ¤®ў ­Ёп Ё ҐЈ®
Їа®вЁў®Ї®«®¦­®бвм - Ђ«Ј®аЁв¬ “Є«®­Ґ­Ёп. ‚ ®б­®ў­®¬, ®­Ё § бв ў«пов ЁЈа®ў®©
®ЎкҐЄв Ё«Ё ¤®Ј®­пвм ЁЈа®Є , Ё«Ё гЎҐЈ вм ®в ­ҐЈ®. Љ®­Ґз­®, Є®­дЁЈга жЁп
ЁЈа®ў®Ј® Їа®бва ­бвў  в Є¦Ґ ¤®«¦­  гзЁвлў вмбп, зв®Ўл ЇаҐб«Ґ¤®ў вҐ«м ¤ ¦Ґ Ё
­Ґ Їлв «бп Їа®©вЁ бЄў®§м б⥭л. „ ў ©вҐ а бᬮваЁ¬ Їа®жҐбб, ¬®¤Ґ«ЁагойЁ©
Ї®Ј®­о ­ҐЄ®в®а®Ј® бгйҐбвў  §  ЁЈа®Є®¬.

ЏаҐб«Ґ¤®ў ­ЁҐ
-------------------
‚®-ЇҐаўле, ­ ¬ ­Ґ®Ўе®¤Ё¬® §­ вм а бЇ®«®¦Ґ­ЁҐ ®Ў®Ёе ®ЎкҐЄв®ў. “ ­ б Ґбвм нвЁ
¤ ­­лҐ, в Є Є Є ¬л §­ Ґ¬ Є®®а¤Ё­ вл ЁЈа®Є  Ё ЁЈа®ў®Ј® ®ЎкҐЄв , пў«по饣®бп
ўа Ј®¬.
‚®-ўв®але, ­ ¬ ­Ґ®Ўе®¤Ё¬® бЄ®­бвагЁа®ў вм  «Ј®аЁв¬, Є®в®ал© Ўг¤Ґв гЇа ў«пвм
Ї®ўҐ¤Ґ­ЁҐ¬ ўа Ј , ЇаҐб«Ґ¤го饣® ЁЈа®Є . Ђ«Ј®аЁв¬ 13.1 ¤Ґ« Ґв Ё¬Ґ­­® в®, зв®
¬л ®в ­ҐЈ® Ё е®вЁ¬:
- 506 -
Ђ«Ј®аЁв¬ 13.1. Ђ«Ј®аЁв¬ ЏаҐб«Ґ¤®ў ­Ёп.
_________________________________________________________________________
// ЏаҐ¤Ї®«®¦Ё¬, зв® px,py - Є®®а¤Ё­ вл ЁЈа®Є ,
// ex,ey - Є®®а¤Ё­ вл Їа®вЁў­ЁЄ 

while (ЁЈа )
{
Їа®Ја ¬¬­л© Є®¤
......
......
// ‚­ з «Ґ а бб¬ ваЁў Ґ¬ ЇҐаҐ¬ҐйҐ­ЁҐ Ї® Ј®аЁ§®­в «Ё (®бм •)
if ex>px then ex=ex+1
if ex<px then ex=ex-1

// ’ҐЇҐам а бб¬ ваЁў Ґ¬ ўҐавЁЄ «м­л© (Y) Є®¬Ї®­Ґ­в
if ey>py then ey=ey+1
if ey<py then ey=ey-1
....
....
Їа®Ја ¬¬­л© Є®¤
}
_________________________________________________________________________

- …б«Ё ўа Ј ­ е®¤Ёвбп бЇа ў , в® Ґбвм ҐЈ® •-Є®®а¤Ё­ в  Ў®«миҐ
ᮮ⢥вбвўго饩 Є®®­¤Ё­ вл ЁЈа®Є , ЇаҐб«Ґ¤®ў вҐ«м 㬥­ми Ґв бў®о
б®Ўб⢥­­го Ї®§ЁжЁо Ї® ®бЁ • ­  Ґ¤Ё­Ёжг Ё ⥬ б ¬л¬ ЇаЁЎ«Ё¦ Ґвбп Є
ЁЈа®Єг. …б«Ё ¦Ґ Їа®вЁў­ЁЄ ­ е®¤Ёвбп «ҐўҐҐ ЁЈа®Є , ®­, ­ ®Ў®а®в,
㢥«ЁзЁў Ґв бў®о Ј®аЁ§®­в «м­го Є®®а¤Ё­ вг.
- ’  ¦Ґ б ¬ п «®ЈЁЄ  ЇаЁ¬Ґ­Ё¬  Ё Є ЇҐаҐ¬ҐйҐ­Ёо Ї® ўҐавЁЄ «Ё.

€бЇ®«м§гп нв®в  «Ј®аЁв¬, Їа®вЁў­ЁЄ ЇаҐб«Ґ¤гҐв ЁЈа®Є  Ї®звЁ бв®«м ¦Ґ
­Ґг¬®«Ё¬®, Є Є Ё ’1000 Ё§ ’Ґа¬Ё­ в®а -2. Ћ­ ­Ґ ®бв ­®ўЁвбп ¤® вҐе Ї®а, Ї®Є 
­Ґ Ї®©¬ Ґв ЁЈа®Є . Њл ¬®Ј«Ё Ўл ­ҐбЄ®«мЄ® ®Ў«ҐЈзЁвм ҐЈ® § ¤ зг Їг⥬
¤®Ў ў«Ґ­Ёп ­ҐЄ®в®а®© ¤®Ї®«­ЁвҐ«м­®© «®ЈЁЄЁ, бЇ®б®Ўбвўго饩 ҐЈ® ¤ўЁ¦Ґ­Ёо Є
Ї®§ЁжЁЁ ­ ­ҐбҐ­Ёп г¤ а . Ћ¤­ Є®, ЇҐаҐ¤ ⥬, Є Є нв® ¤Ґ« вм, ¤ ў ©вҐ
Ї®б¬®ваЁ¬ Їа®Ја ¬¬г, ¬®¤Ґ«Ёагойго ЇаҐб«Ґ¤®ў ­ЁҐ. ‹ЁбвЁ­Ј Їа®Ја ¬¬л 13.1
аЁбгҐв 2 в®зЄЁ: ®¤­г Ј®«гЎго (ўл),   ¤агЈго Єа б­го(Їа®вЁў­ЁЄ). —в® Ўл ўл
­Ё ЇаҐ¤ЇаЁ­Ё¬ «Ё, Єа б­ п в®зЄ  Їлв Ґвбп ­ бвЁзм ў б. „«п ¤ўЁ¦Ґ­Ёп (Ё«Ё, п
Ўл бЄ § «, ЎҐЈ !) ­ ¦¬ЁвҐ Є« ўЁиг U - ЇҐаҐ¬ҐйҐ­ЁҐ ўўҐае, N - ў­Ё§, H -
ў«Ґў® Ё J - ўЇа ў®. „«п ўл室  Ё§ Їа®Ја ¬¬л ­ ¦¬ЁвҐ Q.

‹ЁбвЁ­Ј 13.1. Џа®Ја ¬¬  ’Ґа¬Ё­ в®а (TERM.C).
_______________________________________________________________________

// I N C L U D E S////////////////////////////////////////////////////////////

#include <stdio.h>
#include <graph.h>


// G L O B A L S /////////////////////////////////////////////////////////////

unsigned int far *clock = (unsigned int far *)0x0000046C;// pointer to internal
// 18.2 clicks/sec

//////////////////////////////////////////////////////////////////////////////

Timer(int clicks)
{
// this function uses the internal time keeper timer i.e. the one that goes
// at 18.2 clicks/sec to to a time delay. You can find a 32 bit value of
// this timer at 0000:046Ch

unsigned int now;

// get current time

now = *clock;

// wait till time has gone past current time plus the amount we eanted to
// wait. Note each click is approx. 55 milliseconds.

while(abs(*clock - now) < clicks){}

} // end Timer

// M A I N ///////////////////////////////////////////////////////////////////

main()
{

int px=160,py=100, // starting position of player
ex=0,ey=0; // starting position of enemy

int done=0; // exit flag

_setvideomode(_MRES256COLOR);

printf(" The Terminator - Q to Quit");

// main game loop

while(!done)
{
// erase dots

_setcolor(0);

_setpixel(px,py);
_setpixel(ex,ey);

// move player

if (kbhit())
{

// which way is player moving

switch(getch())
{

case 'u': // up
{
py-=2;
} break;

case 'n': // down
{
py+=2;
} break;

case 'j': // right
{
px+=2;
} break;


case 'h': // left
{
px-=2;
} break;

case 'q':
{
done=1;
} break;

} // end switch

} // end if player hit a key

// move enemy

// begin brain

if (px>ex) ex++;
if (px<ex) ex--;
if (py>ey) ey++;
if (py<ey) ey--;

// end brain

// draw dots

_setcolor(9);
_setpixel(px,py);

_setcolor(12);
_setpixel(ex,ey);

// wait a bit

Timer(1);

} // end while

_setvideomode(_DEFAULTMODE);

} // end main
_______________________________________________________________________

‹ЁбвЁ­Ј 13.1 Ї®Є §лў Ґв Є Є Їа®бв® бЄ®­бвагЁа®ў вм ­ Ў®а ¤Ґ©бвўЁ©,
Є ¦гйЁебп ­  ўЁ¤ а §г¬­л¬Ё. Ќ® ­  б ¬®¬ ¤Ґ«Ґ, ЇаҐ¦¤Ґ 祬 ¬л Ї®«гзЁ¬
Ї®«­®жҐ­­л© ЁбЄгбб⢥­­л© Ё­вҐ««ҐЄв, нвЁ бва®ЄЁ Їа®Ја ¬¬л ¤®«¦­л ЇаҐвҐаЇҐвм
¬ ббг гб®ўҐа襭бвў®ў ­Ё©.

“Є«®­Ґ­ЁҐ
-----------------
Џ®Є  ¬л ҐйҐ ­Ґ ги«Ё б«ЁиЄ®¬ ¤ «ҐЄ® ў ­ иЁе а бб㦤Ґ­Ёпе, Їа®¤®«¦Ё¬ ­ иг
¤ЁбЄгббЁо а §Ј®ў®а®¬ ® пў«Ґ­ЁЁ Їаאַ Їа®вЁў®Ї®«®¦­®¬ ЇаҐб«Ґ¤®ў ­Ёо - ®Ў
гЄ«®­Ґ­ЁЁ. —в®Ўл бЄ®­бвагЁа®ў вм ᮧ¤ ­ЁҐ, гЄ«®­по饥бп ®в ЁЈа®Є , ­ ¬
­г¦­® ᤥ« вм ў в®з­®бвЁ Їа®вЁў®Ї®«®¦­®Ґ ЇаҐ¤л¤гйЁ¬ ¤Ґ©бвўЁп¬. Ђ«Ј®аЁв¬
13.2 ў ®ЎйЁе зҐав е Ї®Є §лў Ґв нв®.

Ђ«Ј®аЁв¬ 13.2. Ђ«Ј®аЁв¬ “Є«®­Ґ­Ёп.
----------------------------------------------------------------------
// Їгбвм (px,py) - Ї®§ЁжЁп ЁЈа®Є  Ё (ex,ey) - Ї®§ЁжЁп Їа®вЁў­ЁЄ 
while (ЁЈа )
{

.....// Є®¤ Їа®Ја ¬¬л

// ‚­ з «Ґ - Ј®аЁ§®­в «м­ п б®бв ў«пой п ЇҐаҐ¬ҐйҐ­Ёп
if ex>px then ex=ex-1
if ex<px then ex=ex+1
- 510 -
// ’ҐЇҐам - ўҐавЁЄ «м­ п б®бв ў«пой п
if ey>py then ey=ey-1
if ey<py then ey=ey+1

.... // Є®¤ Їа®Ја ¬¬л

}
________________________________________________________________________

‚ н⮬ ¬ҐбвҐ п ҐйҐ а § е®зг § ®бваЁвм ў иҐ ў­Ё¬ ­ЁҐ ­  ⮬, зв® ЁЈал ­Ґ
¤г¬ ов. ЏҐаб®­ ¦Ё ў ­Ёе в®«мЄ® б®ўҐаи ов ­Ґб«®¦­лҐ нў®«ожЁЁ ў Їа®бва ­б⢥
Ё ўаҐ¬Ґ­Ё, ¤  ®ЇаҐ¤Ґ«Ґ­­л¬ ®Ўа §®¬ ॠЈЁагов ­  ®Єаг¦ ойго ®Ўбв ­®ўЄг Ё
¤Ґ©бвўЁп ЁЈа®Є . (ЌҐЄ®в®алҐ гзҐ­лҐ бзЁв ов, зв® «о¤Ё - нв® ­Ґ зв® Ё­®Ґ, Є Є
­ Ў®а ¤Ґ©бвўЁ© Ё ॠЄжЁ©.)
Ђ ⥯Ґам ЇҐаҐ©¤Ґ¬ Є б«Ґ¤го饩 ⥬Ґ Ё ®Ўбг¤Ё¬ в Є®Ґ Ї®­пвЁҐ, Є Є "и Ў«®­­лҐ
¬лб«Ё".

 Ў«®­­лҐ ¬лб«Ё
-----------------------
Ќ  § аҐ ᮧ¤ ­Ёп ўЁ¤Ґ®ЁЈа Їа®Ја ¬¬Ёбвл бв «ЄЁў «Ёбм б бҐа쥧­л¬Ё
Їа®Ў«Ґ¬ ¬Ё, Їа®Ўгп ­ ­ҐбвЁ в®зЄЁ ­  нЄа ­. Ћ­Ё а ¤®ў «Ёбм Ї® Ї®ў®¤г г¤ з­®©






ђЁб.13,1. Џа®вЁў­ЁЄ, ¤Ґ©бвўгойЁ© Ї® и Ў«®­г.

- 511 -
Ё¬Ёв жЁЁ в ЄвЁЄЁ Ў®п Ё ­ ЇЁб ­Ёп ­ Ў®а   «Ј®аЁв¬®ў, гЇа ў«пойЁе бгйҐбвў ¬Ё
ў Ёе ¬ЁаҐ.
“ўл, ®­Ё ¤г¬ «Ё, зв® ¬®Јгв Ё¬ЁвЁа®ў вм а §г¬­®Ґ Ї®ўҐ¤Ґ­ЁҐ б Ї®¬®ймо
и Ў«®­®ў, в® Ґбвм ®ЇЁблў п а冷¬ жЁда ва ҐЄв®аЁЁ ЇҐаҐ¬ҐйҐ­Ёп ᮧ¤ ­Ё©. Љ
ЇаЁ¬Ґаг, ў ЁЈаҐ Galaxian ¬ «Ґ­мЄЁҐ Є®б¬ЁзҐбЄЁҐ Є®а Ў«Ё ¤Ґ« ов ­ҐбЄ®«мЄ®
ЄагЈ®ў, бв५пов ў ў б ­ҐЄ®в®а®Ґ ўаҐ¬п,   § вҐ¬ ў®§ўа й овбп ­  ЇаҐ¦­ҐҐ
¬Ґбв® ў бв о бў®Ёе б®а®¤ЁзҐ©. Џ®б¬®ваЁ¬ ­  аЁб.13.1.
Љ®Ј¤  ®­Ё ўлЇ®«­пов нвЁ ¤ўЁ¦Ґ­Ёп, в® ўбҐЈ® «Ёим б«Ґ¤гов Є®¬ ­¤ ¬, § а ­ҐҐ
­ ЇЁб ­­ле и Ў«®­®ў.
Љ®­бвагЁа®ў ­ЁҐ и Ў«®­®ў - з१ўлз ©­® «ҐЈЄ®Ґ § ­пвЁҐ Ё ®­Ё ­ и«Ё
ЁбЇ®«м§®ў ­ЁҐ ў® ¬­®ЈЁе б業 аЁпе. Љ Є ЇаЁ¬Ґа, ЁбЇ®«м§гҐ¬ и Ў«®­л Ё
б«гз ©­лҐ зЁб«  ¤«п ¬®¤Ґ«Ёа®ў ­Ёп "а §г¬ ", Є®в®ал© ¬®¦­® ЁбЇ®«м§®ў вм,
­ ЇаЁ¬Ґа, ¤«п гЇа ў«Ґ­Ёп ­ҐЎ®«миЁ¬ Є®б¬ЁзҐбЄЁ¬ Є®а Ў«Ґ¬. Ћ­ Їлв Ґвбп
гЄ«®­Ёвмбп ®в ў б, Ё ў в® ¦Ґ ўаҐ¬п Їа®ЎгҐв ЇаЁжҐ«м­® бв५пвм. ’®, зв®
¬®¦­® ¤«п нв®Ј® ᤥ« вм, Ї®Є § ­® ў Ђ«Ј®аЁв¬Ґ 13.3.

Ђ«Ј®аЁв¬ 13.3.  Ў«®­л б® б«гз ©­л¬ ўлЎ®а®¬.
--------------------------------------------------------------------------
// ЏаҐ¤Ї®«®¦Ё¬, зв® pattern - нв® ¬ ббЁў, ᮤҐа¦ йЁ© ­ Ў®а Є®¬ ­¤
// ¤«п ॠ«Ё§ жЁЁ ¤ҐбпвЁ а §«Ёз­ле и Ў«®­®ў Ї®ўҐ¤Ґ­Ёп

while (Ё¤Ґв ЁЈа )
{

.... Є®¤ Їа®Ја ¬¬л

// Џа®ўҐа塞, § Є®­зҐ­  «Ё ®Ўа Ў®вЄ  ⥪г饣® и Ў«®­ 
if (Ґб«Ё ®Ўа Ў®вЄ  Є®¬ ­¤ ⥪г饣® и Ў«®­  § Є®­зҐ­ )
{

// ‚лЎЁа Ґ¬ ­®ўл© и Ў«®­
current_pattern = pattern[rand()%10];

Ї®§ЁжЁп Їа®вЁў­ЁЄ  = бв а п Ї®§ЁжЁп +
б«Ґ¤гойЁ© н«Ґ¬Ґ­в ⥪г饣® и Ў«®­ 

“ўҐ«ЁзЁ¬ ­  Ґ¤Ё­Ёжг §­ зҐ­ЁҐ Ё­¤ҐЄб  н«Ґ¬Ґ­в®ў и Ў«®­ 

.... Є®¤ Їа®Ја ¬¬л

}
________________________________________________________________________

Ђ«Ј®аЁв¬ 13.3 Є ¦Ґвбп б«®¦­ҐҐ ЇаҐ¤л¤гйЁе Ђ«Ј®аЁв¬®ў ЏаҐб«Ґ¤®ў ­Ёп Ё
“Є«®­Ґ­Ёп, ­® ­  б ¬®¬ ¤Ґ«Ґ нв® ­Ґ в Є. ‚ бгй­®бвЁ:
- 512 -
- ‘«гз ©­л¬ ®Ўа §®¬ ўлЎЁа Ґвбп ­ҐЄ®в®ал© и Ў«®­;
- „ўЁ¦Ґ­ЁҐ ᮧ¤ ­Ё© ў Є ¦¤®¬ Їа®е®¤Ґ жЁЄ«  Ё§¬Ґ­пҐвбп ў ᮮ⢥вбвўЁЁ
б ­ Їа ў«Ґ­ЁҐ¬, гЄ § ­­л¬ ў и Ў«®­Ґ;
- ‡ вҐ¬ ¬л ЇҐаҐе®¤Ё¬ Є б«Ґ¤го饬г н«Ґ¬Ґ­вг и Ў«®­ . Љ ¦¤л© и Ў«®­
¬®¦Ґв ўЄ«оз вм ў бҐЎп Їа®Ё§ў®«м­®Ґ Є®«ЁзҐбвў® н«Ґ¬Ґ­в®ў. ЌҐЄ®в®алҐ Ё§
­Ёе Ё¬Ґов 10 н«Ґ¬Ґ­в®ў,   Ё­лҐ - 1000.
‚ ¦­® ®¤­® - Є®Ј¤  "ᮧ¤ ­ЁҐ" ЁбзҐаЇлў Ґв ­ Ў®а Є®¬ ­¤, § ¤ ў Ґ¬л© ®¤­Ё¬
и Ў«®­®¬ - ®­® ЇҐаҐе®¤Ёв Є ¤агЈ®¬г.
Ќ Є®­Ґж, ¬л ¬®Ј«Ё Ўл бўп§ вм ўлЎ®а б«гз ©­®Ј® ­®¬Ґа  и Ў«®­  б ¤Ґ©бвўЁп¬Ё
­  ®б­®ўҐ ­ҐЄ®© ¤агЈ®© «®ЈЁЄЁ - ­ ЇаЁ¬Ґа, ®ЇЁблў Ґ¬®© Ђ«Ј®аЁв¬®¬ 13.1.
„®Ў ўЁў Є Ђ«Ј®аЁв¬г 13.3 Ї®б«Ґ¤­Ё© и Ј, ¬л ЇаЁ¤ «Ё Ґ¬г ­ҐЄ®в®ал©  бЇҐЄв,
Є®в®ал© ЇаЁ¤ « Ґ¬г Ў®«миго Є®¬Ї«ҐЄб­®бвм. Џ®пўЁ«®бм Ї®¤®ЎЁҐ ¬л᫨⥫쭮Ј®
Їа®жҐбб , б®бв®п饣® Ё§ ¤ўге бв ¤Ё©. ‘«гз ©­®Ґ зЁб«® Ї®¤ Ґвбп ­  ўе®¤
ᥫҐЄв®а  и Ў«®­®ў, Є®в®ал© § вҐ¬ ўлЎЁа Ґв ­®ўл© и Ў«®­ ¤«п ЁЈал.
ЪДДДДДДДДДДДДДДДДДДДДДДї
і ѓҐ­Ґа в®а і 1-© га®ўҐ­м
і б«гз ©­ле зЁбҐ« і (¬л᫨⥫м­л©)
АДДДДДДДДДДДВДДДДДДДДДДЩ
ЪДДДДДДДДБДДДДДДДДДї
і ‚лЎ®а и Ў«®­®ў і
АДДДДДДДДДДДДДДДДДДЩ


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

ЪДДДДДДДДДДДї ЪДДДДДДДДДДДї ЪДДДДДДДДДДДДї 2-© га®ўҐ­м
і і і і і і (дг­ЄжЁЁ ¬®в®аЁЄЁ)
і і і і і і
і і і і ... і і
і і і і і і
і і і і і і
АДДДДДДДДДДДЩ АДДДДДДДДДДДЩ АДДДДДДДДДДДДЩ
 Ў«®­ 1  Ў«®­ 2  Ў«®­ N

ђЁб.13.2. €бЇ®«м§®ў ­ЁҐ б«гз ©­ле зЁбҐ« ¤«п ўлЎ®а  и Ў«®­ .

- 513 -
Џ®  ­ «®ЈЁЁ б ­Ґаў­®© бЁб⥬®©, б«гз ©­®Ґ зЁб«® ¬®¦­® ЇаҐ¤бв ўЁвм Є Є
­Ґаў­л© Ё¬Їг«мб,   ўлЎа ­­л© и Ў«®­ ¤Ґ©бвўЁ© - Є Є ॠЄжЁо ­  ­ҐЈ®.
Џ®б¬®ваЁвҐ ­  аЁб. 13.2, зв®Ўл гўЁ¤Ґвм в®в Їа®жҐбб, ® Є®в®а®¬ п Ј®ў®ао.
„«п гб®ўҐа襭бвў®ў ­Ёп в ЄвЁЄЁ ¬®¦­® ¤®Ў ўЁвм Ё§¬ҐаҐ­ЁҐ а ббв®п­Ёп ¤®
ЁЈа®Є : Ґб«Ё бгйҐбвў® ­ е®¤Ёвбп §  ЇаҐ¤Ґ« ¬Ё ­ҐЄ®в®а®Ј® а ¤Ёгб ,
ЁбЇ®«м§гҐвбп Ђ«Ј®аЁв¬ ЏаҐб«Ґ¤®ў ­Ёп, ®¤­ Є®, Є®Ј¤  ®­® ®Є §лў Ґвбп
¤®бв в®з­® Ў«Ё§Є®, в® ­ зЁ­ Ґв ЇҐаҐ¬Ґй вмбп Ї® и Ў«®­­л¬ ва ҐЄв®аЁп¬,
ўлЎЁа п Ёе б«гз ©­л¬ ®Ўа §®¬. ќв  Ё¤Ґп ЇаЁ¬Ґ­Ґ­  ў Ђ«Ј®аЁв¬Ґ 13.4.

Ђ«Ј®аЁв¬ 13.4. ЏаҐб«Ґ¤®ў ­ЁҐ Ё ’ ­Ґж.
----------------------------------------------------------------------
while (Ё¤Ґв ЁЈа )
{
....Є®¤ Їа®Ја ¬¬л

if (ЁЈа®Є ў­Ґ ЄагЈ  б а ¤Ёгᮬ 50 в®зҐЄ) then ЇаҐб«Ґ¤гҐ¬ ҐЈ®
else
ўлЎЁа Ґ¬ б«гз ©­л© и Ў«®­ Ё ॠ«Ё§гҐ¬ ҐЈ®

.... Є®¤ Їа®Ја ¬¬л
}
________________________________________________________________________

„«п ¤Ґ¬®­бва жЁЁ ЁбЇ®«м§®ў ­Ёп и Ў«®­®ў п ЇҐаҐа Ў®в « Їа®Ја ¬¬г Ё§ ‹ЁбвЁ­Ј 
13.1 Ё ЇаЁўҐ« ҐҐ ў ᮮ⢥вбвўЁҐ б Ђ«Ј®аЁв¬®¬ 13.4. Ќ®ў п Їа®Ја ¬¬  Ї®Є § ­ 
ў ‹ЁбвЁ­ЈҐ 13.2. Љ®Ј¤  ўа Ј ЇаЁЎ«Ё¦ Ґвбп Є ЁЈа®Єг, ®­ ўлЎЁа Ґв ®¤Ё­ Ё§ ваҐе
и Ў«®­®ў Ё ўлЇ®«­пҐв ҐЈ® ¤® § ўҐа襭Ёп. „ «ҐҐ, ў § ўЁбЁ¬®бвЁ ®в а ббв®п­Ёп
¤® ЁЈа®Є , Їа®вЁў­ЁЄ «ЁЎ® ЇаҐб«Ґ¤гҐв ЁЈа®Є , «ЁЎ® ўлЎЁа Ґв ¤агЈ®© и Ў«®­.

‹ЁбвЁ­Ј 13.2. Њге  (FLY.C).
__________________________________________________________________________

// I N C L U D E S////////////////////////////////////////////////////////////

#include <stdio.h>
#include <graph.h>
#include <math.h>

// G L O B A L S /////////////////////////////////////////////////////////////

unsigned int far *clock = (unsigned int far *)0x0000046C; // pointer to internal
// 18.2 clicks/sec


// the x and y components of the patterns that will be played, I just made
// them up

int patterns_x[3][20]= { 1,1,1,1,1,2,2,-1,-2,-3,-1,0,0,1,2,2,-2,-2,-1,0,
0,0,1,2,3,4,5,4,3,2,1,3,3,3,3,2,1,-2,-2,-1,
0,-1,-2,-3,-3,-2,-2,0,0,0,0,0,0,1,0,0,0,1,0,1 };



int patterns_y[3][20] = { 0,0,0,0,-1,-1,-1,-1,-1,0,0,0,0,0,2,2,2,2,2,2,
1,1,1,1,1,1,2,2,2,2,2,3,3,3,3,3,0,0,0,0,
1,1,1,2,2,-1,-1,-1,-2,-2,-1,-1,0,0,0,1,1,1,1,1 };


//////////////////////////////////////////////////////////////////////////////

Timer(int clicks)
{
// this function uses the internal time keeper timer i.e. the one that goes
// at 18.2 clicks/sec to to a time delay. You can find a 32 bit value of
// this timer at 0000:046Ch

unsigned int now;

// get current time

now = *clock;

// wait till time has gone past current time plus the amount we eanted to
// wait. Note each click is approx. 55 milliseconds.

while(abs(*clock - now) < clicks){}

} // end Timer

// M A I N ///////////////////////////////////////////////////////////////////

main()
{

int px=160,py=100, // starting position of player
ex=0,ey=0; // starting position of enemy

int done=0, // exit flag
doing_pattern=0, // flags if a pattern is being executed
current_pattern, // curent pattern 0-2 that is being done by brain
pattern_element; // current element of pattern being executed

_setvideomode(_MRES256COLOR);

printf(" The Fly - Q to Quit");

// main game loop

while(!done)
{
// erase dots

_setcolor(0);

_setpixel(px,py);
_setpixel(ex,ey);

// move player

if (kbhit())
{

// which way is player moving

switch(getch())
{

case 'u': // up
{
py-=2;
} break;

case 'n': // down
{
py+=2;
} break;

case 'j': // right
{
px+=2;
} break;


case 'h': // left
{
px-=2;
} break;

case 'q':
{
done=1;
} break;

} // end switch

} // end if player hit a key

// move enemy

// begin brain

if (!doing_pattern)
{

if (px>ex) ex++;
if (px<ex) ex--;
if (py>ey) ey++;
if (py<ey) ey--;

// check if it's time to do a pattern i.e. is enemy within 50 pixels
// of player


if (sqrt(.1 + (px-ex)*(px-ex) + (py-ey)*(py-ey)) < 15)
{
// never ever use a SQRT in a real game!

// get a new random pattern

current_pattern = rand()%3;

// set brain into pattern state

doing_pattern = 1;

pattern_element = 0;

} // end if within a radius of 50

} // end if doing a pattern
else
{
// move the enemy using the next pattern element of the current pattern

ex+=patterns_x[current_pattern][pattern_element];
ey+=patterns_y[current_pattern][pattern_element];

// are we done doing pattern

if (++pattern_element==20)
{
pattern_element = 0;
doing_pattern = 0;
} // end if done doing pattern

} // end else do pattern

// end brain

// draw dots

_setcolor(9);
_setpixel(px,py);

_setcolor(12);
_setpixel(ex,ey);

// wait a bit

Timer(1);

} // end while

_setvideomode(_DEFAULTMODE);

} // end main
_________________________________________________________________________

Љ®Ј¤  ўл § ЇгбвЁвҐ Їа®Ја ¬¬г Ё§ ‹ЁбвЁ­Ј  13.2, в® Ї®©¬ҐвҐ, Ї®зҐ¬г п ­ §ў «
ҐҐ "Њге ". ’®зЄ , ЎҐЈ ой п Ї® нЄа ­г Ё ў б ¬®¬ ¤Ґ«Ґ ­ Ї®¬Ё­ Ґв ¬гег. Ћ­ 
ЇаЁЎ«Ё¦ Ґвбп Є ў ¬ Ё ў¤агЈ ­ зЁ­ Ґв Ўлбва® «Ґв вм ў®ЄагЈ. € в Є®Ґ Ї®ўҐ¤Ґ­ЁҐ
ЇҐаб®­ ¦  ў®Ї«®йҐ­® ўбҐЈ® ў ­ҐбЄ®«мЄЁе бва®Є е Їа®Ја ¬¬л б ЇаЁ¬Ґ­Ґ­ЁҐ¬
®ЇЁб ­­ле ўлиҐ  «Ј®аЁв¬®ў. (ѓ¬, в Є Є Є ўл ¤г¬ ҐвҐ, ¬®¦Ґв Ўлвм «о¤Ё - нв® Ё
ў б ¬®¬ ¤Ґ«Ґ Є®¬Ї«ҐЄб ¤Ґ©бвўЁ© Ё ॠЄжЁ©?)
’ҐЇҐам а бᬮваЁ¬ б«гз ©­лҐ ЇҐаҐ¤ўЁ¦Ґ­Ёп.

‘«гз ©­лҐ ЇҐаҐ¤ўЁ¦Ґ­Ёп
--------------------------------
—в® п Ї®­Ё¬ о Ї®¤ б«гз ©­л¬ ЇҐаҐ¤ўЁ¦Ґ­ЁҐ¬? ќв® ўлЇ®«­Ґ­ЁҐ ЇҐаб®­ ¦Ґ¬
Є Є®Ј®-­ЁЎг¤м б®ўҐа襭­® ­ҐЇаҐ¤бЄ §гҐ¬®Ј® ¤Ґ©бвўЁп. ЌҐзв® Ї®¤®Ў­®Ґ ¬л 㦥
ᤥ« «Ё ў Їа®Ја ¬¬Ґ Ё§ ‹ЁбвЁ­Ј  13.2. Ћ¤­ Є®, ¬л ¬®¦Ґ¬ а биЁаЁвм нвг
Є®­жҐЇжЁо ­Ґ в®«мЄ® ўлЎЁа п бЇ®б®Ў ॠЈЁа®ў ­Ёп, ­® Ё ®ЇаҐ¤Ґ«пп, ­г¦­  «Ё
ॠЄжЁп Є Є в Є®ў п. Џ®зҐ¬г Ўл ­ ¬ ­Ґ ¤®Ў ўЁвм ҐйҐ ®¤Ё­ вЁЇ Ї®ўҐ¤Ґ­Ёп ­ иҐ©
"ЊгеҐ" - б«гз ©­®Ґ ЇаҐ¤ўЁ¦Ґ­ЁҐ.
‘«гз ©­лҐ ЇҐаҐ¬ҐйҐ­Ёп ЁбЇ®«м§говбп ў® ¬­®ЈЁе ўЁ¤Ґ®ЁЈа е Є Є ®¤Ё­ Ё§
бЇ®б®Ў®ў ॠЈЁа®ў ­Ёп ўЁавг «м­®Ј® ¬Ёа  ­  ¤Ґ©бвўЁп ЁЈа®Є . ’ Є®© ®Ўа §
¤Ґ©бвўЁ© ¬®¦­® ­ §ў вм "­Ґпў­®© «®ЈЁЄ®©". ЌҐпў­ п «®ЈЁЄ  Ї®¬®Ј Ґв ЇаЁ­пвм
аҐиҐ­ЁҐ ЇаЁ ®вбгвбвўЁЁ з бвЁ ­Ґ®Ўе®¤Ё¬®© Ё­д®а¬ жЁЁ, Ё«Ё ў®®ЎйҐ Ё­д®а¬ жЁЁ
Є Є в Є®ў®©.
‚ ўЁ¤Ґ®ЁЈа е ¬л ¬®¦Ґ¬ ЁбЇ®«м§®ў вм б«гз ©­лҐ ЇҐаҐ¬ҐйҐ­Ёп Ё ­Ґпў­го «®ЈЁЄг
¤«п ўлЎ®а  ва ҐЄв®аЁ© Ё«Ё ¤Ґ©бвўЁ© ­ иЁе ᮧ¤ ­Ё©.
- 518 -
Љ ЇаЁ¬Ґаг, Є®Ј¤  ўл бв «ЄЁў ҐвҐбм б аҐиҐ­ЁҐ¬ ­ҐЄ®в®а®Ј® ў®Їа®б , в Є®Ј® Є Є
®Ўе®¤ ЇаҐЇпвбвўЁп, ў®§­ЁЄиҐЈ® ­  ў иҐ¬ ЇгвЁ, ўл Ї®Їлв ҐвҐбм Ё§ЎҐ¦ вм
ўбваҐзЁ б ­Ё¬, ¤ўЁЈ пбм ­ Їа ў® Ё«Ё ­ «Ґў®. …б«Ё ўбҐ ў аЁ ­вл а ў­л ¬Ґ¦¤г
б®Ў®© Ё ®¤Ё­ Є®ў® ў®§¬®¦­л, аҐиҐ­ЁҐ, ᪮॥, б«гз ©­® Ё, б«Ґ¤®ў вҐ«м­®,
пў«пҐвбп "­Ґпў­л¬ аҐиҐ­ЁҐ¬". …б«Ё Ўл Єв®-­ЁЎг¤м бЇа®бЁ« ў б, ­ ЇаЁ¬Ґа,
Ї®зҐ¬г ўл аҐиЁ«Ё ®Ў®©вЁ бв®«Ў бЇа ў ,   ­Ґ б«Ґў , в® ўап¤ «Ё ўл б㬥«Ё Ўл
ў­пв­® ®Ўкпб­Ёвм ¬®вЁўл бў®ҐЈ® Ї®ўҐ¤Ґ­Ёп. ‚ ¤агЈ®¬ б«гз Ґ ¬л ¬®¦Ґ¬
ЁбЇ®«м§®ў вм б«гз ©­лҐ ЇҐаҐ¬Ґ­­лҐ ¤«п ўлЎ®а  ­ Їа ў«Ґ­Ёп ¤ўЁ¦Ґ­Ёп ­ иҐ©
¬ «Ґ­мЄ®© "ЊгеЁ". Ђ«Ј®аЁв¬ 13.5 ᮧ¤ Ґв ¬ «Ґ­мЄго в®зЄг, Є®в®а®© ⥯Ґам
Ї®« Ј Ґвбп «Ґв вм, ¤ўЁЈ пбм ў б«гз ©­®¬ ­ Їа ў«Ґ­ЁЁ.

Ђ«Ј®аЁв¬ 13.5. ‘«гз ©­®Ґ ЇҐаҐ¤ўЁ¦Ґ­ЁҐ.
__________________________________________________________________________
while (Ё¤Ґв ЁЈа )
{
... Є®¤ Їа®Ја ¬¬л

if (ЇҐаҐ¬ҐйҐ­ЁҐ в®зЄЁ Ї® ⥪г饩 ва ҐЄв®аЁЁ § Є®­зҐ­®) then
{
ўлЎ®а ­®ў®© ва ҐЄв®аЁЁ, Ё­л¬Ё б«®ў ¬Ё,
ўлЎЁа Ґ¬ ­®ўл© д Єв®а ЇаҐ®Ўа §®ў ­Ёп Є®®а¤Ё­ в
}
¤ўЁЈ Ґ¬ в®зЄг ­ҐбЄ®«мЄ® а § Ї® ­®ў®© ва ҐЄв®аЁЁ
... Є®¤ Їа®Ја ¬¬л
}
_________________________________________________________________________

Ђ«Ј®аЁв¬ 13.5 ¬®¤Ґ«ЁагҐв "ЈагЎл© а §г¬", Є®в®ал© ўлЎЁа Ґв ­ Їа ў«Ґ­ЁҐ
¤ «м­Ґ©иҐЈ® ¤ўЁ¦Ґ­Ёп б«гз ©­л¬ ®Ўа §®¬. Ќ ЇЁиҐ¬ Їа®Ја ¬¬г, Є®в®а п ᮧ¤ Ґв
®¤Ё­®Є® «Ґвпйго в®зЄг ў Їа®бва ­б⢥ б Ї®¬®ймо нв®Ј®  «Ј®аЁв¬ . Џ®б¬®ваЁ¬,
Є Є нв® а Ў®в Ґв, ­  ЇаЁ¬ҐаҐ Їа®Ја ¬¬л Ё§ ‹ЁбвЁ­Ј  13.3.

‹ЁбвЁ­Ј 13.3. Ћ¤Ё­®Є п ¬ге . (DFLY.C).
-------------------------------------------------------------------------

// I N C L U D E S////////////////////////////////////////////////////////////

#include <stdio.h>
#include <graph.h>
#include <math.h>

// G L O B A L S /////////////////////////////////////////////////////////////

unsigned int far *clock = (unsigned int far *)0x0000046C; // pointer to internal
// 18.2 clicks/sec


//////////////////////////////////////////////////////////////////////////////

Timer(int clicks)
{
// this function uses the internal time keeper timer i.e. the one that goes
// at 18.2 clicks/sec to to a time delay. You can find a 32 bit value of
// this timer at 0000:046Ch

unsigned int now;

// get current time

now = *clock;

// wait till time has gone past current time plus the amount we eanted to
// wait. Note each click is approx. 55 milliseconds.

while(abs(*clock - now) < clicks){}

} // end Timer

// M A I N ///////////////////////////////////////////////////////////////////

main()
{

int ex=160,ey=100; // starting position of fly

int curr_xv=1,curr_yv=0, // current translation factors
clicks=0; // times when the fly is done moving in the random
// direction

_setvideomode(_MRES256COLOR);

printf(" The Dumb Fly - Any key to Quit");

// main game loop

while(!kbhit())
{
// erase dots

_setcolor(0);

_setpixel(ex,ey);

// move the fly

// begin brain

// are we done with this direction

if (++clicks==20)
{
curr_xv = -5 + rand()%10; // -5 to +5
curr_yv = -5 + rand()%10; // -5 to +5
clicks=0;
} // end if time for a new direction

// move the fly

ex+=curr_xv;
ey+=curr_yv;

// make sure fly stays on paper

if (ex>319) ex=0;
if (ex<0) ex=319;
if (ey>199) ey=0;
if (ey<0) ey=199;

// end brain

// draw fly

_setcolor(12);
_setpixel(ex,ey);

// wait a bit

Timer(1);

} // end while

_setvideomode(_DEFAULTMODE);

} // end main
__________________________________________________________________________

„г¬ о, Ї®б«Ґ § ЇгбЄ  Їа®Ја ¬¬л ўл б®Ј« бЁвҐбм б ⥬, зв® ¬л, ­ Є®­Ґж,
Ї®«гзЁ«Ё ўбҐ ­Ґ®Ўе®¤Ё¬®Ґ ¤«п ¬®¤Ґ«Ёа®ў ­Ёп «Ґв о饣® "а §г¬­®Ј® бгйҐбвў ".
ЌҐбЄ®«мЄ® Їа®бвле Їа ўЁ«, и Ў«®­л Ё б«гз ©­лҐ зЁб«  Ї®¬®Ј«Ё ­ ¬ ᮧ¤ вм
¤®ў®«м­® Їа ў¤®Ї®¤®Ў­го Ё¬Ёв жЁо Ї®«Ґв  ­ бҐЄ®¬®Ј®. ќв® Їа®бв® з㤥᭮!
’ҐЇҐам ­ бв «® ўаҐ¬п Ї®Ј®ў®аЁвм ® Є®­Ґз­ле  ўв®¬ в е.

- 521 -
ЉЋЌ…—Ќ›… Ђ‚’ЋЊЂ’›

Љ®­Ґз­лҐ  ўв®¬ вл (ЉЂ) - Ў«Ё§ЄЁҐ ¤аг§мп б ¬ле а §­®®Ўа §­ле ¬Ґе ­Ё§¬®ў. Ћ­Ё
ж абвўгов ў ўЁавг «м­®¬ Їа®бва ­б⢥ Є®¬ЇмовҐа®ў. ЉЂ ЁбЇ®«м§говбп ў
а §а Ў®вЄҐ  ЇЇ а в­®Ј® Ё Їа®Ја ¬¬­®Ј® ®ЎҐбЇҐзҐ­Ёп. Џ®бЄ®«мЄг ¬л Є®б­г«Ёбм
нв®© ⥬л, бЄ ¦г, зв® ЉЂ - нв® Їа®Ја ¬¬­® ¬®¤Ґ«Ёа㥬 п ¬ иЁ­ , Є®в®а п
¤ўЁ¦Ґвбп ®в б®бв®п­Ёп Є б®бв®п­Ёо, ®б­®ўлў пбм ­  ўе®¤­ле ¤ ­­ле. Ља®¬Ґ
в®Ј®, ЉЂ ®Ўлз­® § Ї®¬Ё­ Ґв ўбҐ б®бв®п­Ёп, ў Є®в®але ®­ Ї®Ўлў «. Џ®б¬®ваЁвҐ
­  аЁб 13.3, ­  Є®в®а®¬ Ё§®Ўа ¦Ґ­  ¤Ё Ја ¬¬  Їа®б⥩襣® ЉЂ. (—в® Ё¬Ґ­­®
нв®в ЉЂ ¤Ґ« Ґв - ­Ґ Ё¬ҐҐв ­ЁЄ Є®Ј® §­ зҐ­Ёп).
Љ Є ўЁ¤ЁвҐ, ЉЂ Ё¬ҐҐв ­ Ў®а б®бв®п­Ё©, ЇаҐ¤бв ў«Ґ­­ле Єаг¦Є ¬Ё Ё
®ЎкҐ¤Ё­Ґ­­ле ¤гЈ ¬Ё ЇҐаҐе®¤®ў ®в б®бв®п­Ёп Є б®бв®п­Ёо. ќвЁ ¤гЈЁ Ї®Є §лў ов
Їа ўЁ« , Ї® Є®в®ал¬ Їа®Ёб室пв ЇҐаҐе®¤л Ё§ ®¤­®Ј® б®бв®п­Ёп ў ¤агЈ®Ґ.
ЉЂ ¬®Јгв Ўлвм ЁбЇ®«м§®ў ­л ў ўЁ¤Ґ®ЁЈа е Є Є ®¤Ё­ Ё§ ¬Ґв®¤®ў
ўлб®Є®га®ў­Ґў®Ј® гЇа ў«Ґ­Ёп «®ЈЁЄ®©, б Ї®¬®ймо Є®в®а®Ј® ЇҐаҐ¤ овбп Є®¬ ­¤л
"­Ё§Є®га®ў­Ґў®© " «®ЈЁЄҐ.
’ Є ¦Ґ, Є Є ­ и ¬®§Ј Ё¬ҐҐвЄ®аг, ЇҐаҐ¤ ойго ­ иЁ ¦Ґ« ­Ёп ў Ў®«ҐҐ
­Ё§Є®га®ў­ҐўлҐ ¬®в®а­лҐ ¤®«Ё ¬®§Ј ,ЉЂ ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў ­ ¤«п Ё­ЁжЁ жЁЁ,
гЇа ў«Ґ­Ёп Ё ЇҐаҐеў в  ­Ё§Є®га®ў­Ґўле ¤Ґ©бвўЁ©, ўлЇ®«­пҐ¬ле Ё¬Ёв в®а®¬
¬®§Ј .
Љ Є ЇаЁ¬Ґа ¬л ¬®Ј«Ё Ўл ЁбЇ®«м§®ў вм ўбҐ, зв® ­ ¬ 㦥 Ё§ўҐбв­® ®
ЇаҐб«Ґ¤®ў ­ЁЁ, гЄ«®­Ґ­ЁЁ, и Ў«®­ е Ё б«гз ©­ле ЇҐаҐ¤ўЁ¦Ґ­Ёпе ¤«п
Є®­бвагЁа®ў ­Ёп ЉЂ,







ђЁб.13.3. ЋЎй п б奬  ЉЂ.

- 522 -








ђЁб.13.4. ЂЎбва Єв­л© ўЁ¤ ЉЂ б в®зЄЁ §аҐ­Ёп ¬®¤Ґ«Ё ЁЈал.

бЇ®б®Ў­®Ј® ЇҐаҐе®¤Ёвм ®в б®бв®п­Ёп Є б®бв®п­Ёо, Є ¦¤®Ґ Ё§ Є®в®але ўлЇ®«­пҐв
®¤­г Ё§ ЇҐаҐзЁб«Ґ­­ле дг­ЄжЁ©.
’ҐЇҐам г ­ б Ґбвм ­ Ў®а аҐиҐ­Ё©, зв®Ўл ®вўҐвЁвм ­  ў®Їа®бл:
- Љ Є п ЇаЁзЁ­  § бв ўЁв ЉЂ Ё§¬Ґ­Ёвм бў®Ґ б®бв®п­ЁҐ?
- Љ Є § бв ўЁвм ЉЂ ўлЎа вм б«Ґ¤го饥 б®бв®п­ЁҐ?

ќв® е®а®иЁҐ ў®Їа®бл - Ї®б¬®ваЁ¬, Є Є ўлЈ«п¤пв ўЁ¤Ґ®ЁЈал Ё§­гваЁ. ‚§Ј«п­ЁвҐ
­  аЁб.13.4. Ќ  ­Ґ¬ Ї®Є § ­®  Ўбва Єв­®Ґ ЇаҐ¤бв ў«Ґ­ЁҐ ­ҐЄ®в®а®Ј® ЉЂ,
Їа ў¤ , Ї®Є  ҐйҐ ЎҐ§ «®ЈЁЄЁ ᬥ­л б®бв®п­Ё©.

Љ®­Ґз­л©  ўв®¬ в, гЇа ў«пҐ¬л© ®Єаг¦ о饩 б।®©
------------------------------------------------------------
’ҐЇҐам ­ бвгЇ Ґв ЇаЁпв­ п з бвм. Њл ¬®¦Ґ¬ ᮧ¤ вм ЉЂ, ў Є®в®а®¬ б®бв®п­Ёп
ЇҐаҐе®¤  ЇаҐ¤бв ў«Ґ­л а冷¬ ЇҐаҐ¬Ґ­­ле. „агЈЁ¬Ё б«®ў ¬Ё, ¬л гЇа ў«пҐ¬
Є®­Ґз­л¬  ўв®¬ в®¬ б Ї®¬®ймо б ¬®© ЁЈа®ў®© б।л, ў Є®в®а®© ®­ ­ е®¤Ёвбп,
в Є ¦Ґ, Є Є ­ и б®Ўб⢥­­л© ¬®§Ј ॠЈЁагҐв ­  ®Єаг¦ ойго ®Ўбв ­®ўЄг.
- 523 -
Ќ з­Ґ¬ ᮧ¤ ў вм ЉЂ б в®Ј®, зв® ®­ Ўг¤Ґв б«гз ©­л¬ ®Ўа §®¬ ўлЎЁа вм ®¤­® Ё§
­Ё¦ҐЇҐаҐзЁб«Ґ­­ле б®бв®п­Ё©:
- ЇаҐб«Ґ¤®ў ­ЁҐ;
- гЄ«®­Ґ­ЁҐ;
- б«гз ©­®Ґ;
- и Ў«®­.
Ќ® ў ­ бв®п饩 ЁЈаҐ ¤«п гЇа ў«Ґ­Ёп б®бв®п­ЁҐ¬ ЉЂ ў¬Ґбв® б«гз ©­ле зЁбҐ«
Ўл«® Ўл «гзиҐ ЇаЁў«Ґзм б ¬г ЁЈа®ўго бЁвг жЁо. ЌЁ¦Ґ ЇаЁўҐ¤Ґ­ ЇаЁ¬Ґа ЉЂ,
¤Ґ©вўго饣® Ї® ®Ўбв®п⥫мбвў ¬:
- …б«Ё ЁЈа®Є Ў«Ё§Є®, ЉЂ ЇҐаҐЄ«оз Ґвбп ў б®бв®п­ЁҐ  Ў«®­;
- …б«Ё ЁЈа®Є ¤ «ҐЄ®, ¬®¦­® § бв ўЁвм ЏЉ ®е®вЁвмбп §  ­Ё¬, ЁбЇ®«м§гп
б®бв®п­ЁҐ ЏаҐб«Ґ¤®ў ­ЁҐ;
- …б«Ё ЁЈа®Є ®ЎагиЁ« ­  ­ иҐ ¬ «Ґ­мЄ®Ґ ᮧ¤ ­ЁҐ иЄў «м­л© ®Ј®­м, ЉЂ
¬®¬Ґ­в «м­® ЇҐаҐе®¤Ёв ў б®бв®п­ЁҐ “Є«®­Ґ­ЁҐ;
- Ќ Є®­Ґж, ЇаЁ «оЎ®© Ё­®© бЁвг жЁЁ ЉЂ ®ва Ў влў Ґв б®бв®п­ЁҐ ‘«гз ©­®Ґ.

ђЁб.13.5 ¤Ґ¬®­бваЁагҐв Ї®¤®Ў­®Ґ Ї®ўҐ¤Ґ­ЁҐ Є®­Ґз­®Ј®  ўв®¬ в .







ђЁб.13.5. ЉЂ, гЇа ў«пҐ¬л© ®Єаг¦ о饩 б।®©.
- 524 -
ЏҐаҐ©¤Ґ¬ Є Їа®Ја ¬¬­®© ॠ«Ё§ жЁЁ ®ЇЁб ­­®Ј® ЉЂ. Њл ­Ґ бв ­Ґ¬ ᮧ¤ ў вм
б«®¦­®Ґ ЁЈа®ў®Ґ Їа®бва ­бвў®. „«п ¤Ґ¬®­бва жЁЁ ­ ¬ ¤®бв в®з­® Ё¬Ґвм зЁбвл©
нЄа ­ б Ї а®© в®зҐЄ, Ё§®Ўа ¦ ойЁе ЁЈа®Є  Ё Їа®вЁў­ЁЄ . —в®Ўл Ї®­пвм бгвм,
нв®Ј® ўЇ®«­Ґ ¤®бв в®з­®. Џа®Ја ¬¬  Ё§ ‹ЁбвЁ­Ј  13.4 ¬®¤Ґ«ЁагҐв Ї®«Ґв
¤Ґ©б⢨⥫쭮 ­ §®©«Ёў®© ¬геЁ, Є®в®а п ЎгЄў «м­® § Ґ¤ Ґв ЁЈа®Є .

‹ЁбвЁ­Ј 13.4. “¬­ п "Њге " (BFLY.C).
_______________________________________________________________________

// I N C L U D E S////////////////////////////////////////////////////////////

#include <stdio.h>
#include <graph.h>
#include <math.h>

// D E F I N E S ////////////////////////////////////////////////////////////

#define STATE_CHASE 1
#define STATE_RANDOM 2
#define STATE_EVADE 3
#define STATE_PATTERN 4

// G L O B A L S /////////////////////////////////////////////////////////////

unsigned int far *clock = (unsigned int far *)0x0000046C; // pointer to internal
// 18.2 clicks/sec


// the x and y components of the patterns that will be played, I just made
// them up

int patterns_x[3][20]= { 1,1,1,1,1,2,2,-1,-2,-3,-1,0,0,1,2,2,-2,-2,-1,0,
0,0,1,2,3,4,5,4,3,2,1,3,3,3,3,2,1,-2,-2,-1,
0,-1,-2,-3,-3,-2,-2,0,0,0,0,0,0,1,0,0,0,1,0,1 };



int patterns_y[3][20] = { 0,0,0,0,-1,-1,-1,-1,-1,0,0,0,0,0,2,2,2,2,2,2,
1,1,1,1,1,1,2,2,2,2,2,3,3,3,3,3,0,0,0,0,
1,1,1,2,2,-1,-1,-1,-2,-2,-1,-1,0,0,0,1,1,1,1,1 };


//////////////////////////////////////////////////////////////////////////////

Timer(int clicks)
{
// this function uses the internal time keeper timer i.e. the one that goes
// at 18.2 clicks/sec to to a time delay. You can find a 32 bit value of
// this timer at 0000:046Ch

unsigned int now;

// get current time

now = *clock;

// wait till time has gone past current time plus the amount we eanted to
// wait. Note each click is approx. 55 milliseconds.

while(abs(*clock - now) < clicks){}

} // end Timer

// M A I N ///////////////////////////////////////////////////////////////////

main()
{

int px=160,py=100, // starting position of player
ex=0,ey=0, // starting position of enemy
curr_xv,curr_yv; // velocity of fly during random walk


int done=0, // exit flag
doing_pattern=0, // flags if a pattern is being executed
current_pattern, // curent pattern 0-2 that is being done by brain
pattern_element, // current element of pattern being executed
select_state=0, // flags if a state transition needs to take place
clicks=20, // used to time the number of cycles a state stays active
fly_state = STATE_CHASE; // start fly off in chase state

float distance; // used to hold distance between fly and player

_setvideomode(_MRES256COLOR);

printf(" Brainy Fly - Q to Quit");

// main game loop

while(!done)
{
// erase dots

_setcolor(0);

_setpixel(px,py);
_setpixel(ex,ey);

// move player

if (kbhit())
{

// which way is player moving

switch(getch())
{

case 'u': // up
{
py-=2;
} break;

case 'n': // down
{
py+=2;
} break;

case 'j': // right
{
px+=2;
} break;


case 'h': // left
{
px-=2;
} break;

case 'q':
{
done=1;
} break;

} // end switch

} // end if player hit a key


// move enemy

// begin brain


// what state is brain in let FSM sort it out


switch(fly_state)
{

case STATE_CHASE:
{
_settextposition(24,2);
printf("current state:chase ");

// make the fly chase the player

if (px>ex) ex++;
if (px<ex) ex--;
if (py>ey) ey++;
if (py<ey) ey--;

// time to go to another state

if (--clicks==0)
select_state=1;

} break;

case STATE_RANDOM:
{
_settextposition(24,2);
printf("current state:random ");

// move fly in random direction

ex+=curr_xv;
ey+=curr_yv;

// time to go to another state

if (--clicks==0)
select_state=1;

} break;


case STATE_EVADE:
{
_settextposition(24,2);
printf("current state:evade ");


// make fly run from player

if (px>ex) ex--;
if (px<ex) ex++;
if (py>ey) ey--;
if (py<ey) ey++;

// time to go to another state

if (--clicks==0)
select_state=1;

} break;

case STATE_PATTERN:
{
_settextposition(24,2);
printf("current state:pattern ");

// move the enemy using the next pattern element of the current pattern

ex+=patterns_x[current_pattern][pattern_element];
ey+=patterns_y[current_pattern][pattern_element];

// are we done doing pattern

if (++pattern_element==20)
{
pattern_element = 0;
select_state=1;
} // end if done doing pattern

} break;


default:break;

} // end switch fly state

// does brain want another state ?

if (select_state==1)
{

// select a state based on the envoronment and on fuzzy logic
// uses distance from player to selct a new state

distance = sqrt(.5 + fabs((px-ex)*(px-ex) + (py-ey)*(py-ey)));

if (distance > 5 && distance <15 && rand()%2==1)
{
// get a new random pattern

current_pattern = rand()%3;

// set brain into pattern state

fly_state = STATE_PATTERN;

pattern_element = 0;

} // end if close to player
else
if (distance < 10) // too close let's run!
{
clicks=20;
fly_state = STATE_EVADE;

} // else if too close
else
if (distance > 25 && distance <100 && rand()%3==1) // let's chase player
{
clicks=15;
fly_state = STATE_CHASE;

} // end if chase player
else
if (distance > 30 && rand()%2==1)
{
clicks=10;
fly_state = STATE_RANDOM;

curr_xv = -5 + rand()%10; // -5 to +5
curr_yv = -5 + rand()%10; // -5 to +5

} // end if random
else
{
clicks=5;
fly_state = STATE_RANDOM;

curr_xv = -5 + rand()%10; // -5 to +5
curr_yv = -5 + rand()%10; // -5 to +5

} // end else

// reset need another state flag

select_state=0;

} // end if we need to change to another state

// make sure fly stays on paper

if (ex>319) ex=0;
if (ex<0) ex=319;
if (ey>199) ey=0;
if (ey<0) ey=199;

// end brain

// draw dots

_setcolor(9);
_setpixel(px,py);

_setcolor(12);
_setpixel(ex,ey);

// wait a bit

Timer(1);

} // end while

_setvideomode(_DEFAULTMODE);

} // end main
_________________________________________________________________________

‡ ЇгбвЁў Їа®Ја ¬¬г, ўл ­ ўҐа­пЄ  ®Ўа вЁвҐ ў­Ё¬ ­ЁҐ ­  Є ¦гйгобп б«®¦­®бвм
Ї®ўҐ¤Ґ­Ёп "ЊгеЁ". Ђ ўҐ¤м ¤«п Ї®«г祭Ёп в Є®Ј® १г«мв в  ЁбЇ®«м§®ў ­ 
ўҐбм¬  Їа®бв п б奬 ! ‚®§¬®¦­®, Ё ўл § ¬ҐвЁвҐ в®, зв® гўЁ¤Ґ« п - згвм «Ё ­Ґ
祫®ўҐзҐбЄго бЇ®б®Ў­®бвм ¬лб«Ёвм.

“Їа ў«Ґ­ЁҐ ЇаЁ®аЁвҐв­л¬ б®бв®п­ЁҐ¬
------------------------------------------
Њ®¦­® ҐйҐ гб®ўҐа襭бвў®ў вм ­ и ЉЂ, Ґб«Ё ўўҐбвЁ гЇа ў«Ґ­ЁҐ ᬥ­®© б®бв®п­Ё©
б Ї®¬®ймо ­ҐЄ®в®але ЇҐаҐ¬Ґ­­ле Ё дг­ЄжЁ©. Ќ  Їа ЄвЁЄҐ нв® ®§­ з Ґв
ў®§¬®¦­®бвм Ё§¬Ґ­Ґ­Ёп ⥪г饣® ०Ё¬ , ­Ґ ¤®¦Ё¤ пбм Ї®«­®Ј® § ўҐа襭Ёп
Їа®Ја ¬¬л, ®вўҐз о饩 §  ҐЈ® ўлЇ®«­Ґ­ЁҐ.
‚ Ё¬Ёв в®аҐ ¤ўЁ¦Ґ­Ёп "ЊгеЁ" Є ¦¤®Ґ б®бв®п­ЁҐ ўлЇ®«­п«®бм ¤® Ї®«­®Ј®
§ ўҐа襭Ёп. Ќ® Ґб«Ё ўЄ«озЁвм ў Їа®Ја ¬¬г Їа®ўҐаЄг ўлЇ®«­Ґ­Ёп Ё«Ё
­ҐўлЇ®«­Ґ­Ёп ­ҐЄ®в®але гб«®ўЁ©, нв® Ї®§ў®«Ё«® Ўл ЉЂ "ўлЇалЈ­гвм" Ё§
б®бв®п­Ёп, ­Ґ ¤®¦Ё¤ пбм ®Є®­з ­Ёп ҐЈ® "®ва Ў®вЄЁ".
ќвЁ¬ § Є ­зЁў Ґвбп ­ и а §Ј®ў®а ® Є®­Ґз­ле  ўв®¬ в е, Є®в®алҐ ¬®Јгв Ўлвм
ЁбЇ®«м§®ў ­л ў ­ иЁе ЁЈа е ¤«п ¬®¤Ґ«Ёа®ў ­Ёп Ї®ўҐ¤Ґ­Ёп бгйҐбвў Ё ЇаЁ¤ ­Ёп
Ё¬ ўЁ¤Ё¬®бвЁ ­ «ЁзЁп Ё­вҐ««ҐЄв . ’ҐЇҐам Є Ё¬Ґо饩бп г ­ б бЁб⥬Ґ
ўлб®Є®га®ў­Ґў®Ј® гЇа ў«Ґ­Ёп ­Ґ Ї®¬Ґи Ґв ¤®Ў ўЁвм ­Ё§Є®га®ў­Ґў®Ґ
дг­ЄжЁ®­Ёа®ў ­ЁҐ.

‚Ґа®пв­®бв­лҐ  ўв®¬ вл
-------------------------------
Ќ ўҐа­®Ґ, ўл 㦥 Ї®­п«Ё, Є Є ўҐа®пв­®бвм Ё б«гз ©­лҐ зЁб«  ¬®Јгв Ўлвм
ЁбЇ®«м§®ў ­л ¤«п ўлЎ®а  ­ Їа ў«Ґ­Ё© Ё б®бв®п­Ё©. Њл ­ гзЁ«Ёбм ЁбЇ®«м§®ў вм
б«гз ©­лҐ Ї®«Ґ¤®ў вҐ«м­®бвЁ ¤«п Є®­бвагЁа®ў ­Ёп "е а ЄвҐа " ЇҐаб®­ ¦Ґ©. џ
Ё¬Ґо ў ўЁ¤г, зв® "Њге " ў ­ иҐ¬ ЇаҐ¤л¤г饬 ЇаЁ¬ҐаҐ ¬®Ј«  б ¬®бв®п⥫쭮
ўлЎЁа вм а §«Ёз­лҐ б®бв®п­Ёп, ®б­®ўлў пбм ­  ®Єаг¦ о饩 ®Ўбв ­®ўЄҐ. …б«Ё
­ҐбЄ®«мЄ® Ё§¬Ґ­Ёвм ¬Ґв®¤ ўлЎ®а  б®бв®п­Ё©, ®б­®ў ­­л© ­ 
- 531 -
ЈҐ­Ґа жЁЁ б«гз ©­ле зЁбҐ« (в® Ґбвм, ᮧ¤ ў вм гб«®ўЁп, ЇаЁ Є®в®але ўе®¤ ў
®ЇаҐ¤Ґ«Ґ­­®Ґ б®бв®п­ЁҐ бв « Ўл «ҐЈзҐ Ё«Ё в殮«ҐҐ), в®, ў Є®­Ґз­®¬ бзҐвҐ,
­ ¬ г¤ «®бм Ўл Ё§¬Ґ­Ёвм "е а ЄвҐа" "ЊгеЁ".
‘Є ¦Ґ¬, ­ ¬ § е®вҐ«®бм Ё¬Ґвм ў ЁЈаҐ ¤ўҐ "¬геЁ". …б«Ё ®¤­г Ё вг ¦Ґ Їа®Ја ¬¬г
ЁбЇ®«м§®ў вм ¤«п ᮧ¤ ­Ёп ва ҐЄв®аЁЁ ¤ўЁ¦Ґ­Ёп Є ¦¤®© "¬геЁ", ®­Ё Ўл
¤Ґ©бвў®ў «Ё ®¤Ё­ Є®ў®. ‚® ¬­®ЈЁе б«гз пе Ў®«м襣® Ё ­Ґ вॡгҐвбп. Ћ¤­ Є®
Ј®а §¤® Ё­вҐаҐб­Ґ© Ё¬Ґвм ¬­®Ј® "¬ге" б ­ҐЎ®«миЁ¬Ё а §«ЁзЁп¬Ё ў Ї®ўҐ¤Ґ­ЁЁ.
ќв® ¬®¦­® Ўл«® Ўл ॠ«Ё§®ў вм Ё§¬Ґ­Ґ­ЁҐ¬ ¤Ё Ї §®­  б«гз ©­ле зЁбҐ« ў® ўбҐе
бва®Є е Їа®Ја ¬¬л, Ј¤Ґ ўлЎЁа овбп б®бв®п­Ёп "¬геЁ". Ќ® в Є®© Ї®¤е®¤ Ўг¤Ґв
®зҐ­м ЈагЎл¬. Њл Ї®©¤Ґ¬ ¤агЈЁ¬ Їг⥬ - Їг⥬ ᮧ¤ ­Ёп ®ЎйҐЈ® ¬Ґв®¤ 
гЇа ў«Ґ­Ёп е а ЄвҐа®¬ ЇҐаб®­ ¦Ґ©, ®б­®ў ­­®Ј® ­  ўҐа®пв­®бвЁ.
‚ ЁбЄгбб⢥­­®¬ Ё­вҐ««ҐЄвҐ "Ё­¤ЁўЁ¤г «м­®бвм" ®§­ з Ґв ў®§¬®¦­®бвм бгйҐбвў
Ї®-а §­®¬г ўлЇ®«­пвм ®ЇаҐ¤Ґ«Ґ­­лҐ ¤Ґ©бвўЁп ЇаЁ ®¤­Ёе Ё вҐе ¦Ґ
®Ўбв®п⥫мбвў е. Ќ ЇаЁ¬Ґа, г ¬Ґ­п Ґбвм ­ҐбЄ®«мЄ® ¤®бв в®з­®  
¤а㧥©, Є®в®алҐ § е®вҐ«Ё Ўл б«ҐЈЄ  Їа®гзЁвм Ї«гв , Ї®Їл⠢襣®бп Ёе ­ ¤гвм.
Ќ® г ¬Ґ­п в Є¦Ґ Ґбвм ¤аг§мп, Є®в®алҐ Ў®«ҐҐ бЇ®Є®©­л Ё ЇаҐ¤Ї®зЁв ов б­ з « 
¤г¬ вм,   Ї®в®¬ ¤Ґ©бвў®ў вм. ‘Є®аҐҐ ўбҐЈ®, ¬®иҐ­­ЁЄг г¤ «®бм Ўл Є Є-в® б
­Ё¬Ё ¤®Ј®ў®аЁвмбп. ’®, зв® ¬л ўЁ¤Ё¬ ­  ¤ ­­®¬ ЇаЁ¬ҐаҐ, Ё пў«пҐвбп
"Ё­¤ЁўЁ¤г «м­®бвмо".
Љ ЄЁ¬ Ё¬Ґ­­® бЇ®б®Ў®¬ нв® Ўг¤Ґв ¤®бвЁЈ­гв®, ­Ґ ЇаЁ­жЁЇЁ «м­®, ў ¦Ґ­
Є®­Ґз­л© १г«мв в.
‚ ўЁ¤Ґ®ЁЈа е ¬л ¬®Ј«Ё Ўл Ё¬Ґвм ­ҐбЄ®«мЄ® Їа®вЁў­ЁЄ®ў, Є®в®алҐ Ї®бв®п­­®
ЇаҐб«Ґ¤гов ­ б, Ї®Є  ¤агЈЁҐ ў нв® ўаҐ¬п ­ҐЇ®¤ўЁ¦­л Ё бв५пов. ’аҐвмЁ
вагб«Ёўл Ё ЇаҐ¤Ї®зЁв ов гЎҐЈ вм,   ­Ґ ба ¦ вмбп. Ђ­ «Ё§Ёагп бЁвг жЁо, ¬л
ўЁ¤Ё¬, зв® Ё¬ҐҐвбп ўбҐ в®в ¦Ґ ­ Ў®а б®бв®п­Ё©, ­® ўҐа®пв­®бвЁ ЇҐаҐе®¤  ў
­Ёе а §«Ёз­л ¤«п Є ¦¤®Ј® б®бв®п­Ёп. „«п ¬®¤Ґ«Ёа®ў ­Ёп нв®Ј® Їа®жҐбб  ¬л
¬®Ј«Ё Ўл б®б« вмбп ­  "в Ў«Ёжг ўҐа®пв­®б⥩" ў в®© з бвЁ Їа®Ја ¬¬л, Є®в®а п
ўлЎЁа Ґв ­®ў®Ґ б®бв®п­ЁҐ. ќв  в Ў«Ёж  ¬®Ј«  Ўл ᮤҐа¦ вм а §«Ёз­лҐ б⥯Ґ­Ё
ўҐа®пв­®бвЁ ЇҐаҐе®¤®ў бгйҐбвў ў в® Ё«Ё Ё­®Ґ б®бв®п­ЁҐ. Љ ЇаЁ¬Ґаг, ў§Ј«п­ЁвҐ
­  в Ў«.13.1, ў Є®в®а®© ЇҐаҐзЁб«Ґ­л ᮮ⭮襭Ёп ўҐа®пв­®б⥩ ¤«п ваҐе
а §«Ёз­ле бгйҐбвў ў ®¤­®© ЁЈаҐ.

’ Ў«Ёж  13.1. ђ бЇаҐ¤Ґ«Ґ­ЁҐ ўҐа®пв­®б⥩ ¤«п ваҐе бгйҐбвў ў ЁЈаҐ.
-------------------------------------------------------------------------
‘®бв®п­ЁҐ ‘гйҐбвў®1: Ђ­­ЁЈЁ«пв®а

(Ђ)Ђв Є  50%
(Џ)ЏаҐб«Ґ¤®ў ­ЁҐ 5%
(‘)‘«гз ©­®Ґ 10%
(ђ)ђ®Ґ­ЁҐ 20%
() Ў«®­ 15%
- 532 -
‘®бв®п­ЁҐ ‘гйҐбвў® 2: “¬­ЁЄ

(Ђ)Ђв Є  20%
(Џ)ЏаҐб«Ґ¤®ў ­ЁҐ 30%
(‘)‘«гз ©­®Ґ 20%
(ђ)ђ®Ґ­ЁҐ 20%
() Ў«®­ 10%

‘®бв®п­ЁҐ ‘гйҐбвў® 3: •­лЄ «Є 

(Ђ)Ђв Є  5%
(Џ)ЏаҐб«Ґ¤®ў ­ЁҐ 60%
(‘)‘«гз ©­®Ґ 20%
(ђ)ђ®Ґ­ЁҐ 10%
() Ў«®­ 5%
________________________________________________________________________

Љ Є ўл ¬®¦ҐвҐ бг¤Ёвм Ї® а бЇаҐ¤Ґ«Ґ­Ёо ўҐа®пв­®б⥩, Ђ­­ЁЈЁ«пв®а
ЇаҐЁ¬гйҐб⢥­­®  в ЄгҐв, •­лЄ «Є  ЇаҐ¤Ї®зЁв Ґв ЇаҐб«Ґ¤®ў ­ЁҐ,   “¬­ЁЄ -
зв®-в® б।­ҐҐ ¬Ґ¦¤г ­Ё¬Ё. ЏаҐ¦¤Ґ 祬 ЇҐаҐ©вЁ Є а §Ј®ў®аг ® ॠ«Ё§ жЁЁ
ўҐа®пв­®б⥩, п е®зг Ї®Ј®ў®аЁвм ҐйҐ ®Ў ®¤­®¬ ЇаЁ­жЁЇҐ Ї®ўҐ¤Ґ­Ёп ЁЈа®ўле
®ЎкҐЄв®ў - ® ஥­ЁЁ. ђ®Ґ­ЁҐ ®§­ з Ґв, з⮠ᮧ¤ ­Ёп ў ЁЈаҐ бЎЁў овбп ў ЄгзЁ
Ё Їлв овбп Є Є-в® бЈагЇЇЁа®ў вмбп. ќв® Ї®е®¦Ґ ­  в®, Є Є ­ бв®пйЁҐ б®«¤ вл
Ё«Ё ­ бҐЄ®¬лҐ Ё­®Ј¤  бв६пвбп б®Ўа вмбп ў¬Ґб⥠Ё ®бв вмбп а冷¬ ¤агЈ б
¤агЈ®¬.
‚ ¤Ґ©б⢨⥫쭮бвЁ, нв® ­Ґ зв® Ё­®Ґ, Є Є ўлЎ®а ®ЎйҐ© в®зЄЁ ўбваҐзЁ Ё
楫Ґгбв६«Ґ­­®Ґ ¤ўЁ¦Ґ­ЁҐ Є ­Ґ©. Њл ¬®¦Ґ¬ ЁбЇ®«м§®ў вм в Є®© вЁЇ Ї®ўҐ¤Ґ­Ёп
Є Є б®ўҐа襭­® ­®ў®Ґ б®бв®п­ЁҐ, ЇаЁ Є®в®а®¬ ᮧ¤ ­Ёп Є ¦гвбп
ЈагЇЇЁагойЁ¬Ёбп.
Њ®¤Ґ«Ёа®ў ­ЁҐ нв®Ј® б®бв®п­Ёп ­Ґ ®зҐ­м б«®¦­®:
- ‚лЎа вм бгйҐбвў , Є®в®алҐ ўл е®вЁвҐ бЈагЇЇЁа®ў вм ў¬ҐбвҐ;
- ‚лЎа вм б।­оо ®в­®бЁвҐ«м­® ўбҐе ᮧ¤ ­Ё© Ї®§ЁжЁо. ќв  в®зЄ  ў
Їа®бва ­б⢥ пў«пҐвбп 業в஬ Ё ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў ­  ¤«п ўлзЁб«Ґ­Ёп
ва ҐЄв®аЁ© ¤ўЁ¦Ґ­Ёп ўбҐе ®ЎкҐЄв®ў, Є®в®алҐ б«Ґ¤гов Є ­Ґ©;
- ‚лзЁб«Ёвм ва ҐЄв®аЁо в Є, зв®Ўл Є ¦¤®Ґ ᮧ¤ ­ЁҐ б«Ґ¤®ў «® Є 業ваг.

‚ б®бв®п­ЁҐ ஥­Ёп Ё¬ҐҐв б¬лб« ЇҐаҐе®¤Ёвм, Є®Ј¤  б«ЁиЄ®¬ ¬­®Ј®
Їа®вЁў­ЁЄ®ў ў¤агЈ ­ зЁ­ ов ®¤­®ўаҐ¬Ґ­­® Ё§алЈ вм ®Ј®­м, в®аЇҐ¤л Ё Їа®зЁҐ
б।бвў  г­Ёз⮦Ґ­Ёп. Ќ ўҐа­®Ґ, «®ЈЁз­ҐҐ ўбҐЈ® ®ЎкҐ¤Ё­пвм бгйҐбвў Ї® вЁЇ ¬.
Џ®б¬®ваЁ¬ ­  аЁб.13.6, ­  Є®в®а®¬ Ї®Є § ­® ЈҐ®¬ҐваЁзҐбЄ®Ґ ЇаҐ¤бв ў«Ґ­ЁҐ
஥­Ёп.
- 533 -






ђЁб.13.6. ѓҐ®¬ҐваЁзҐбЄ®Ґ ЇаҐ¤бв ў«Ґ­ЁҐ ஥­Ёп.










ђЁб.13.7. ќў®«ожЁп ­ иҐЈ® ЁЈа®ў®Ј® ¬®§Ј .
- 534 -
’ҐЇҐам ЇҐаҐ©¤Ґ¬ Є ⮬г, Є Є ¬л ¬®Ј«Ё Ўл б®бв ўЁвм бЇа ў®з­лҐ в Ў«Ёжл
ўҐа®пв­®б⥩. „ ў ©вҐ Ї®б¬®ваЁ¬ ­  ­ и ЁЈа®ў®© "¬®§Ј", Ё§®Ўа ¦Ґ­­л© ­ 
аЁб.13.7, б ¤агЈ®© бв®а®­л.
“ ­ б Ґбвм ўлб®Є®га®ў­Ґў®Ґ гЇа ў«Ґ­ЁҐ б®бв®п­ЁҐ¬, Є®в®а®Ґ Ё­ЁжЁЁагҐв ­®ўлҐ
б®бв®п­Ёп, ®б­®ўлў пбм ­  б®бв®п­ЁЁ ®Єаг¦ о饩 баҐ¤л Ё ўҐа®пв­®бвЁ. ќв®
­®ў®Ґ б®бв®п­ЁҐ пў«пҐвбп "§ ¤Ґ©бвў®ў ­­л¬ ў®ў­Ґ" б Ї®¬®ймо ­Ё§Є®га®ў­Ґў®Ј®
гЇа ў«Ґ­Ёп б®бв®п­ЁҐ¬, Є®в®а®Ґ, ў Є®­Ґз­®¬ Ёв®ЈҐ, пў«пҐвбп  ­ «®Ј®¬
¬®в®а­®© ¤®«Ё 祫®ўҐзҐбЄ®Ј® ¬®§Ј . ’ҐЇҐам ¬л ¤ўЁЈ Ґ¬бп Є ⮬г, зв®Ўл
¤®Ў ўЁвм ҐйҐ ®¤Ё­ га®ўҐ­м Є "¬®§Јг". ќв®в ­®ўл© га®ўҐ­м ЇаЁ­Ё¬ Ґв ў®
ў­Ё¬ ­ЁҐ Ё б®бв®п­ЁҐ ®Єаг¦ о饩 б।л, Ё а бЇаҐ¤Ґ«Ґ­ЁҐ ўҐа®пв­®бвЁ.
Ћв¤Ґ«м­®Ґ а бЇаҐ¤Ґ«Ґ­ЁҐ ўҐа®пв­®бвЁ ¬®¦Ґв бгйҐбвў®ў вм ¤«п Є ¦¤®Ј®
ᮧ¤ ­Ёп, в Є зв® ¬л ¬®¦Ґ¬ Ї®«гзЁвм ¬­®Ј® а §­ле "«Ёз­®б⥩" б ®¤­®© Ё в®©
¦Ґ ®ЎйҐ©  аеЁвҐЄвга®© "¤ўЁЈ вҐ«м­®Ј® 業ва ". ‘гйҐбвўгов ¬Ё««Ё а¤л Їг⥩
б®бв ў«Ґ­Ёп бЇа ў®з­ле в Ў«Ёж ўҐа®пв­®бвЁ. ‚ ¬ ­г¦­® ЇҐаҐзЁб«Ёвм ўбҐ
б®бв®п­Ёп, Є®в®алҐ Ґбвм ў ЁЈаҐ. Љ ЇаЁ¬Ґаг, Ўг¤Ґ¬ ЁбЇ®«м§®ў вм вҐ, Є®в®алҐ
¬л 㦥 Ё¬ҐҐ¬. ‚®в ®­Ё:
- ЏаҐб«Ґ¤®ў ­ЁҐ;
- “Є«®­Ґ­ЁҐ;
- ‘«гз ©­®Ґ;
-  Ў«®­;
- ђ®Ґ­ЁҐ;
- ЌҐЇ®¤ўЁ¦­®бвм.
џ ¤®Ў ўЁ« ҐйҐ б®бв®п­ЁҐ "­ҐЇ®¤ўЁ¦­®бвЁ", Ї®¤ Є®в®ал¬ Ї®¤а §г¬Ґў о Ї®«­®Ґ
ЎҐ§¤Ґ©бвўЁҐ Їа®вЁў­ЁЄ . ќв® б®бв®п­ЁҐ ¬®¦Ґв Ї®Є § вмбп ­Ґ Ё­вҐаҐб­л¬, ­® ў
१г«мв вҐ ўа Ј ўлЈ«п¤Ёв в Є, Ўг¤в® ®­ ¤г¬ Ґв, Ё«Ё Ї®¤¦Ё¤ Ґв ЁЈа®Є , зв®Ўл
ᤥ« вм ўлЇ ¤. ќв® ᮧ¤ Ґв ў ЁЈаҐ ­ҐЄ®в®а®Ґ ­ Їа殮­ЁҐ Ё ЎҐбЇ®Є®©бвў®.
Ќ ¬ ­Ґ®Ўе®¤Ё¬® ®ЇаҐ¤Ґ«Ёвм ЇҐаҐ¬Ґ­­лҐ б®бв®п­Ёп ®Єаг¦ о饩 б।л, Є®в®алҐ
гЇа ў«пов ­ иЁ¬Ё аҐиҐ­Ёп¬Ё. ‘ нв®© 楫мо ¬®¦­® § ¤ вм ¤ўҐ ЇҐаҐ¬Ґ­­лҐ:
- „Ёбв ­жЁп ¤® ЁЈа®Є ;
- ‘®бв®п­ЁҐ Ё ў®®а㦥­ЁҐ ЁЈа®Є : бв५пҐв Ё«Ё ­Ґв.

’ҐЇҐам ¬®¦­® Ї®бва®Ёвм в Ў«Ёжл ўҐа®пв­®б⥩. —в®Ўл ᤥ« вм нв®, § Ї®«­Ё¬
¬ ббЁўл жЁда ¬Ё ®в 1 ¤® 6, Є®в®алҐ ЇаҐ¤бв ў«пов а §«Ёз­лҐ б®бв®п­Ёп.
“ ­ б Ї®«гзЁвбп в Ў«Ёж  Ё§ 20 н«Ґ¬Ґ­в®ў. „«п ўлЎ®а  б®бв®п­Ёп
Їа®Ё­¤ҐЄбЁа㥬 в Ў«Ёжг б«гз ©­л¬Ё зЁб« ¬Ё ®в 0 ¤® 19. Љ®­Ґз­®, Є®Ј¤  ¬л
ўлЎЁа Ґ¬ б«гз ©­®Ґ зЁб«® в ЄЁ¬ бЇ®б®Ў®¬, Є Є Ї®Є § ­® §¤Ґбм:

sel = rand()%20

зЁб«  ®в 0 ¤® 19 Ї®«гз овбп а ў­®жҐ­­л¬Ё. ‚®§­ЁЄ Ґв ў®Їа®б, Є Є ᤥ« вм
в Є, зв®Ўл ЇҐаҐЄ«о祭ЁҐ ў в® Ё«Ё Ё­®Ґ б®бв®п­ЁҐ Їа®Ёб室Ё«® з йҐ Ё«Ё ०Ґ?
€­ зҐ, зв® ў ¬ ¤Ґ« вм, зв®Ўл § Ї®«­Ёвм в Ў«Ёжг ⥬ а бЇаҐ¤Ґ«Ґ­ЁҐ¬
ўҐа®пв­®б⥩, Є®в®а®Ґ ўл ¦Ґ« ҐвҐ. Љ ЇаЁ¬Ґаг, ҐбвЁ ўл е®вЁвҐ Ї®«гзЁвм 50%
ЇаҐб«Ґ¤®ў ­Ёп, ў ¬ ­Ґ®Ўе®¤Ё¬® Ї®¬ҐбвЁвм ў в Ў«Ёжг 10 Ґ¤Ё­Ёж. …б«Ё ஥­ЁҐ
¤®«¦­® б®бв ў«пвм 20%, в® ў ¬ ­Ґ®Ўе®¤Ё¬® § ­ҐбвЁ ў в Ў«Ёжг зҐвлॠЇпвҐаЄЁ.
Ќ з «® ў иҐ© в Ў«Ёжл ўлЈ«п¤Ґ«® Ўл ЇаЁ¬Ґа­® в Є:

int table_1 [20] = {1,1,1,1,1,1,1,1,1,1,5,5,5,5,...
®бв «м­лҐ_б®бв®п­Ёп}

‘ в®зЄЁ §аҐ­Ёп ¬ вҐ¬ вЁЄЁ ¬л ЁбЇ®«м§гҐ¬ ЇҐаҐ¬Ґ­­го, Є®в®а п Ё¬ҐҐв а ў­®Ґ
а бЇаҐ¤Ґ«Ґ­ЁҐ ўҐа®пв­®бвЁ ®в 0 ¤® 19, зв®Ўл ЇҐаҐЁ­¤ҐЄбЁа®ў вм в Ў«Ёжг,
Є®в®а п ЇаҐ¤бв ў«пҐв б®Ў®© дг­ЄжЁо Ї«®в­®бвЁ ўҐа®пв­®бвЁ, Ј¤Ґ н«Ґ¬Ґ­в
Ё­¤ҐЄбЁагҐв б«Ґ¤го饥 б®бв®п­ЁҐ.
џ ­ ¤Ґобм, зв® ўл Ї®­Ё¬ ҐвҐ, ® 祬 Ё¤Ґв аҐзм, ­® ¤ ¦Ґ Ґб«Ё ­Ґв, в® Ї®ўҐамвҐ
¬­Ґ - ўбҐ, ® 祬 ¬л Ј®ў®аЁ¬, ¤®ў®«м­® Єагв®! ’ҐЇҐам, Є®Ј¤  ўл ўЁ¤ЁвҐ д®а¬г
бЇа ў®з­ле в Ў«Ёж, ¬л ¬®¦Ґ¬ Ї®Ј®ў®аЁвм ­ бзҐв ўлЎ®а  б®бв®п­Ё©. Љ Є ўл
ўЁ¤Ґ«Ё ў Їа®Ја ¬¬Ґ "“¬­ п ¬ге " (‹ЁбвЁ­Ј 13.4), ¤Ёбв ­жЁп ¤® ЁЈа®Є  Ё
б«гз ©­лҐ зЁб«  Ўл«Ё ЁбЇ®«м§®ў ­л ¤«п ўлЎ®а  б«Ґ¤го饣® б®бв®п­Ёп. Њл
Ї®¤®и«Ё Є ⮬г, зв®Ўл ᤥ« вм ¤«п нв®Ј® ¦Ґ §­ зЁвҐ«м­® Ў®«миҐ. Њл Ўг¤Ґ¬
гзЁвлў вм Є Є ¤Ёбв ­жЁо, в Є Ё ў®®а㦥­ЁҐ ЁЈа®Є  ¤«п ўлЎ®а  ®¤­®© Ё§ ¤ўге
Ї«®в­®б⥩ ўҐа®пв­®бвЁ: ®­  ЁбЇ®«м§гҐвбп, Є®Ј¤  Їа®вЁў­ЁЄЁ ¤ «ҐЄ®,   ¤агЈ п
- Є®Ј¤  ®­Ё Ў«Ё§Є®.
ЏаЁ в Є®¬ Ї®¤е®¤Ґ ўбҐ¬Ё ўа Ј ¬Ё ЁбЇ®«м§гҐвбп в®«мЄ® ®¤­  ¬®¤Ґ«м
"е а ЄвҐа ", ­®, ў­®бп а §­®®Ўа §ЁҐ ў "Ё­¤ЁўЁ¤г «м­®бвм" Їа®вЁў­ЁЄ®ў, ¬л
ЎҐ§ ®б®Ўле ¤®Ї®«­ЁвҐ«м­ле § ва в § ¬Ґв­® ®Ў®Ј вЁ¬ ЁЈаг. ’ Є®©  «Ј®аЁв¬
Ї®Є § ­ ­Ё¦Ґ.

Ђ«Ј®аЁв¬ 13.6. €бЇ®«м§®ў ­ЁҐ Ї«®в­®бвЁ ўҐа®пв­®б⥩ ў ўлЎ®аҐ б®бв®п­Ёп.
-------------------------------------------------------------------------
table_1 = {1,1,1,2,2,3,3,4,4,4,4,4,5,5,5,5,6,6,6,6};
table_2 = {1,1,2,2,2,2,3,3,3,3,3,3,4,4,5,5,5,5,5,6};

while (Ё¤Ґв ЁЈа )
{

... Є®¤ Їа®Ја ¬¬л

if (ўлЇ®«­повбп Є®¬ ­¤л ®¤­®Ј® Ё§ б®бв®п­Ё©)
{
...Їа®¤®«¦ вм Ёе ўлЇ®«­Ґ­ЁҐ
}
else // ‚лЎЁа Ґ¬ ­®ў®Ґ б®бв®п­ЁҐ
{
if (а ббв®п­ЁҐ ¬Ґ¦¤г ЁЈа®Є®¬ Ё Їа®вЁў­ЁЄ®¬ > 100)
{
­®ў®Ґ б®бв®п­ЁҐ=table_1[rand()%20];
}
else
{
if (а ббв®п­ЁҐ < 100 Ё ЁЈа®Є бв५пҐв)
{
­®ў®Ґ б®бв®п­ЁҐ=table_2[rand()%20];
}
else //—Ёбв® б«гз ©­л© ўлЎ®а
{
­®ў®Ґ б®бв®п­ЁҐ=rand()%7;
} // Є®­Ґж ®ЇҐа в®а  else

} // Є®­Ґж ўлЎ®а  ­®ў®Ј® б®бв®п­Ёп

} // Є®­Ґж Ј« ў­®Ј® жЁЄ«  while
__________________________________________________________________________
- 536 -
‚®§¬®¦­®, ­ҐЄ®в®алҐ ¤Ґ©бвўЁп ў иЁе ᮧ¤ ­Ё©, ॠ«Ё§гойЁе Ђ«Ј®аЁв¬ 13.6,
Ўг¤г⠢룫拉вм ¦гвЄ®ў в®, ­® п Ј а ­вЁаго, зв® бЄгз­® ­Ґ Ўг¤Ґв.
…б«Ё ўл 㢥«ЁзЁвҐ а §¬Ґал в Ў«Ёж ўҐа®пв­®б⥩, в® г ў б Ї®пўЁвбп
ў®§¬®¦­®бвм Ї®«гзЁвм ўЇ®«­Ґ ЇаЁ«Ёз­л© १г«мв в. „ «ҐҐ, ўл ¬®¦ҐвҐ ¤®Ў ўЁвм
ҐйҐ ­ҐбЄ®«мЄ® ®ЇҐа в®а®ў IF, гб«®¦­Ёвм ®Єаг¦ ойго б।㠨, ­ Є®­Ґж,
㢥«ЁзЁвм Є®«ЁзҐбвў® в Ў«Ёж ¤«п ¤®бвЁ¦Ґ­Ёп Ў®«м襣® а §­®®Ўа §Ёп ў
е а ЄвҐа е ЇҐаб®­ ¦Ґ© ў иҐ© ЁЈал.
‚® ўбпЄ®¬ б«гз Ґ, Ї®©¤Ґ¬ ¤ «миҐ. ‚ б«Ґ¤гойЁе а §¤Ґ« е ¬л Ўг¤Ґ¬ Ј®ў®аЁвм ®
⮬, зв® пў«пҐвбп з бвмо, Є Є п Ј®ў®ао, "н§®вҐаЁзҐбЄ®© Є®««ҐЄжЁЁ". ќв®
¤®ў®«м­® Ё­вҐаҐб­®, е®вп Ё б®ўҐа襭­® ­Ґ ЁбЇ®«м§говбп ў ЁЈа е ᥣ®¤­пи­ҐЈ®
¤­п. Ѓлвм ¬®¦Ґв, ЁЈал § ўва и­ҐЈ® ¤­п ®Їпвм ўҐа­гвбп Є нв®© Є®­жҐЇжЁЁ.


ЏЂЊџ’њ € ЋЃ“—…Ќ€…

…б«Ё Ўл ¬­Ґ Ўл«® ­г¦­® ®ЇаҐ¤Ґ«Ёвм вҐа¬Ё­л "Ї ¬пвм" Ё "®Ўг祭ЁҐ", п ўҐа®пв­®
бЄ § « Ўл, зв® ®­Ё пў«повбп бЇ®б®Ў­®бвмо ЁбЇ®«м§®ў вм Їа®и«л© ®Їлв ¤«п
аҐиҐ­Ёп ­®ўле Їа®Ў«Ґ¬ ў¬Ґб⥠ᮠᯮᮡ­®бвмо ­ Є Ї«Ёў вм Ё Ё­вҐаЇаҐвЁа®ў вм
­®ўго Ё­д®а¬ жЁо.
‚Ї®«­Ґ ў®§¬®¦­® ­ ¤Ґ«Ёвм ᮧ¤ ­Ёп ў ­ иЁе ЁЈа е бЇ®б®Ў­®бвмо "гзЁвмбп" Ё
"§ Ї®¬Ё­ вм", е®вп Ё ў ¤®бв в®з­® ЈагЎ®© д®а¬Ґ. ‚бҐ, зв® ­ ¬ ­Ґ®Ўе®¤Ё¬®
ᤥ« вм, нв® ўўҐбвЁ ­ҐбЄ®«мЄ® ЇҐаҐ¬Ґ­­ле Ё ЁбЇ®«м§®ў вм Ёе ЇаЁ ўлЎ®аҐ
б®бв®п­Ёп Ё ў ¬®в®а­ле дг­ЄжЁпе.
- 537 -
Љ ЇаЁ¬Ґаг, ¬л ¬®Ј«Ё Ўл Ї®§ў®«Ёвм Є ¦¤®¬г бгйҐбвўг ў ­ иҐ© ЁЈаҐ Ё¬Ґвм
ў­гв७­оо Є авг ЁЈа®ў®Ј® Їа®бва ­бвў . …б«Ё Ўл бгйҐбвў®, ў®©¤п ў Є®¬­ вг,
®Ў­ аг¦Ё«® в ¬ Єгзг ᬥа⥫м­ле ўа Ј®ў, в® ў б«Ґ¤гойЁ© а §, Є®Ј¤  ®­®
ўе®¤Ёв ў Є®¬­ вг, ¬л ¬®Ј«Ё Ўл 㢥«ЁзЁвм ҐЈ®  ЈаҐббЁў­®бвм. „агЈ®© ЇаЁ¬Ґа:
Ґб«Ё ў® ўаҐ¬п Ў®п ЁЈа®Є ¤ўЁЈ «бп ў«Ґў® Ё Ї®в®¬ бв५п«, ЁЈа®ўлҐ бгйҐбвў 
¬®Ј«Ё Ўл § Ї®¬­Ёвм нв® Їг⥬ Ё­вҐаЇ®«пжЁЁ ва ҐЄв®аЁЁ ЁЈа®Є  ў ®ЇаҐ¤Ґ«Ґ­­®¬
­ Їа ў«Ґ­ЁЁ. ‹оЎлҐ ¤Ґ©бвўЁп, Є®в®алҐ ЁЈа®Є з йҐ ўбҐЈ® ЇаҐ¤ЇаЁ­Ё¬ Ґв, ¬®Јгв
Ўлвм ЁбЇ®«м§®ў ­л Їа®вЁў ­ҐЈ®, Ґб«Ё ­ ¤Ґ«Ёвм ЁЈа®ўлҐ бгйҐбвў  бЇ®б®Ў­®бвмо
ЁбЇ®«м§®ў ­Ёп нв®© Ё­д®а¬ жЁЁ ¤«п гб®ўҐа襭бвў®ў ­Ёп б®Ўб⢥­­®© в ЄвЁЄЁ.
ќв® в®«мЄ® ­ҐбЄ®«мЄ® ЇаЁ¬Ґа®ў, ¤«п 祣® ¬®Јгв Ўлвм ЁбЇ®«м§®ў ­л Ї ¬пвм Ё
®Ўг祭ЁҐ. ‚®®ЎйҐ, ўЇ®«­Ґ ¬®¦­® ­ гзЁвм ЁЈаг § Ї®¬Ё­ вм Ё­д®а¬ жЁо ® ў б ў
⮬ ¦Ґ ®ЎкҐ¬Ґ, ў Є®в®а®¬ ўл § Ї®¬Ё­ ҐвҐ Ё­д®а¬ жЁо ®Ў ЁЈаҐ,   § вҐ¬
ЁбЇ®«м§®ў вм ­ Є®Ї«Ґ­­л© ®Їлв Їа®вЁў ЁЈа®Є , е®вп нв® Ё ­ҐбЄ®«мЄ®
­ Ї®¬Ё­ Ґв б ¬®гЎЁ©бвў®.


Ђ‹ѓЋђ€’Њ› ЏЋ€‘ЉЂ. ‚›‘‹…†€‚ЂЌ€… €ѓђЋЉЂ

"Њ®§ЈЁ", Є®в®алҐ ¬л бЄ®­бвагЁа®ў «Ё, Ї®«гзЁ«Ёбм ¤®бв в®з­® г¬­л¬Ё, в Є зв®
бгйҐбвў® ¤ ¦Ґ Ї®«гзЁ«® и ­б ўл¦Ёвм. € ⥯Ґам п е®зг Ї®Ј®ў®аЁвм ® ¤агЈ®©
¤®ў®«м­® Їа®бв®© ўҐйЁ - Є Є ¤®«¦Ґ­ Ўлвм ®аЈ ­Ё§®ў ­ Ї®ЁбЄ.
‚бЇ®¬­Ё¬ ⥮аЁо ’Ґ§Ґп б ЊЁ­®в ўа®¬. †Ё« Є®Ј¤ -в® ¤ ў­л¬-¤ ў­® ЊЁ­®в ўа
(祫®ўҐЄ б Ј®«®ў®© ЎлЄ ), Є®в®ал© ЇаҐб«Ґ¤®ў « ’Ґ§Ґп. ‚ ®ЎйҐ¬, ’Ґ§Ґ© гЄа « г
ЊЁ­®в ўа  ... ­Ґ Ї®¬­о в®з­® - CD-ROM, Ё«Ё зв®-в® в ¬ ҐйҐ ... ’Ґ§Ґ© Ї®Ї « ў
«®ўгиЄг (ў ¤Ґ©б⢨⥫쭮бвЁ, Ї®¤ап¤зЁЄ, Ї®бва®ЁўиЁ© ҐҐ, ­ §лў « ҐҐ
« ЎЁаЁ­в®¬), ­® гбЇҐ« ўлЎа вмбп ­ аг¦г ЇаҐ¦¤Ґ, 祬 ЊЁ­®в ўа ҐЈ® ­ бвЁЈ.
‚®Їа®б б®бв®Ёв ў ⮬, Є Є ­г¦­® ¤ўЁЈ вмбп Ї® « ЎЁаЁ­вг, зв®Ўл ­ ©вЁ Їгвм Є
ўл室㠨«Ё «оЎ®© Їа®Ё§ў®«м­®© в®зЄҐ « ЎЁаЁ­в , Ё ЇаЁ н⮬ ­Ґ § бвапвм ў ­Ґ¬
­ ўбҐЈ¤ ? „ ў ©вҐ ў§Ј«п­Ґ¬ ­  аЁб.13.8, Ј¤Ґ Ё§®Ўа ¦Ґ­ ЇаЁ¬Ґа « ЎЁаЁ­в .
‘гйҐбвўгҐв Їа®бв®©  «Ј®аЁв¬, ®Ў®§­ зҐ­­л© §¤Ґбм Є Є Ђ«Ј®аЁв¬ 13.7, Є®в®ал©
Ї®¬®¦Ґв ў ¬ ­ ©вЁ ўл室 Ё§ «оЎ®Ј® « ЎЁаЁ­в . Ѓг¤м⥠ў­Ё¬ вҐ«м­л, ў ®¤Ё­
ЇаҐЄа б­л© ¬®¬Ґ­в ®­ ¬®¦Ґв ў ¬ бЁ«м­® ЇаЁЈ®¤Ёвмбп!

Ђ«Ј®аЁв¬ 13.7. Џгвм ­ аг¦г.
------------------------------------------------------------------------
do
{
¤ўЁЈ ©вҐбм ў¤®«м Їа ў®© б⥭л
Ґб«Ё ўбваҐвЁ«бп Їа®е®¤, Ї®ўҐа­ЁвҐ ­ Їа ў®
Ґб«Ё Ї®Ї «Ё ў вгЇЁЄ, а §ўҐа­ЁвҐбм ­  180 Ја ¤гб®ў
} Ї®Є  ­Ґ ўл©¤ҐвҐ Ё§ « ЎЁаЁ­в 
________________________________________________________________________
- 538 -









ђЁб.13.8. ЋЎа §Ґж « ЎЁаЁ­в .

ќв®в  «Ј®аЁв¬ а Ў®в Ґв ЎҐ§гЇаҐз­®: Ї®Їа®Ўг©вҐ ҐЈ® г бҐЎп ¤®¬ . ‘в авг©вҐ Ё§
«оЎ®Ј® гЈ«  ў иҐ© Єў авЁал Ё б«Ґ¤г©вҐ  «Ј®аЁв¬г. ‚®§¬®¦­®, ЇаЁ Ё§ўҐбв­ле
®Ўбв®п⥫мбвў е ўл ¤ ¦Ґ ­ ©¤ҐвҐ Їгвм Є Є ¦¤®© ¤ўҐаЁ.
’ Є Є Є ­ б Ё­вҐаҐбгов ўЁ¤Ґ®ЁЈал, Ї®Їлв Ґ¬бп ЁбЇ®«м§®ў вм нв®в  «Ј®аЁв¬,
зв®Ўл Ї®¬®зм ᮧ¤ ­Ёп¬ ў ЁЈаҐ ўлб«Ґ¤Ёвм ЁЈа®Є , ­Ґ влЄ пбм ў б⥭л (Ґб«Ё
¬л, Є®­Ґз­®, ­Ґ е®вЁ¬ ®Ў¬ ­лў вм ЁЈа®Є , Ї®§ў®«Ёў ᮧ¤ ­Ёп¬
ЎҐбЇаҐЇпвб⢥­­® Їа®е®¤Ёвм бЄў®§м б⥭л). €бЇ®«м§®ў ­ЁҐ нв®Ј®  «Ј®аЁв¬ 
¬®¦Ґв ЇаЁўҐбвЁ Є § ваг¤­Ґ­Ёп¬, Ґб«Ё ­ ¤® ®Ўе®¤Ёвм ®ЎкҐЄвл ЄагЈ«®© д®а¬л.
Ћ¤­ Є®, ¬л ¬®¦Ґ¬ Ё«Ё Ё§ЎҐЈ вм в Є®© бЁвг жЁЁ, Ё«Ё ¤®Ў ўЁвм ў Їа®Ја ¬¬г
¤®Ї®«­ЁвҐ«м­л©  «Ј®аЁв¬ ¤«п ЇаҐ¤®вўа йҐ­Ёп 室мЎл Ї® ЄагЈг.


’…Ћђ€џ €ѓђ
‘«Ґ¤гой п ⥬  ­Ґ б«ЁиЄ®¬ вҐб­® бўп§ ­  б ўЁ¤Ґ®ЁЈа ¬Ё,  , ᪮॥, ®в­®бЁвбп
Є бва вҐЈЁзҐбЄЁ¬ ЁЈа ¬ вЁЇ  и е¬ в. ’Ґ¬ ­Ґ ¬Ґ­ҐҐ, п е®з㠮ᢥвЁвм ҐҐ, зв®Ўл
б®®ЎйЁвм ў ¬ ­ҐЄ®в®алҐ Ё­вҐаҐб­лҐ Ё¤ҐЁ.
- 539 -
’Ґ®аЁп ЁЈа пў«пҐвбп а §¤Ґ«®¬ ¬ вҐ¬ вЁЄЁ, б«ЁиЄ®¬ ваг¤­л¬ Ё б«ЁиЄ®¬
 Ўбва Єв­л¬, ¤«п в®Ј® зв®Ўл ЇаЁ¬Ґ­пвм ҐҐ ў ўЁ¤Ґ®ЁЈа е. Ћ­  ®ЇҐаЁагҐв
­ Ў®а®¬ Їа ўЁ« ¤«п ўлзЁб«Ґ­Ёп ®ЇвЁ¬ «м­®Ј® аҐиҐ­Ёп Ё«Ё  «Ј®аЁв¬ ,
Ї®§ў®«по饣® ЁЈа®Єг Ї®ЎҐ¤Ёвм. ЋЎлз­® нв® ¤Ґ« Ґвбп б Ї®¬®ймо ¬­®¦Ґбвў 
¬ ваЁж, ўҐа®пв­®б⥩ Ё «Ё­Ґ©­®Ј® Їа®Ја ¬¬Ёа®ў ­Ёп. ’Ґ¬ ­Ґ ¬Ґ­ҐҐ, ¬л ¬®¦Ґ¬
Ё§ў«Ґзм Ё§ ⥮ਨ ЁЈа ­Ґ¬ «® Ї®«Ґ§­®Ј®.
Љ Є Їа ўЁ«®, вॡгҐвбп аҐиЁвм Їа®Ў«Ґ¬г Їг⥬ ®жҐ­ЄЁ ⥪г饣® Ї®«®¦Ґ­Ёп Ё«Ё
ЁЈа®ў®© бЁвг жЁЁ, Ї®¤а §г¬Ґў п, зв® ЁЈа®Є в®з­® ®жҐ­Ёў Ґв бў®Ё ¤Ґ©бвўЁп ў
¤ ­­®© в®зЄҐ ў ¤ ­­л© ¬®¬Ґ­в ўаҐ¬Ґ­Ё Ё ¤ «ҐҐ бв а Ґвбп г«гзиЁвм бў®о
Ї®§ЁжЁо. —в®Ўл ўлЇ®«­Ёвм нв® ­  Є®¬ЇмовҐаҐ, ­ ¬ ­ ¤®:
- ‚®-ЇҐаўле, ¬л ᮧ¤ Ґ¬ ­ҐбЄ®«мЄ® ўЁ¤®ў 楫Ґўле дг­ЄжЁ©, Є®в®алҐ ¬®Ј«Ё
Ўл ®жҐ­Ёў вм ­ иг ⥪гйго Ї®§ЁжЁо;
- „ «ҐҐ ¬л Їа®ЎгҐ¬ ЇаЁ¬Ґ­Ёвм ­®ўго в ЄвЁЄг Ё«Ё Ё§¬Ґ­Ёвм Ї®§ЁжЁо б ⥬,
зв®Ўл Ї®б¬®ваҐвм, г«гзиЁв «Ё нв® ­ иҐ Ї®«®¦Ґ­ЁҐ;
- …б«Ё нв® ¤®бвЁЈ Ґвбп, ¬л ўлЇ®«­пҐ¬ нв® ¤Ґ©бвўЁҐ;
- …б«Ё ­Ґв, ЁбЇлвлў Ґ¬ б«Ґ¤гойго в ЄвЁЄг.

€¬Ґ­­® Ї® в Є®© б奬Ґ а Ў®в ов и е¬ в­лҐ Їа®Ја ¬¬л. Љ®¬ЇмовҐа Ї®бв®п­­®
ўҐ¤Ґв Ї®¤бзҐв бў®Ёе б®Ўб⢥­­ле ®зЄ®ў Ё ®зЄ®ў Їа®вЁў­ЁЄ , § ўЁбпйЁе ®в
⥪г饣® а бЇ®«®¦Ґ­Ёп дЁЈга, Ё Їлв Ґвбп ­ ©вЁ ­ ЁЎ®«ҐҐ ®ЇвЁ¬ «м­л© 室.
ќв®в "¬л᫨⥫м­л© Їа®жҐбб" ¬®¦Ґв ў ¤Ґ©б⢨⥫쭮бвЁ Ё¤вЁ ­  ¬­®ЈЁе
га®ў­пе. Љ®¬ЇмовҐа Ўг¤Ґв Їа®ўҐапвм Є ¦¤го Ё§ ў®§¬®¦­®б⥩: Ґб«Ё п б«Ґ« о
в Є, в® ¬®© Їа®вЁў­ЁЄ ¬®Ј Ўл ЇаҐ¤ЇаЁ­пвм в®-в®...,   Ґб«Ё п Ї®бвгЇ«о н¤ Є,
б®ЇҐа­ЁЄ ᤥ« Ґв б«Ґ¤го饥... ’ Є ¬®¦Ґв Їа®¤®«¦ вмбп ¤® ЎҐбЄ®­Ґз­®бвЁ, е®вп
祫®ўҐЄ ¬®¦Ґв Їа®ЁЈа вм ¤ ¦Ґ ў ⮬ б«гз Ґ, Ґб«Ё Є®¬ЇмовҐа Ўг¤Ґв ¤Ґ« вм
в®«мЄ® ¤ў  и Ј  "Їа®ўҐаЄ -¤Ґ©бвўЁҐ".
‚ ўЁ¤Ґ®ЁЈа е нв  в ЄвЁЄ  ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў ­  Є Є б ¬®Ґ ўлб®Є®га®ў­Ґў®Ґ
гЇа ў«Ґ­ЁҐ ўбҐ¬Ё ®бв «м­л¬Ё дг­ЄжЁп¬Ё. Љ ЇаЁ¬Ґаг, Є ¦¤го ¬Ё­гвг Ё«Ё ®Є®«®
нв®Ј®, Є®¬ЇмовҐа ¬®Ј Ўл Їа®бзЁвлў вм е®¤л Ё ®жҐ­Ёў вм, Є Є ®­ ¤Ґ©бвўгҐв.
…б«Ё ўбҐ ҐЈ® 室л г¤ з­л, ®­ ¬®Ј Ўл ¤Ґ©бвў®ў вм в Є Ё ¤ «миҐ. Ћ¤­ Є®, Ґб«Ё
Є Є п-в® Ї®ЇлвЄ  ®Є § « бм ­Ґг¤ з­®©, §­ зЁв, ЇаЁи«® ўаҐ¬п ¤«п ЇҐаҐб¬®ва 
в ЄвЁЄЁ.


€’Ћѓ
‚ нв®© Ј« ўҐ ¬л § ва®­г«Ё ¬ ббг Ё­вҐаҐб­ле ⥬ Ё ¤ ¦Ґ ᮧ¤ «Ё ­ҐЎ®«ми®©
"¬®§Ј", бЇ®б®Ў­л© Ё¬ЁвЁа®ў вм ¬­®ЈЁҐ дг­ЄжЁЁ, ЇаЁбгйЁҐ ¦Ёўл¬ ®ЎкҐЄв ¬.
€бЇ®«м§гп Є®¬ЎЁ­ жЁЁ а §«Ёз­ле  «Ј®аЁв¬®ў, ®ЇЁб ­­ле ў нв®© Ј« ўҐ, ўл
ᬮ¦ҐвҐ ᮧ¤ вм "ўЁавг «м­л© ¬®§Ј" ¤®бв в®з­® ¬®й­л© ¤«п в®Ј®, зв®Ўл ў иЁ
ᮧ¤ ­Ёп ᬮЈ«Ё Ў®а®вмбп §  ўл¦Ёў ­ЁҐ. Ћ¤­ Є®, п е®зг ў ¬ ¤ вм Ї аг
б®ўҐв®ў:
- 540 -
- ‘в а ©вҐбм ­Ґ гб«®¦­пвм "¬®§Ј" ЎҐ§ ­Ґ®Ўе®¤Ё¬®бвЁ;
- ЌҐ Їлв ©вҐбм ба §г ᮧ¤ вм бгЇҐаЄ®¬ЇмовҐа. ‚­ з «Ґ Їгбвм ў иҐ Їа®б⮥
Їа®Ё§ўҐ¤Ґ­ЁҐ Ўг¤Ґв Ў®«миҐ Ї®е®¦Ґ ­  "„Ґ­¤Ё".

Њл ®Ўбг¤Ё«Ё Ў®«миЁ­бвў® ¬Ґв®¤®ў гЇа ў«Ґ­Ёп Ї®ўҐ¤Ґ­ЁҐ¬, ЇаЁ¬Ґ­пҐ¬ле ў
ᥣ®¤­пи­Ёе ўЁ¤Ґ®ЁЈа е. …б«Ё ўл ᬮЈ«Ё ў ­Ёе а §®Ўа вмбп, ўл ᬮ¦ҐвҐ
ᮧ¤ ў вм ЁЈал ­Ґ е㦥,   в® Ё «гзиҐ зҐ¬ вҐ, Є®в®алҐ бгйҐбвўгов ᥣ®¤­п.
€­¤гбваЁп Є®¬ЇмовҐа­ле ЁЈа ¤ўЁ¦Ґвбп ᥬЁ¬Ё«м­л¬Ё и Ј ¬Ё Ї® ЇгвЁ г«гз襭Ёп
Ја дЁзҐбЄЁе Ё §ўгЄ®ўле ў®§¬®¦­®б⥩, з бв® § Ўлў п ® в Є®© ¬ «Ґ­мЄ®© ¤Ґв «Ё
Є Є Ё­вҐ««ҐЄв. Љ бз бвмо, ⥯Ґам ўл Ё¬ҐҐвҐ ў®§¬®¦­®бвм ЇаЁў­ҐбвЁ "¬®§ЈЁ" Ё
бва вҐЈЁо ў б«Ґ¤го饥 Ї®Є®«Ґ­ЁҐ Є®¬ЇмовҐа­ле ЁЈа.
Соседние файлы в папке Книга по созданию трёхмерных игр