Термінова допомога студентам
Дипломи, курсові, реферати, контрольні...

Программа эмуляции розвитку популяцій животных

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Ця програма представляє досить грубу модель життєдіяльності і взаємодії живих організмів. Проте, навіть такий моделювання дозволяє простежити основні моменти циклу життя популяції. При можливий додаванні деяких додаткових чинників, моделювання може більш наблизитися до реального ситуації. Такими чинниками можуть являться: Методика взаємодій хижака і травоїдного у тому, як і хижаки, і травоїдні… Читати ще >

Программа эмуляции розвитку популяцій животных (реферат, курсова, диплом, контрольна)

Институт Перепідготовки Кадров Уральского Державного Технічного Университета Кафедра мікропроцесорної техники.

Курсовая работа.

ПРОГРАММА ЭМУЛЯЦИИ РАЗВИТИЯ.

ПОПУЛЯЦИЙ ЖИВОТНЫХ.

Руководитель Доцент Слушатель Группа СП-923 С.А.

Нягань.

2001 г.

Зміст.

ВВЕДЕНИЕ

…3.

1. ОСНОВНА ЧАСТЬ…4.

Методика взаємодії популяций…4.

Описание программы…4.

Описание бібліотеки Fauna1 …5.

Описание бібліотеки Mycrt …6.

Описание основного тіла программы…7.

2.

ЗАКЛЮЧЕНИЕ

…8.

Додаток 1. Основна программа…9.

Додаток 2. Бібліотека Fauna1…23.

Додаток 3. Бібліотека Mycrt…24.

Додаток 4. Інструкція пользователя…26.

Заради інтересу було вирішено написати програму типу «Життя », з декотрими початковими условиями.

Умови були такі, що у эмуляции повинні брати участь.

две популяції: хижаки і травоїдні, які взаимодействовали бы друг з одним шляхом поїдання травоїдних хищниками.

У процесі вироблення програми запроваджені дополнительные параметры:

— Вік животных.

— Мінімальний і максимальний репродуктивний вік.

животных.

— Кількість їжі потрібної тваринам підтримки жизни.

— Кількість травы.

— Відсоток відновлення травы.

— Можливість природних катаклізмів які впливають популяції животных.

1. ОСНОВНА ЧАСТЬ.

2.1 Методика взаємодії популяций.

Методика взаємодій хижака і травоїдного у тому, як і хижаки, і травоїдні представлені у вигляді точок, які пересуваються екраном з кроком у один піксель. У цьому заданно умова, тоді як радіусі один піксель від точки що належить хижаку з’являється точка що належить травоядному, то вважається, що хижак з'їв травоядного.

Спосіб пересування точок на екрані організували за алгоритмом випадкового блукання, тобто. пересування по осях Х і Y з кроком у один піксель вибирається випадковим образом.

Мертві своїм життям травоїдні вважаються, як съевшиеся хищниками.

При недоїданні обома популяціями, особини вмирають у процесі зменшення віку, тобто. що більше вік тваринного, то більша можливість загинути з голоду. Через великих проміжних розрахунків облік по недоеданию був выбран так, що хижаки враховуються раз на рік, а травоїдні дванадцять разів у год.

1.2 Опис программы.

Ця програма написана з допомогою объектно-ориентированного мови Borland Pascal 7.1 й на обробці масивів типу tosob описаної у об'єктному модулі fauna1. Цей тип має такі параметры:

x — розташування з координування Х экрана.

y — розташування з координування Y экрана.

age — вік точки.

col — колір виведення экран.

Програма забезпечує такі операции:

— Завдання параметрів популяції травоядных.

— Завдання параметрів популяції хищников.

— Завдання параметрів оточуючої среды.

— Перегляд взаємодії тварин за графічному режиме.

— Індикація результатів щодо виходу з режиму перегляду.

взаємодії животных.

— Вихід із программы.

