Бәйге ойыны бағдарламасын жасау

Мазмұны

Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..5

1Графика және анимация ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...6
1.1 Режимдік функциялар ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..6
1.2 Анимация құру ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 13

2 Бағдарламаны жобалау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..18
2.1 Ойынның құрастырылу әдісі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..18
2.2 Бағдарламаның алгоритмі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .18

3 Құжаттау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..19
3.1 Қолданушыға нұсқау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...19
3.2 Бағдарламаушыға нұсқау ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 19

Қорытынды ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 20

Қолданылған әдебиеттер тізімі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 21

Қосымша ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...22

Аннотация
Кіріспе

Өткен ғасырдың орта кездерінде есептеуіш техника саласында күрделі өзгерістер болып, Фортран, Бейсик, Паскаль және т.б. көптеген жоғары деңгейлі программалау тілдерінің жарыққа шыққаны белгілі. Кітапта оқырмандар ол тілдердің кейбірімен бастапкы түрде болса да таныс деп есептелген.
1972 жылы AT&T атаулы Американың корпорациясы жаңа C (Си) программалау тілін дайындап шыкты. Ол — құрылымдық және алгоритмдерді басшылыққа алып дайындалған процедуралық жоғары деңгейлі тіл.
Тілге жылдам орындалатын, жеке биттермен операция жасайтын операторлар да енгізілген. Олар арқылы байланыс порттарын, магниттік дискілерде жинақтауыштарды және т.б. аппараттық кұралдарды басқаруға мүмкіндік жасалды. Ал, алғашқы кездерде жеке типті компьютерлердің аппараттық кұралдарына қол жеткізе алатын машиналық командалармен жұмыс істейтін төменгі деңгейлі ассамблер тілі ғана болатын.
Си тілі бірте-бірте дамытылып, қазіргі кезде пайдаланылып келе жаткан, 1983 жылы дүние жүзі елдері басшылыққа алған ANSI C нұсқасы да жарыққа шықты (ANSI - стандарттардың Америкалық ұлттық институты). ANSI C тілінің түрлі нұсқаларына енгізілген стандартты кітапханалар да бар. Тілдің кемшілігі де жоқ емес, ол жүйелік және қолданбалы программаларды дайындауға бейім, бірақ айнымалыларға рұқсат етілмеген қол жеткізу механизмін қамтамасыз етпейді және құрьшатын класты баска кластың ішкі класы (мұрагер) ретінде жариялау мүмкін емес. Мұндай объектілі - бағдарлы программалау (ОБП) тілдеріне енетін ерекшеліктерді ескеріп, Borland International Inc фирмасы C тілінің дамытылған жаңа Turbo C (Турбо Си) нұскасын 1980 жылдардың басында жарыққа шығарды. Кейіннен Turbo C++ 2.0, Turbo C++ 3.0 және олардың кеңейтілген Borland C++ нұсқалары да пайда болды: Borland C++ 2.0, Borland C++ 3.0, Borland C++ 3.1, Borland C++ 4.0 және т.б.
C++ тілі де процедуралық тіл, бірақ онда ОБП тілінің ерекшеліктері кең түрде қарастырылған. ОБП тілінде қолданылатын негізгі ұйымдар: класс, объект, оқиға, қасиеттер мен әдістер. Бұл ұғымдар:
объект - құрылымы класс типі арқылы сипатталатын айнымалы;
оқиға - объект жағдайының өзгеруі; қасиеттер - объект сипаттамалары (параметрлері); әдіс - класс элементтерін іздейтін команда не процедура, функция.
класс - пайдаланушы анықтайтын тип. Тип қасиеттер мен әдістерді бірге қосып сипаттайды. Программада осы кластың жеке даналары дайындалады. ОБП-да класс үшін мұрагерлік, инкапсуляция және полиморфизм принциптері енгізілген. Мұрагерлік — программада негізгі класс типінің туынды иерархиялық класта сақталуы, т.б.
Қолданылған әдебиеттер тізімі

