Құрастырылып жатқан бағдарламаның шарты

Компьютер эрасының басында программистер есептеу машинасының құлы болған етін.
Сол кездердегі программа құрушылар өздерінің командаларын тек қана бір тілде жазуға мәжбүр болды, яғни тек қана екілік код түрінде жазды, сонымен программистер нөл мен бірліктің ізбасары ретінде көрінді. Уақыт өте келе алгоритмдерде күрделіне түсті, сонымен бірге программалауға көп көңіл бөлу қажет болды. Осылайша көптеген қиындықтарды бастан кешіре келе өмірге Фортран, Бейсик, Паскаль сияқты өте әйгілі, жоғарғы сатылы тілдер пайда болды.
Психологтар адамның бір мезгілде ондаған бірліктің аумағымен бірдей ақпататты қабылдай алатынын бұрыннан көрсеткен. Сөйтіп, программалық қамтамассыз етуді дайындағанда программиске көрінетін компоненттерінің санын кішірейтуге талап қойылады. Адамзат бірнеше өте тиімді декомпозиция жолдарын, яғни үлкен есептерді шағын есептерге бөлуді ойлап шығарған . Модульдік тәсіл көптен бері қолданып келеді, онда үлкен программалар бөлек дербес модульдерге бөлінеді. Программалар көптен бері «Жоғарыдан төмен » және құрылымдық декомпозицияны қолдану арқылы жасалынады. Осы тәсілге негізделген әдістердің ортақ сипаты болады: олардың ішінде деректер және оларды өңдейтін код бір . бірінен бөлек тұрады.
1978 жылдары екі тілдің тиімді жақтарын біріктіруге арналған алғашқы қадамдар іске асты, нәтижесінде «Си класстармен» тілі пайда болды. . С++ жұмыс версиясы 1983 жылы жасалынды. Сол уақыттан бастап тілдің дамуы басталды және Си мен С++ стандарттарының жобасының бірнеше версиялары баспада жарияланды.
Бірнеше жылдар өткеннен кейін ол қазіргі біздің кең түрде пайдаланып жүрген С++ тілі болып қабылданды. Уақыт өткен сайын программаға деген сұраныстар арта түсіп, соның сарынында тілде өзгеріске ұшырайды. Қазір С++.тің бірнеше платформасы және әдістері бар. Солардың ішінде қолданыста жүрген Microsoft C++(Dos, Windows) және Borland C++ (Dos, Windows), Visual C++ (Windows), GNUC++(Linux).
С++ тілі программалауда обьектілерді міндетті түрде қолдануды қажет етпейді. Программалық қамтамассыз етуді шығаратын біраз формалар Си және С++ компиляторларды дайындап жасайды. Borland International фирмасының программалау жүйелері басқа фирмаларға қарағанда программаны дайындауда кешенді жолды қолданумен ерекшеленді.Ол дайындаушының интегралдау ортасын программалау жүйесіне енгізумен білінеді, ол жалпы басқарумен программалардың бастапқы мәндерін кіргізу үшін мәтіндік редакторын және отладталған құралдардың жиынтығын біріктіреді.
1989 жылы осы фирмамен С++ компиляторы енгізілген, DOS операциялық жүйеде жұмыс істейтін TurboC++ жүесін шығарады. 1992 жылдан бастап DOS және Windows үшін С++ компиляторлары бар Borland C++ жүйесі шығарылады. 1997 жылдан бастап С++ компиляторлары Borland C++ 5,0 версиясын қолданады, бұнда Windows үшін компилятор 1486 және Pentium
        
        КІРІСПЕ
Компьютер эрасының басында программистер есептеу машинасының құлы
болған етін.
Сол кездердегі программа ... ... ... тек қана ... ... мәжбүр болды, яғни тек қана екілік код түрінде жазды, ... нөл мен ... ... ... ... Уақыт өте келе
алгоритмдерде күрделіне түсті, сонымен бірге программалауға көп ... ... ... ... ... ... бастан кешіре келе өмірге
Фортран, Бейсик, Паскаль сияқты өте әйгілі, ... ... ... пайда
болды.
Психологтар адамның бір мезгілде ондаған бірліктің аумағымен бірдей
ақпататты қабылдай алатынын ... ... ... ... етуді дайындағанда программиске көрінетін компоненттерінің
санын кішірейтуге талап қойылады. Адамзат бірнеше өте тиімді ... яғни ... ... ... ... ... ойлап шығарған .
Модульдік тәсіл көптен бері қолданып келеді, онда үлкен программалар бөлек
дербес модульдерге ... ... ... бері ... төмен »
және құрылымдық декомпозицияны қолдану арқылы жасалынады. Осы ... ... ... сипаты болады: олардың ішінде деректер және
оларды өңдейтін код бір – бірінен бөлек тұрады.
1978 жылдары екі ... ... ... біріктіруге арналған алғашқы
қадамдар іске асты, нәтижесінде «Си ... тілі ... ... . ... ... 1983 жылы ... Сол ... бастап тілдің дамуы
басталды және Си мен С++ ... ... ... версиялары
баспада жарияланды.
Бірнеше жылдар өткеннен кейін ол қазіргі біздің кең түрде пайдаланып
жүрген С++ тілі ... ... ... ... ... ... ... арта түсіп, соның сарынында тілде өзгеріске ұшырайды. Қазір С++-
тің бірнеше платформасы және әдістері бар. ... ... ... ... C++(Dos, Windows) және Borland C++ (Dos, ... ... (Windows), GNUC++(Linux).
С++ тілі программалауда обьектілерді міндетті түрде қолдануды қажет
етпейді. Программалық қамтамассыз етуді шығаратын біраз ... Си ... ... ... ... Borland ... фирмасының
программалау жүйелері басқа фирмаларға қарағанда программаны ... ... ... ерекшеленді.Ол дайындаушының интегралдау ортасын
программалау жүйесіне ... ... ол ... ... бастапқы мәндерін кіргізу үшін мәтіндік редакторын және
отладталған құралдардың жиынтығын біріктіреді.
1989 жылы осы ... С++ ... ... DOS ... ... істейтін TurboC++ жүесін шығарады. 1992 жылдан бастап DOS ... үшін С++ ... бар Borland C++ ... ... ... ... С++ компиляторлары Borland C++ 5,0 версиясын қолданады,
бұнда Windows үшін ... 1486 және Pentium ... бар ... 16 ... және 32 ... варианттар дайындауға мүмкіндік жасады.
Программалау технологиясы – бұл программалауды дайындаудың әдістері
мен тәсілдерінің ... және осы ... мен ... ... осы С++ тіліндегі ең қызықтысы, әрі ең тартымдысы болып ... ... ... осы тақырыпты курстық жұмысымның негізі
ретінде таңдадым.
1 Есептің қойылымы
1.1 Құрастырылып жатқан бағдарламаның шарты
Бұл бағдарламада Крестик ... ... ... ... ... ... құралып, тышқанның көмегімен ойналады, тышқанды әр басқан кезде,
бірінші крестик Х, екінші басқан кезде нолик О шығу ... әр ... ... ойын аяқталғанда, бағдарламадан шығу керек.
1.2 С++ графикалық мүмкіндіктері
Қосымша сандық есептеудің ең ... ... ... ... ... ... істеу болып табылады.
Экран - үлкен шамадағы нүктелерден тұратын тік төрт бұрышты аймақ.
Графикалық режимде ... ... ... ... ... бар. Әр
түрлі түске боялған нүктелер жолақтарды, текстерді және өзге ... ... С ... экранға әр түрлі графиктік фигураларды (сызық,
шеңбер, тік төрт бұрыш) салу үшін ... ... ... ... ... ... ... біз мынаны есте сақтауымыз қажет:
Графикалық режимде экран өз алдына ... бір ... ... ... 16 ... ... боялуы мүмкін;
Координат нүктесі солдан оңға қарай және ... ... ... Сол жақ ... ... координат иемденеді, ал оң жақ
төменгісі-(639,479);
Программа ... ... ... ... ... ... ... үшін, графикалық режимді міндетті түрде инацилиздеу керек.
Программаның графикалық режимінің шаблоны мына түрде беріледі:
//графикалық программаның шаблоны
#include ... ... ... "c: ... ... gdriver = DETECT; // ... gmode; // ... errorcode; // қате коды
initgraph(sgdriver, Sgmode, PATHTODRIVER); errorcode = graphresult();
if (errorcode != grOk) // инициализация қатесі
// графикалық режим ... %d\n", ... ... ... ... ары ... программа инструкциясы
closegraph(); //Графикалық режимнің аяқталуы
TImageList
Графикалық бейнелердің ... ... және K ... байлансты арнайы жиында бізге керекті бір-біріне ұқсас
суреттерді интервалдық мәні 0-ден п-1 ... ... ... ... жиын үлкен биттік бейнені немесе ... салу ... ... көрсетуде қолданылады .
1.3 Компьютер экранындағы нүктелердің координаттары
Графикалық обьектілердің қалай жұмыс істейтіндігін ... үшін ... біз ... ... ... ... ... білуіміз
қажет. Экран екі өлшемді обьект болғандықтан, сол себепті ондағы нүктелер х
және у координатасымен беріледі.
Экрандағы нүктелер пиксель деп ... ... саны әр ... болуы
мүмкін. Ол монитордың сапасына байланысты болады. Координата бас нүктесі
экранның сол жақ ... ... ... Х ... ұзындығы -640
нүктеге, ал У осінің ұзындығы – 480 нүктеге тең. Х осі оңға қарай , У ... ... ... ... ... оның сол жақтағы жоғарғы
бұрышында орналасады – анықтау бойынша бұл ... (0,0). Х ... оңға ... ... , ... у ... – жоғарыдан төмен .
Компьютер экранында тек қана соңғы нүкте саны ғана ... ... ... саны ... ... ... ... болады.
Мысалы: егерде сіздің компьютеріңізде экрандық рұқсат 1024*768 болса, онда
сіздің экраныңыз 1024 нүкте ... және 768 ... ... ... ... ... өлшеміне байланысты , компьютер
берілген бір рұқсат ... ... ... ... ... жұмыс кезінде статикалық бейнелерді экранда ... ... ... ... есте ... және ... ... бойынша қажетті беттерді дайындау керек.Әр қилы бейнелерді формирлеп
және оларды ОП- да немесе файлда есте ... ... ... ғана ... болады. Осы бейнелерді экранда қозғалтуға, орнын ауыстыруға
болады. ... ... фаз ... есте сақтайтын болсақ, ... ... ... обьектілерден және олардың бөлшектерін қосқан
кезде иллюзия қозғалысын құруға болады. Сақтауда және бейнелерді ... ... ... ... ... ... ... режимде экран
бөліктерін сақтау кезінде қолданылады.
Мысалы: бейнені қозғалту үшін немесе фрагментті сақтау үшін.
Бейнені салу үшін мына ... ... ... болады:
1) нүкте арқылы: putpixel;
2) сызық арқылы: line,linerel, lineto, drawpoly;
3) тік бұрыш фигурасы :bar, bar3d, ... ... ... ... circle, ellipse, fillellipse, pieslice,
sector.
Бейнені сақтауға getimage, imagesize, putimage функциясы қолданылады.
Биттік бейнені ... үшін ... ... ... ... қажет, яғни
malloc функциясы көмегімен. ОП қажетті өлшемді анықтау, берілген тікбұрыш
экранындағы биттік ... ... үшін ... ... ... ... функциясының прототипі:
Unsigned far imagesize (int left, int top, int right, int ... top- тік ... сол жақ ... ... bottom- тік ... оң жақ ... ... координаты.
Getimage функциясы ОП-дағы биттік бейнені тік ... ... ... анықталған координаттармен, яғни олардың сол жақ жоғарғы ... оң жақ ... ... ... ... far gitimage (int left, int top, int right, int bottom. Void ... bitmap);
Putimage функциясы экранда берілген орында тік ... ... үшін ... ... ... far ... left, int top, Void far * bitmap, int ... мәнін қолданғанда экранда бейненің көшірмесі шығады;
ор=1 ескі бейне экран бетінен тазартылады.
Сурет – графика жиынын құрайды, ол кез-келген ... ... ... да мүмкін. Сонымен TPicture жиын классы ... ... ... , ... ... ... графикалық типтерді құрайды.
Суреттермен жұмыс істейтін болсаңыз сіз ... ... ... ... ... істейсіз.
Биттік бейнені көшіру: С++ -те бейнені ... ... төрт ... ... ... жете меңгеру үшін мен экрандық обьектілердің ... ... ... файлдан құралған. Осылардың кейбірі:
• ақпараттық рамкалар
• квадраттар
• айналасы
Экрандағы квадраттар және айналасы олардың центрі бойынша анықталады,
ал рамкалары- сол жақ жоғарғы ... ... ... үшін ... ... ... ... Оларды экранның кез –келген орнына жылжытуға болады.
Place(x,y) функциясы (х,у) ... ... ... ... ball . place ... ... ... бейнелеуге болады (обьектілер автоматты ... ). Show ... ... ... экран нүктесінде
бейнелейді (салады) .
Мысалы: ball. Show( ... ... ... ... тазалап тастауға болады. Erase( )функциясы
обьектіні жояды (тазалайды), оны ақ түске ... ball. Erase(); ... ... ... ... ... ... Олардың өлшемін өзгертуге болады. Үнсіз келісім бойынша экран
обьектісі 20 пиксельге тең. Оның ... бір ... екі ... ... ... ... ... үшін екі resize () және absize ()
функциясы қажет.
• Олардың түсін өзгертуге болады. Ол үшін color( ) ... ... ... ... ... бойынша экрандық обьектілер құрылуы бойынша
ішкі жағы ақ түспен боялған, ал контуры қара ... ... Бір ... ... ... осы түс ... ... ішкі жағын да , контурды
да солай бояуға ... ... ball. ... Обьектіні екі түспен
бояуға болады.Мысалы: ball. Color(2,4);.
Box экрандық обьектісі арқылы кейбір арнайы операцияларды ... ... ... ішіне хабар енгізуге болады. Мысалы: егер message
ауыспалы
Box типін жарияласақ , онда message. Say( ... ... ... “Here” хабарының пайда болуына себепкер болады. ... ... ... ... немесе жүзуші нүкте сандарын қолдануға болады.
Информациялы рамканың іс-қимылы (әрекеті) басқа экрандық ... ... бар, ... олар ... ... ... ... Тек
қана егерде біз Say( ) функциясын қолдансақ қана. Басқа сөзбен айтқанда ,
рамканы экранға шығарып жатпаймыз. ... ... ... ... ... жақ ... бұрышына қатынасады, центріне емес.
Ақпараттық рамкалар сонымен қатар экрандық обьектілер болып саналады,
оларға place(), show() және erase() ... ... ... ... жариялаған кезде үнсіз келісім бойынша, оның
айналасы 20 пикселге тең.
Содан ... оның ... ... ... Мысалы: келесі фрагментте
диаметрі 10 пиксель келтірілген:
Circle mycircle;
Mycircle. Resize(10);
Түс
Экран обьектілерін әр түрлі ... ... ... ... екі ... мүмкін – ішкі және контур түсі.
Мысалы: айналасы қара, ішкі жаға қызыл болуы мүмкін. Түстер келесі
сандармен ...... - ... – ашық ...... – ашық ... – күлгін
6 – сары
7 – қараша
TPaintBox
Бұл функция бізге графикада тек қана тік төрт ... ... ... ... ... ... қолданылса, онда программада сурет
салу жолдың жоғарғы жағында атқарылады, яғни OnPciinl көмегімен.Түс және
шрифт Color и Font ... ... ... ... ... ... салғыңыз
келсе, онда OnPaint формасын қолданған жөн.
Экран обьектілерін құрған кезде үнсіз мына жағдайлар орындалады:
♦ Ақпараттық рамкалар ... ... бірі ... ... оң
жағында орналасады;
♦ Барлық обьектілер ақ, қара контурмен құралады.
Координаттар пиксельде берілгеніне ... ... ... және ... ... ... санын қолдайды.
Келесі программалық кодттың фрагменті нүктені (50,50) орталықта құрып
және оны экранда көрсетеді.
#include“franca.h”
Void mainprog()
{
Int x,y;
X=50;
Y=50;
Circle mycircle;
Mycircle. Place(x,y);
Mycircle.show()
}
Программадағы ... ... ... обьектілер алдын – ала жариялануы
керек.
Кез-келген сурет ... яғни ... ... ауданынан басқа жерде
салуымыз, бізге ... ... қате ... ... ... ... соқтырады, яғни Object out of range.
♦ File(New ... ... ... жаңа ... құрамыз. Сонымен
жаңа конструктор формасын ашамыз. Обьект инспекторы оның ... ... ... ... ... ... ... (х, у) нүктелерінде жататын доға
сызады. аrc ... ... void аrc(int x, int y, int ... int ... нүкте, int радиус);
Bar функциясы тіктөртбұрышты сызады. bar функциясының жазылуы: bar
(int x1, int y1, int x2, int y2);. ... х1, у1 ... сол ... ... береді, ал х2, у2 параметерлері оң жақ төменгі бұрышты
береді. Тіктөртбұрыштың ішінің түсін және ... ... ... ... 3d ... кубты сызуға арналған. Bar 3d функциясының жазылуы:
Bar 3d (int x1, int y1, int x2, int y2, int ... int ... ... х1, у1 ... сол жақ жоғарғы бұрышты береді, ал х2, ... оң жақ ... ... ... Тереңдігі параметрі алдыңғы
және артқы қырлардың арақашықтығын береді. Жоғарғы қыры параметрі жоғарғы
қырдың ... сызу ... ... ... ... сызған кезде қолданылады. ... ... Circle (int x, int y, int r); ... (х, у) ... r
болатын шеңберді сызады.
Ellipse функциясы центрі (х, у) нүктесінде жататын эллипсті сызады.
Ellipse функциясының жазылуы: Ellipse (int x, int y, int ... ... ... нүкте, int радиус х, радиус у);
Getmaxx функциясы х координатасын оң жақ соңғы нүктеге оралтады. ... ... ... оң жақ ... ... ... Getmaxx,
getmaxy функцияларының жазылуы: int getmaxx (void);
int getmaxy (void);
Getx, gety функцияларының ... int getx (void); int ... ... ... Line(int x1, int y1, int x2, int y2); ... координатасы (x1, y1) нүктесінен (x2, y2) ... ... ... to функциясының жазылуы: Line to (int x, int y); Бұл ... ... ... (х, у) ... ... сызық сызады.Linerel
функциясының жазылуы:
Linerel (int dx, int dy);шығару көрсеткішінің ағымдағы нүктесінен
(xt, yt), (xt+dx, yt+dy) нүктесіне ... ... ... ... ... Moveto (int x, int y); Бұл ... ... ... ... ... ... немесе орын
ауыстырады.
Moverel функциясының жазылуы: Moverel (int dx, int dy); Бұл ... ... (dx, dy) ... ... Егер dх және ... мәні оң ... онда ... төмен (солға) ауысады, Егер
теріс болса, онда жоғары (оңға) ауысады.
Outtext xy (int x, int y, текст) функциясы (х, у) ... ... ... ... (int x, int y, ... ... берілген түспен (х, у)
нүктесін
салу үшін қажет.
Pieslice функциясының ... ... x, int y, int ... int соңғы бұрыш, int радиус); Бұл функция центрі (х, у) ... ... ... ... ... сызады.
Rectangle функциясының жазылуы: Rectangle (int x1, int y1, int ... y2); Бұл ... сол жақ ... ... ... (x1, y1)және де
оң жақ төменгі бұрышының координатасы (x2, y2) болатын тіктөртбұрыш сызуға
арналған функция.
Sector функциясының жазылуы: Sector (int x, int y, ... ... ... ... х, ... у); Эллипстің (радиус х = радиус у) немесе
дөңгелектің (радиус х ≠ ... у) ... ... ... (х, у)
нүктесі сектор центрінің координаталары. Егер бірінші бұрыш 0-ге, ал екінші
бұрыш 360-қа тең ... , онда ... ... ... ... ... Анимация құру
Анимация құрудың процессі өте қапайым болып келеді. Іс жүзінде ол
келесі этаптардың қайталануынан ... ... ... ... ... ... Белгілі уақыт аралығында объектінің экранда көрсетіліп тұруы;
3. Объектілерді жою.
Қозғалыс иллюзиясы. Бізге таныс фильмдер қалай істелінсе, ... ... ... ... Яғни ... кейін бірі оранласқан
бейнелерді аз уақыт аралығында экранға шығару. Бұндай жол аннимацияның әр
түрлі ... ... ... ... Аннимация жасаудың ең қарапайым
түрі келесіде құралады, яғни ... ... ... ... Бұл формулаларды физиканың көптеген есептерінде
кездестіруге болады. Оның ... ... ... көрсететін
теңдеулермен сипатталады.
Қиын қозғалыстарды жасау. Сізге қозғалыстағы дене және х = disr ... y =height (t) ... ... х және у ... ... ... сан ... горизонтальді арақашықтықты, ал У кординатасы
жерден бастап биіктігін береді. Әдетте бұл теңдеулер х және у-ті ... ... ... ... ... ... Горизонталь бойымен
бірқалыпты қозғалыс келесі формуламен жазылады: х = speedx * t + x0; y ... speedx ... ... ... ... ... ... дененің вертикаль бойындағы бастапқы орнын ... ... ... x0 дененнің горизонталь бойындағы бастапқы орнын көрсетеді.
Горизонталь және вертикаль бойларымен бірқалыпты ... ... ... ... бірқалыпты қозғалыс формуласы келесі түрде
беріледі: х = speedx * t + x0; у = speedу * t + у0; ... speedx ... ... және ... ... ... қозғалыс
жылдамдығы.
3.1 Функция графигін тұрғызу
Draw() функциясы
Іске аспайтын армандардың бірі, ол- алдыңғы ... ... ... одан ... ... ... және аяқталған х мәндері оған аргумент
түрінде енеді , ал ... ... ... ... ... draw(float x start6 float x end, int dotcolor =7)
{
Circle dot;
Dot.color(dotcolor);
Dot.absize(4);
For(x=xstart; x

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









Ұқсас жұмыстар
Тақырыб Бет саны
Дағдарыстың қазіргі кезеңдегі жалпы жағдайы Дағдарыстан шығудың Қазақстандық тәжірибесі және оны реттеу тетіктері12 бет
«Таза су өндіру»20 бет
Мұнай-газ саласын дамыту97 бет
Тілдің таңбалық, құрылымдық және жүйелілік сипаттары6 бет
Delphi 7 жүйесінің негізгі түсініктері мен принциптері17 бет
Delphi бағдарламалау ортасына сипаттама48 бет
Delphi бағдарламалау тілі13 бет
DELPHI ортасында мәлметтер қорымен жұмыс жасау24 бет
Delphi ортасында процедурала функцияларды қолдану23 бет
Delphi программалау ортасы жайлы24 бет


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


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

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

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

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

Email: info@stud.kz

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

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