З допомогою зарезервованого слова «uses «до програми підключається стандартні бібліотечні модулі TPCRT, GRAPH, DOS і бібліотечні модулі написані программистом-разработчиком MYCRT і FAUNA1.

У розділі описи констант і змінних були объявленны такі переменные:

— gd, gm типу integer для ініціалізації графики.

— q, x, y, x1, y1,t, i, j, k, at, at1, ct1,ctp типу integer для.

використання у тілі циклов.

— g, m типу integer для завдання початкового кількості животных.

— v, w типу integer для завдання максимального віку животных.

— ct, ch типу shortint для завдання кольору відображуваних точек.

— tmin, tmax, hmin, hmax, tp, hp типу integer для завдання чинників.

які впливають репродуктивность животных.

— tt типу integer для врахування померлих і з'їдених травоядных.

— kata типу integer для завдання ймовірності природних катаклизмов.

— ht типу integer для завдання кількості травоїдних потрібних хижаку для їжі.

— ttt типу real для завдання кількості трави потрібних травоядному для їжі.

— tr типу real для завдання відсотка відновлення кількості.

травы.

— tree, tree1 типу longint для завдання й модифікації кількості травы.

— z типу longint для лічильника времени.

— key типу boolean для відстежування натискання клавиш.

— s, ss типу string площею сімнадцять символів висновку.

на екран в графічному режиме.

— pal типу FillPatternType стандартна змінна бібліотеки.

GRAPH для зберігання типу, і кольору заливання графічних постатей об'єктів.

— tg масив обсягом 4400 точок типу tosob для зберігання травоядных.

— hr масив обсягом 1350 точок типу tosob для зберігання хищников.

1.3 ОПИС БІБЛІОТЕКИ FAUNA1.

У цьому бібліотеці описано два типу даних Tposition і Tosob. Тип Tposition має дві параметра:

x — розташування з координування Х экрана.

y — розташування з координування Y экрана Задействованы функції:

getx — отримання координати Х.

gety — отримання координати Y.

А також процедура ініціалізації об'єкта init.

Тип Tosob має чотири параметра:

x — розташування з координування Х экрана.

y — розташування з координування Y экрана.

age — вік точки.

col — колір виведення экран Задействованы функції:

daizwet — отримання кольору точки.

daiage — отримання параметра age.

vidnoli — отримання факту відображення на экране процедуры:

blind — гасіння точки.

show — відображення точки.

init — створення об'єкта Tosob.

done — знищення об'єкта Tosob.

1.4 ОПИС БІБЛІОТЕКИ MYCRT.

У цю бібліотеку включені функції і складні процедури призначені до роботи на текстовому режиме.

Процедуры:

fon — завдання кольору фону экрана.

txt — завдання кольору виведених символов.

ramka — висновок прямокутника символами.

186,187,188,200,201,205.

colorwind — висновок вікна з рамкой Функции:

colword — перетворення чисел від однієї до п’ятнадцяти в рядок з найменуванням цвета.

mes — перетворення чисел від нуля до триста шістдесяти.

п’яти в рядок під назвою месяца.

1.4 ОПИС ОСНОВНОГО ТЕЛА ПРОГРАММЫ.

Здебільшого модулі програми включені процедуры:

ini — висновок на екран масивів hr і tr зі стартовими.

параметрами.

tnew — рух точки що належить масиву tr з.

перевіркою возраста.

hnew — рух точки що належить масиву hr з.

перевіркою возраста.

trod — створення нових точок масиву tr.

hrod — створення нових точок масиву hr.

dead — процес поглинання точки масиву tr точкою.

| масиву hr.

havka — процес знищення точок масиву tr в.

залежність від значення перемінної tt.

tmor — процес знищення випадкового кількості.

точок масиву tr.

hmor — процес знищення випадкового кількості.

точок масиву hr.

zasux — підрахунок перемінної tree.

quit — вихід із програми.

herb — організація введення стартових значень змінних.

для масиву tr.

beast — організація введення стартових значень змінних.

для масиву hr.

env — організація введення значень змінних для.

завдання змінних tree, tr, kata, q.

info — організація інформаційного окна.

gmenu — промальовування основного меню.

omenu — промальовування меню Option.

start — запуск графічного режиму і запуск основного.

циклу.

komenu — організація меню Option.

gkmenu — організація основного меню.

ЗАКЛЮЧЕНИЕ

.

Ця програма представляє досить грубу модель життєдіяльності і взаємодії живих організмів. Проте, навіть такий моделювання дозволяє простежити основні моменти циклу життя популяції. При можливий додаванні деяких додаткових чинників, моделювання може більш наблизитися до реального ситуації. Такими чинниками можуть являться:

— Сезонні зміни климата.

— «Технологія» полювання.

— Навколишня флора і фауна.

— Вплив життєдіяльності людини.

— Взаємодія особин всередині популяции Данная програма може бути як навчального посібника з програмування мовою Pascal.

Додаток 1.

Основна программА.

program fauna;

uses mycrt, dos, graph, fauna1, tpcrt;

var.

q, x, y, x1, y1,gd, gm, t, i, j, k, AT, at1, ct1,ctp:integer;{общие}.

g, v, m, w: integer;{}.

ct, ch: shortint;{цвет}.

tmin, tmax, hmin, hmax, tp, hp: integer;{детородность}.

tt:integer;{трупы і съеденые травоїдні за 1 год}.

kata, ht: integer;

ttt, tr: real;

z, tree, TREE1: longint;

key:boolean;

s, ss: string[17];

tg:array[1.4400] of tosob; {green-травоядных}.

hr:array[1.1350] of tosob; {red-хищников}.

pal:FillPatternType;

{***********************************************************}.

procedure ini;

begin.

for i:=1 to g do.

begin.

at:=RANDOM (v)+1;

tg[i]. init ((random (630)+5); INSERT INTO `ref` (`id_predmet`, `name_predmet`, `id_ref`, `name_ref`, `text_ref`) VALUES (random (462)+18), at, ct);

tg[i]. show;

end;

for i:=1 to m do.

begin.

at:=random (w)+1;

HR[i]. init ((random (630)+5); INSERT INTO `ref` (`id_predmet`, `name_predmet`, `id_ref`, `name_ref`, `text_ref`) VALUES (random (462)+18), at, ch);

hr[i]. show;

end;

end;

{***********************************************************}.

procedure tnew;

begin.

I:=0;

REPEAT.

I:=I+1;

begin.

x:=tg[i]. getx;

y:=tg[i]. gety;

AT:=TG[I]. DAIAGE;

CTP:=TG[I]. DAIZWET;

if (z mod 365)=0 then.

BEGIN.

at:=at+1; {Happy New Year!}.

TG[I]. INIT (X, Y, AT, CTP);

END;

if at>v then {Old ?}.

begin.

tg[i]. done;

tg[i]. init (0,0,0,0);

tt:=tt+1;{умершее животное}.

for j:=i+1 to g do.

begin.

x1:=tg[j]. getx;

y1:=tg[j]. gety;

at1:=tg[j]. daiage;

ct1:=tg[j]. daizwet;

tg[j]. done;

tg[j-1]. init (x1,y1,at1,ct1);

tg[j-1]. show;

end;

TG[G]. INIT (0,0,0,0);

G:=G-1;

I:=I-1;

CONTINUE;

end;

x:=tg[i]. getx;

y:=tg[i]. gety;

x:=x+(random (3)-1);

y:=y+(random (3)-1);

if x635 then x:=634;if y480 then y:=479;

AT:=TG[I]. DAIAGE;

CTP:=TG[I]. DAIZWET;

tg[i]. done;

IF CT0 THEN.

BEGIN.

tg[i]. init (x, y, at, CTP);

tg[i]. show;

END;

END;

UNTIL I>=G;

end;

{***********************************************************}.

procedure trod;

begin.

if (z mod 365)=0 then {Happy New Year!}.

begin.

t:=0;

for i:=1 to g do.

begin.

at:=tg[i]. daiage;

if (tmin4100 then break;

end;

g:=g+1+x;

if g>4000 then.

begin.

key:=true;

end;

end.

else.

begin.

end;

end;

end;

{***********************************************************}.

procedure hnew;

begin.

I:=0;

REPEAT.

I:=I+1;

begin.

x:=hr[i]. getx;

y:=hr[i]. gety;

At:=hr[I]. DAIAGE;

CTp:=hr[I]. DAIZWET;

if (z mod 365)=0 then.

BEGIN.

at:=at+1; {Happy New Year!}.

hr[I]. INIT (X, Y, At, CTp);

END;

if at>w then {Old ?}.

begin.

hr[i]. done;

hr[i]. init (0,0,0,0);

for j:=i+1 to m do.

begin.

x1:=hr[j]. getx;

y1:=hr[j]. gety;

at1:=hr[j]. daiage;

ct1:=hr[j]. daizwet;

hr[j]. done;

hr[j-1]. init (x1,y1,at1,ct1);

hr[j-1]. show;

end;

hr[m]. INIT (0,0,0,0);

m:=m-1;

I:=I-1;

CONTINUE;

end;

x:=hr[i]. getx;

y:=hr[i]. gety;

x:=x+(random (3)-1);

y:=y+(random (3)-1);

if x635 then x:=634;if y480 then y:=479;

AT:=hr[I]. DAIAGE;

CTp:=hr[I]. DAIZWET;

hr[i]. done;

IF CTp0 THEN.

BEGIN.

hr[i]. init (x, y, at, CTp);

hr[i]. show;

END;

END;

UNTIL I>=m;

end;

{**********************************************************}.

procedure hrod;

begin.

if (z mod 365)=0 then {Happy New Year!}.

begin.

t:=0;

for i:=1 to m do.

begin.

at:=hr[i]. daiage;

if (hmin1000) or (m=g;

TG[G]. INIT (0,0,0,0);

G:=G-1;

j:=j-1;

end.

else.

begin.

end;

until j>=g;

end;

end;

{**********************************************************}.

procedure havka;

begin.

if ((z mod 365)=0) and (tt>0) then.

begin.

x1:=(tt divx ht);{сколько прокормилось у тому году}.

j:=0;

y1:=w;{max vozrast}.

if x1=0 then.

begin.

for i:=1 to m do.

begin.

hr[i]. init (0,0,0,0);

hr[i]. done;

end;

end;

if (x10 then.

begin.

repeat.

j:=random (m)+1;

hr[j]. done;

hr[j]. init (0,0,0,0);

for i:=j+1 to m do.

begin.

x1:=hr[i]. getx;

y1:=hr[i]. gety;

at1:=hr[i]. daiage;

ct1:=hr[i]. daizwet;

hr[i]. done;

hr[i-1]. init (x1,y1,at1,ct1);

hr[i-1]. show;

end;

hr[m]. done;

hr[m]. init (0,0,0,0);

m:=m-1;

until m=y;

end;

end;

{***********************************************************}.

procedure zasux;{засуха}.

begin.

tree:=tree — random (round (tree/10));

end;

{***********************************************************}.

procedure quit;

begin.

window (1,1,80,25);

fon (black);

clrscr;

GOTOXY (1,24);

txt (White);

WRITELN («————————————————————————-;

—————————————— «);

txt (yellow);

WRITELN («Antony Sokolov | FidoNet 2:5078/20.4 AKA.

2:5078/20.666 AKA 2:5078/22.666 ");

txt (White);

WRITELN («—————————————————————————.

—————————————— «);

end;

{***********************************************************}.

procedure herb;{травоядные}.

begin.

colorwind (3,20,77,25,black, yellow);

gotoxy (32,1);

writeln («Правила введення для травоїдних »);

gotoxy (2,2);write («У травоїдних трохи більше 3000. »);

write («Корм озер місяцем в кілограмах. »);gotoxy (2,3);

write («Послід — у дитинчат. »);write («Колір виведення від 1.

до 15 ");

colorwind (40,10,65,19,black, green);

gotoxy (6,1);

txt (Yellow);

write («Травоїдні «);

gotoxy (2,2);

write («У: »); {початкова у травоядных}.

readln (g);

txt (yellow);

gotoxy (2,3);

write («Корм: »);{у корми на рік однієї.

травоядного}.

readln (ttt);

ttt:=ttt/1000;

gotoxy (2,4);

write («Послід: »); {рождаемость}.

readln (tp);

gotoxy (2,5);

write («Min дітородний: »);

read (tmin);

gotoxy (2,6);

write («Max дітородний: »);

read (tmax);

gotoxy (2,7);

write («Max возрaст: »);

read (v);

gotoxy (2,8);

write («Колір виведення: »);

read (ct);

colorwind (3,20,77,25,black, black);

end;

{***********************************************************}.

procedure beast; {хищники}.

begin.

colorwind (3,20,77,25,black, yellow);

gotoxy (32,1);

writeln («Правила введення для хижаків »);

gotoxy (2,2);write («У хижаків трохи більше 1000. »);

write («Корм — у травоїдних на рік. »);gotoxy (2,3);

write («Послід — у дитинчат. »);write («Колір виведення від 1.

до 15 ");

colorwind (40,10,65,19,black, red);

gotoxy (8,1);

txt (Yellow);

write («Хижаки »);

gotoxy (2,2);

txt (yellow);

write («У: »);

readln (m);

gotoxy (2,3);

write («Корм: »);{початкова у хищников}.

readln (ht);

gotoxy (2,4);

write («Послід: »);{рождаемость}.

readln (hp);

gotoxy (2,5);

write («Min дітородний: »); {природна смертность}.

read (hmin);

gotoxy (2,6);

write («Max дітородний: »); {природна смертность}.

read (hmax);

gotoxy (2,7);

write («Max вік: »); {природна смертность}.

read (w);

gotoxy (2,8);

write («Колір виведення: »);

read (ch);

colorwind (3,20,77,25,black, black);

end;

{***********************************************************}.

procedure env; {середовище обитания}.

begin.

colorwind (3,20,77,25,black, yellow);

gotoxy (32,1);

writeln («Правила введення для середовища »);

gotoxy (2,2);write («У трави щонайменше 1000. »);

write («Відсоток відновлення будь-який. »);gotoxy (2,3);

write («Катастрофи: 0 чи 1 — немає, 2 і более-есть. »);

gotoxy (2,4);

write («Затримка повідомлень в мс. Рекомендується щонайменше.

1000 ");

colorwind (40,10,75,17,black, Magenta);

gotoxy (13,1);

txt (Yellow);

write («Середовище проживання »);

gotoxy (2,2);

txt (yellow);

write («У трави: »);{У востанавливаемой.

їжі для травоїдних в год}.

readln (tree);

gotoxy (2,3);

write («Відсоток відновлення: »);

readln (tr);

gotoxy (2,4);

write («Наявність катастроф: »);

readln (kata);

gotoxy (2,5);

write («Затримка повідомлень: »);

readln (q);

colorwind (3,20,77,25,black, black);

end;

{***********************************************************}.

procedure info;

begin.

fon (15);

colorwind (1,4,70,16,black, Lightblue);

txt (Green);

gotoxy (2,2);write («Травоїдних- «, g, «Хижаків- «, m);

str (ttt:1:2,s);

gotoxy (2,3);

write (s, «т. їхні «, ht, «туш потрібно на прокорм тварин »);

gotoxy (2,4);

write («Max вік травоїдних », v, «, хижаків », w);

gotoxy (2,5);

write («Дітородний вік травоїдних від », tmin, «до », tmax);

gotoxy (2,6);

write («Дітородний вік хижаків від », hmin, «до », hmax);

gotoxy (2,7);

write («Послід травоїдних до », tp, «, хижаків до », hp);

gotoxy (2,8);write («Трави », tree, «тонн »);

str (tr:1:2,s);

gotoxy (2,9);write («Приріст трави за кожен місяць », p. s, «% »);

if (kata=0) or (kata=1) then p. s:= «відсутня «else.

p.s:= «присутній » ;

gotoxy (2,10);write («Можливість катаклізмів », s);

s:=colword (ct);

gotoxy (2,11);write («Колір травоїдних », s);

s:=colword (ch);

write («Колір хижаків », s);

end;

{***********************************************************}.

procedure Gmenu;

begin.

fon (black);

clrscr;

colorwind (1,1,80,4,black, darkgray);

txt (14);

gotoxy (5,2);

write («P.S »);

txt (white);

write («tart »);

txt (yellow);

write («O »);

txt (white);

write («ption »);

txt (yellow);

write («Q »);

txt (white);

write («uit »);

END;

{***********************************************************}.

PROCEDURE Omenu;

begin.

colorwind (45,3,62,8,black, darkgray);

hiddencursor;

txt (14);

gotoxy (2,2);

write («H »);

txt (white);

writeln («erbivorous »);

txt (yellow);

gotoxy (2,3);

write («B »);

txt (white);

writeln («east of prey »);

txt (yellow);

gotoxy (2,4);

write («E »);

txt (white);

write («nvironment »);

end;

{***********************************************************}.

procedure start;

begin.

randomize;

gD := Detect;

InitGraph (gD, gM, «»);

setfillpattern (pal, black);

z:=0;{начало эры}.

tt:=0; {трупи і съеденные}.

ini;

repeat.

key:=false;

z:=z+1;

if ((z mod 365)=0) or ((z mod 365)=31) or ((z mod 365)=59).

or ((z mod 365)=90) or ((z mod 365)=120) or ((z mod.

365)=151) or ((z mod 365)=181) or ((z mod 365)=212) or.

((z mod 365)=242) or ((z mod 365)=273) or ((z mod.

365)=303) or ((z mod 365)=334) then.

begin.

tree:=round (tree-g*ttt);{съели за месяц}.

tree:=tree+round (tree*(tr/100));{прирост трави в месяц}.

x:=round (tree*ttt);{травоядные від недоедания}.

if tree0 then.

begin.

dead;{хищники їдять травоядных}.

hnew;{естественная смертність хищников}.

havka;{хищники від недоедания}.

hrod;{рождение хищников}.

end;

if ((z mod 365)=180)and (g>0)and (m>0) then.

begin.

if random (kata)0 then.

begin.

x:=random (4);

if x=0 then.

begin.

x:=random (round (g/50))+5;

moveto (320,240);setcolor (Lightred);str (x, s);

Outtext («Хвороба травоїдних забрала »);

Outtext (s);Outtext («життів »);

tmor;

end;

if x=1 then.

begin.

x:=random (round (m/40))+1;

moveto (320,240);setcolor (Lightred);str (x, s);

Outtext («Хвороба хижаків забрала »);

Outtext (s);Outtext («життів »);

hmor;

end;

if x=2 then.

begin.

zasux;

moveto (320,240);setcolor (Lightred);

str (tree1,s);Outtext («Засуха! Загублено »);

Outtext (s);Outtext («тонн трави »);

delay (q);

end;

if x=3 then.

begin.

x:=random (round (g/50))+5;

moveto (0,240);setcolor (Lightred);str (x, s);

Outtext («Повінь згубило »);Outtext (s);Outtext («.

травоїдних, «);

tmor;

x:=random (round (m/40))+1;

str (x, s);Outtext (s);Outtext («хижаків, «);

hmor;

zasux;

str (tree1,s);Outtext (s);Outtext («тонн трави »);

delay (q);

end;

delay (q);

bar (0,240,640,260);

end;

end;

if g>0 then trod;{рождение травоядных}.

if g>4000 then break;

if keypressed then key:=true ;

if (g>4000) or (g0)and (m>0)and (ttt>0)and (tp>0)and (tmin>0)and (tmax>0).

and (ct>0)and (ht>0)and (hp>0)and (hmin>0)and (hmax>0)and.

(Ch>0)and (tree>0)and (tr>0)and (kata>0)then.

begin.

start; gmenu; info;

key1:=false;

end;

end;

if (key2= «o »)or (key2= «O ») then.

begin.

Omenu; komenu;

GMENU;

info; key1:=false;

end;

if (key2= «q ») or (key2= «Q »)or (key2=#27) then.

begin.

key1:=true; quit;

end;

until key1=true;

end;

{***********************************************************}.

{Body program}.

begin.

g:=1200;{травоядные кол-во}.

v:=30;{возраст травоядного}.

m:=200;{хищники кол-во}.

w:=25;{возраст хищника}.

ct:=yellow;ch:=red;

tmin:=2;tmax:=28;

hmin:=3;hmax:=24;

tp:=3;hp:=7;{детородность}.

kata:=9; ht:=3; ttt:=1; tree:=1300; tr:=15.1;

hiddencursor;

GKMENU;

end.

Приложение 2.

Библиотека Fauna 1.

{Init object}.

unit fauna1;

interface.

uses graph;

Type TPosition=object.

x, y: integer;

procedure Init (x0,y0: integer);

function getx: integer;

function gety: integer;

end;

type Tosob=object (TPosition).

color: word;

vidno: boolean;

AGE: INTEGER;

constructor Init (x0,y0,age0:integer;col:word);

destructor Done; virtual ;

procedure Show; virtual ;

procedure Blind; virtual ;

function Daizwet: word;

function VidnoLi: boolean;

FUNCTION DAIAGE: INTEGER;

end;

Posob=^Tosob;

{metod Tposition}.

Implementation.

Procedure Tposition. Init (x0,y0:integer);

Begin.

x:=x0;

y:=y0;

End;

Function Tposition. Getx:integer;

Begin GetX:=x End;

Function Tposition. Gety:integer;

Begin Gety:=y End;

Constructor Tosob. Init (x0,y0,age0:integer;col:word);

Begin.

Tposition.Init (x0,y0);

AGE:=AGE0;

color:=col;

vidno:=false;

End;

Destructor Tosob. Done;

Begin.

Tosob.blind;

End;

procedure Tosob. Show;

Begin.

putpixel (TPosition.GetX, TPosition. GetY, color);

vidno:=True;

End;

procedure Tosob. Blind;

Begin.

putpixel (TPosition.GetX, TPosition. GetY, GetBKColor);

vidno:=False;

End;

Function Tosob. Daizwet: word;

Begin Daizwet:=color End;

Function Tosob. VidnoLi: Boolean;

Begin VidnoLi:=Vidno End;

FUNCTION TOSOB. DAIAGE:INTEGER;

BEGIN DAIAGE:=AGE END;

End.

Приложение 3.

Библиотека Mycrt.

unit Mycrt;

interface.

uses tpcrt, dos;

procedure fon (x:byte);

procedure txt (col:byte);

procedure ramka (x1,y1,x2,y2:integer);

procedure colorwind (v1,v2,v3,v4,fon, text: byte);

FUNCTION COLWORD (COL:BYTE):STRING;

function mes (z:longint):string;

implementation.

{***********************************************************}.

function mes;

var col: string;

x:integer;

begin.

x:=z mod 365;

if (x>=0)and (x=31)and (x=59)and (x=90)and (x=120)and (x=151)and (x=181)and (x=212)and (x=242)and (x=273)and (x=304)and (x=336)and (x.

Показати весь текст
Заповнити форму поточною роботою