1. Э. Дейкстра. Заметки по структурному программированию / У. Дал, Э. Дейкстра, К. Хоор. Структурное программирование. - М.: Мир, 1975. - С. 7-97.
2. Е.А. Жоголев. Технологические основы модульного программирования // Программирование, 1980, #2. - С. 44-49.
3. В.Ш. Кауфман. Языки программирования. Концепции и принципы. - М.: Радио и связь, 1993.
4. Скотт Д. Теория решеток, типы данных и семантика// Данные в языках программирования. - М.: Мир, 1982.
5. Требования и спецификации в разработке программ: пер. с англ. - М.: Мир, 1984.
6. Фокс Дж. Программное обеспечение и его разработка. - М.: Мир, 1985.
7. Хоор К. О структурной организации данных// У. Дал, Э. Дейкстра, К. Хоор. Структурное программирование. - М.: Мир, 1975.
8. Кнут Дональд, Эрвин. Искусство программирования, том 1. Основные алгоритмы, 3-е издание. : Пер. с англ. : Уч. Пос. – М. : «Вильямс», 2000
        
        Аннотация
«Бәйге ойыны бағдарламасын жасау» тақырыбындағы ... ... С++ ... ... ... қарастырылады.
Мақсатым ойын-бағдарламасын жазу болды, мұнда тышқанның көмегімен
экранда бейнеленген нысананы жаралауымыз қажет.
Алдымен main() функциясы жасалды, бұл ... msinit() ... vvod() ... ... ... ... ... жасауда
үзулерді өңдеу қажеттілігі пайда болды.Оны INTER() және OBR() ... ... game() және image() ... ... (олар ойын өрісі
мен менюін салуды іске асырады) соңында ... ... ... ... ... ... ... Анимация
құру........................................................................
........................13
2 Бағдарламаны
жобалау.....................................................................
.................18
2.1 Ойынның құрастырылу
әдісі.......................................................................
...18
2.2 Бағдарламаның
алгоритмі...................................................................
..........18
3
Құжаттау....................................................................
..........................................19
3.1 Қолданушыға
нұсқау......................................................................
.................19
3.2 Бағдарламаушыға
нұсқау......................................................................
..........19
Қорытынды...................................................................
.........................................20
Қолданылған әдебиеттер
тізімі......................................................................
......21
Қосымша
............................................................................
...................................22
Кіріспе
Өткен ғасырдың орта кездерінде есептеуіш техника саласында күрделі
өзгерістер ... ... ... ... және т.б. ... ... программалау тілдерінің жарыққа шыққаны ... ... ол ... кейбірімен бастапкы түрде болса да ... ... жылы AT&T ... ... корпорациясы жаңа C (Си) программалау
тілін дайындап шыкты. Ол — құрылымдық және алгоритмдерді басшылыққа алып
дайындалған процедуралық жоғары ... ... ... ... жеке биттермен операция жасайтын операторлар
да енгізілген. Олар арқылы байланыс порттарын, ... ... және т.б. ... кұралдарды басқаруға мүмкіндік
жасалды. Ал, алғашқы ... жеке ... ... ... қол ... ... машиналық командалармен жұмыс істейтін
төменгі деңгейлі ассамблер тілі ғана ... тілі ... ... ... ... пайдаланылып келе жаткан,
1983 жылы дүние жүзі елдері басшылыққа алған ANSI C ... да ... (ANSI - ... ... ... ... ANSI C тілінің
түрлі нұсқаларына енгізілген стандартты ... да бар. ... де жоқ ... ол ... және ... ... ... бірақ айнымалыларға рұқсат етілмеген қол жеткізу ... ... және ... ... ... кластың ішкі класы (мұрагер)
ретінде жариялау мүмкін емес. Мұндай объектілі - бағдарлы программалау
(ОБП) ... ... ... ... Borland ... ... C тілінің дамытылған жаңа Turbo C (Турбо Си) ... ... ... ... ... ... Turbo C++ 2.0, Turbo C++ ... олардың кеңейтілген Borland C++ нұсқалары да пайда болды: Borland ... Borland C++ 3.0, Borland C++ 3.1, Borland C++ 4.0 және ... тілі де ... тіл, ... онда ОБП ... ... кең
түрде қарастырылған. ОБП тілінде қолданылатын ... ... ... ... қасиеттер мен әдістер. Бұл ұғымдар:
объект - құрылымы класс типі арқылы сипатталатын айнымалы;
оқиға - ... ... ... ... - объект сипаттамалары
(параметрлері); әдіс - класс ... ... ... не ... - ... анықтайтын тип. Тип қасиеттер мен әдістерді ... ... ... осы ... жеке даналары дайындалады. ОБП-да
класс үшін ... ... және ... ... ...... негізгі класс типінің туынды
иерархиялық класта сақталуы, т.б.
1 ГРАФИКА ЖӘНЕ ... ... ... C жғне C++ тілдерінде графикалық режімге µтіп, т‰рлі фигуралық
кескіндерді салуѓа ... ... ... бар. Олар ... ... ... ... драйверлер (басқарушы программалар)
BGI (Borland Graphics Interғase) кеңейтілуі бар файлдарда ... ... ... initgraph() функциясы арқылы орындалады.
Графикалық режім EGA, VGA, SVGA адаптерлерінде ... ... ... 640 X 480 ... режімді пайдаланады.
Графикалық режімде ж±мыс істеу функциялары:
1. Драйвер мен графикалық режімді тандау: ... (&gd, ... ... ж‰ктеу жғне графикалық ж‰йені инициалдау:
initgraph (&gd, &gm, "BGI файлына жол");
М±ндаѓы gd - қажетті драйвер нµмірі, gd=GraphDriver; gm - пайдаланатын
графикалық режім ... ... (gd, gm ... ... ... арқылы сипатталады. Программада драйверді тандау операторыныњ орнына
gd = DETECT; операторын пайдалануға да ... ... ... DETECT — ... ... ... графикалық драйвер нµмірі).
Егер драйвер жадта д±рыс орналастырылѓан болса, б±л функция ... ... ... буфер бµліп қояды.
Егер BGI файлдары ағымдық каталогта бар болса, программада ғр ... ... ... оныњ ... ... ... бос орын (" ")
жолын енгізіп кету ... (&gd, &gm, " ... Қате ... тексеру функциясы: graphresult ();
Егер программа д±рыс қосылса, онда қате коды = 0 деп ... ... grOK=0), ал, ... ... ... - 0-ден ... б‰тін
сандар.
Сонымен, графиктік режімді іске қосу ‰шін программа ... ... ... ... жазу ...
#include #include
#include main ()
// м±ны кµп ... // ... де ... gd, gm, ... (&gd, &gm); initgraph (&gd, &gm, "");
era>r=graphresult();
//(error!=grOK)
{ puts ("графика катесі"); exit (1); }
Ескерту. Компьютерде ... ... ... ... ... режімніњ бар-жоғын тексеру, ( error, if ) операторларын енгізудіњ
қажеті жоқ.
Т‰сті орнату
Graphics файлында анықталѓан т‰стік ... ... 16, ... тек ... т‰с
|Т‰с аты |Код ... аты ... |0 ... ... |1 |кµк ... |2 ... ... |3 |с±р ... |4 ... ... |5 ... курең |
|BROWN |6 ... ... GRAY |7 ... ... ... GREEN |10 ... кµк ... RED |12 ... ... ... |14 ... ... |15 |ақ ... ... ... ... ... ... ... оныњ латынша атын не кодын енгізуге болады.
Сызылатын кескіндер мен жазылатын мғтін т‰сін орнату:
setcolor ... ... ... мен ... ... ... ‰лгі, қалындық);
М±ндаѓы т‰р кодтары:
0 SOLID_LINE (т±тас)
1 DOTTED_LINE (н‰ктелерден туратын)
2 CENTER_LINE ... мен ... ... (пунктирлермен)
4 USERBIT_LINE (пайдаланушы анықтайтын);
Қалыңдық:
1 NORM_WIDTH (бір пиксельдік сызық)
3 THICK_WIDTH (‰ш пиксельдік сызық)
‡лгі параметрі т‰р коды 4-ке етіп ашылѓанда ғана беріледі, ... ... 0 коды ... облысты бояу ‰шін арналѓан функциялар:
a1) setfillstyle (бояу типі, т‰с);
М±ндаѓы бояу типініњ негізгі кодтары мен атаулары:
0 EMPTY_ҒILL фон ... ... ... ... ... т±тас толтыру
3 LTSLASH_ҒILL кµлбеу сызықтармен штрихтау
a2) floodfill(x, y, т‰с);
(x, y) — т±йық ... ... ... ... т‰с ... ... ... бірдей т‰с (соњғы функция кµбірек пайдаланылады).
Экранды тазалау (орнатылѓан ... алып ... ... ... ... ();
Берілген графикалық режімде н‰ктелер координаттарыныњ ең ‰лкен
мғндерін анықтайтын функциялар:
getmaxx (); - ... ... getmaxy (); - тігі ... ... тазалау: clearviewport ():
Ағымдық координаттарды анықтау: getx(); gety();
Графикалық режімде жадты ... ... ... ... µту:
closegraph ();
Графикалық экран ішінде терезе ашу:
setviewport (xl, yl, x2, y2, ... yl), (x2, y2) - ... ... сол жақ ... ... мен оњ
жақ тµменгі тµбесініњ координаттары;
clip - кесіп тастау коды. Егер clip=l, онда терезеге сыймайтын кескін
элементтері анынып ... егер clip=0 ... ... ... объектілерді сызу операторлары
1. (xl, yl), (x2, y2) н‰ктелерін қосатын т‰зу кесіндісі:
line (xl, yl, x2, y2)
ал, lineto (x, y) - ... ... ... (x, y) ... дейін
т‰зу кесіндісін сызады.
Сғйкес сол жақ жоѓарѓы жғне оњ жақ ... ... (xl, ... y2) ... тік ... (xl, yl, x2, y2);
Орталық н‰ктесі (x, y) шењбер:
circle (x, y, радиус);
. ... ... ... (x, y, ... ... ... б±рыштар градустық µлшеммен беріледі жғне сағат ... ... ... ... ... салу ... ... бойынша
орындалады.
Жартылай µстері rx, rу болатын боялѓан эллипсті орнату,
(x, y) — орталық н‰ктесі:
ғillellipse (x, y, rx, ... ... ... (x, y, ... ... rx, ry ... тік тµртб±рышты салуѓа арналѓан функция:
bar (xl, yl, x2, y2);
- (xl, yl,), (x2, y2) - сғйкес сол жақ жоѓарѓы жғне оњ жақ ... ... ... ... ала ... ... ... бояу
т‰сімен боялып кµрсетіледі жғне контуры сызылмайды.
Контур іші боялѓан параллелепипед сызу функциясы:
bar3d (xl, yl, x2, y2, ... ... ... алдыњѓы жағы боялып кµрсетіледі. Тереңдік ‰шін
20 .. 30 аралығындағы б‰тін санды алу жеткілікті, тµбе ‰шін 1 саны ... ... ... сызып кµрсетеді ( 0 саны ... ... ... (x, y), ... ... ... y, ... соњғ_б±рыш, радиус);
контуры кµрсетілген жғне боялѓан сектор сызылады. Боялу т‰сі мен сызық
қалындыѓы алдын ала енгізілген setlinesyle() функциясы бойынша орнатылады.
Боялѓан ... ... (x, y, ... ... rx, ... ‰шб±рыш, тік тµртб±рыш, шеңбер сияқты фигураларды ағымдық
кезде µшіріп, фигуралардыњ "қозѓалуын" кµрсететін (анимация ±йымдастыратын)
функция:
setwritemode ... ... ... кодтар:
0- кµшіру;
1- экранда сызулы кескінді "µшіру";
2- стандартты режім.
Мундағы 1 (бір) - т‰рлі сызықтармен ... ... ... ... ... Оныњ ... бір сызық т±рѓан орнына ғкелінген
кезде ол кµрінбей ("µшіп") калады, одан шығу кезінде ол ... ... ... ... ±йымдастыру ‰шін пайдалануға болады.
Қозғалуды ±йымдастыратын басқа функциялар да бар:
getimage(), imagesize() жғне putimage(). getimage() функциясы ... ... ... ... ... да, ... ... жад кµлемін
анықтау ‰шін imagesize() функциясы шақырылады. Одан әрі ... ... оны ... ... ... ... ... орнату:
putpixel (x, y, т‰с);
М±ндаѓы x, y — терезеніњ координаттар ... ... ... ... мғтін орнату:
outtextxy (x, y, mn);
М±ндаѓы x, y - мғтін шыѓарылатын бастапқы н‰кте, mn — ... ... ... ... Ол ... ішінде жазылады. Режімде
жолды ағымдық позициядан бастап шыѓаратын
outtext() ... да ... ... ... мғтінді т‰рлі т‰рде шыѓаруға болады.
settextstyle (шрифт, бағыт, µлшем);
шрифт (қаріп) параметрлерініњ ... DEҒAULT _ҒONT ... ... ... ... ... HORlZ_DIR ... оњға ... VERT DIR ... ... - коды 1 .. 10 аралыѓында алынатын б‰тін сан. Стандартты шрифт
‰шін µлшем коды 4-ке тењ етіп алынады, ол - 32 x 32 ... ... салу ... бетіне ақ т‰сті шеңбер, тік тµртб±рыш жғне т‰зу кесіндісін салу
керек. Олардыњ ... ... ... Тік ... ... ... ...
#include
#include
#include
main ()
{
int gd, gm, error; clrscr ();
detectgraph (&gd, &gm);
initgraph (&gd, &gm, "c:\\Borland\\bgi");
error=graphresult (); iғ (error != ... puts ... exit (-1); }
/* ... ... ақ т‰с ... ... (1); setcolor ... объектініњ ерекшеліктерін орнату */
setlinestyle (0, 0, 0);
/* ... ... ... ... ... терезесін орнату, оны тазалау */
setviewport (10, 10, getmaxX()-50, getmaxY() ... ... ... т‰стерді дайындап, фигуралар салу*/
setbkcolor (0); setcolor (15);
circle (70, 70, 50);
rectangle(180, 30, 250, 150);
line (280, 70, 400, 150);
settextstyle (0, 0, 0);
outtextxy (40, 140, ... (160, 160, ... (380, 160, ... (); ... (); return 0;
}
Ішіне 75%, 25% жазулары жазылѓан боялѓан дµњгелек ... мен ... ... ... сызу ... ... ()
{
int gd, gm; clrscr ();
initgraph (&gd, &gm, " "); setbkcolor (1);
setcolor (4); setғilestyle (1, ... (70, 70, ... ... y= ... (1, 2);
pieslice (100, 100, 0, 80, 90);
sector (250, 250, 0, 50, 200, ... (1, 0, ... (80, 60); outtext ( ... (80,60) ... бастап */
moveto (120, 110); outtext ("25%");
getch();
closegraph (); return (0);
}
Экранда кездейсоқ орналасқан 70-тей ж±лдыз жғне ... ... ... ай ... ... пайдаланып қ±рылѓан программа (2.9 — тақырыпта қ±рылѓан
программаны караңыз.
Оныњ ескерту бµлімінде жазылған екінші н±сқасы пайдаланылды):
#include
#include ... ... ... ... ... gd, gm, maxX, maxY, maxColors;
void main ()
{
initialize();
pixel();
getch(); ... ... ... &gm, " ... pixel()
{
int seed=100; int x, y, k, maxcolors, ... ... ... /* srand — unsigned rand ... ... ғor(k=0; k

Пән: Информатика
Жұмыс түрі: Реферат
Көлемі: 15 бет
Бұл жұмыстың бағасы: 400 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
Ақындар шығармалары52 бет
Қазақстан Республикасы, спорт және дене тәрбиесі5 бет
Ұлттық спорт түрлерінің ерекшелігі21 бет
Бәйге8 бет
Ұлыстың ұлы күні Наурыз6 бет
Әлима Қабылқызы8 бет
Аттың сыны мен бабы, жүйрік, бәйге аттардың түрлері18 бет
Жылқы мінезінің кейбір қырлары4 бет
Жылқы спорты мен ат ойындары22 бет
"Тест" бағдарламасын құру20 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь