Кіріс және шығыс деректерді логикалық түрде ұсыну

Мазмұны

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

1 Есептің қойылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...6
1.1 Есепті шешу әдісіне қысқаша сипаттама ... ... ... ... ... ... ... ... ... ... ... ... ... ... 6
1.2 Кіріс және шығыс деректерді логикалық түрде ұсыну ... ... ... ... ... ... ... ... 13

2 Бағдарламаның құрылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 18
2.1 Бағдарламалық модульдерге спецификация және бағдарлама
функциясының алгоритмі ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .18
2.2 INTER.ASM, OBR.CPP, PLAY.CPP модульдері ... ... ... ... ... ... ... ... ... ...18

3 Алгоритм функциялары ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .19
3.1 main, game, vvod, image, cikl функциялары ... ... ... ... ... ... ... ... ... ... ... ... 19
3.2 OBR(), INTER(), msint функциялары. Бағдарламаны өңдеу ... ... ... ... ... ...19

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

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

Қосымша 1 ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..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
        
        Мазмұны
Кіріспе.....................................................................
.................................................5
1 Есептің
қойылымы....................................................................
...........................6
1.1 Есепті шешу әдісіне қысқаша
сипаттама........................................................6
1.2 Кіріс және шығыс деректерді логикалық түрде
ұсыну................................13
2 Бағдарламаның
құрылымы....................................................................
............18
2.1 Бағдарламалық модульдерге спецификация және бағдарлама
функциясының
алгоритмі...................................................................
..................18
2.2 ... OBR.CPP, ... ... main, game, vvod, image, ... OBR(), INTER(), msint ... Бағдарламаны
өңдеу.......................19
Қорытынды...................................................................
.........................................20
Қолданылған әдебиеттер
тізімі......................................................................
......21
Қосымша
1...........................................................................
...................................22
Кіріспе
Өткен ғасырдың орта кездерінде есептеуіш техника саласында ... ... ... Бейсик, Паскаль және т.б. көптеген жоғары
деңгейлі программалау тілдерінің ... ... ... ... ол тілдердің кейбірімен бастапкы түрде ... да ... ... жылы AT&T ... ... ... жаңа C (Си) программалау
тілін дайындап шыкты. Ол — құрылымдық және ... ... ... ... жоғары деңгейлі тіл.
Тілге жылдам орындалатын, жеке биттермен операция жасайтын операторлар
да ... Олар ... ... ... магниттік дискілерде
жинақтауыштарды және т.б. аппараттық ... ... ... Ал, ... ... жеке типті компьютерлердің аппараттық
кұралдарына қол ... ... ... ... ... ... ... ассамблер тілі ғана болатын.
Си тілі бірте-бірте дамытылып, қазіргі кезде пайдаланылып келе жаткан,
1983 жылы дүние жүзі ... ... ... ANSI C нұсқасы да жарыққа
шықты (ANSI - стандарттардың Америкалық ұлттық ... ANSI C ... ... ... ... ... да бар. ... де жоқ емес, ол жүйелік және қолданбалы программаларды дайындауға
бейім, ... ... ... ... қол ... ... етпейді және құрьшатын класты баска кластың ішкі класы (мұрагер)
ретінде жариялау мүмкін емес. Мұндай ... - ... ... ... енетін ерекшеліктерді ескеріп, Borland International Inc
фирмасы C тілінің дамытылған жаңа Turbo C ... Си) ... ... басында жарыққа шығарды. Кейіннен Turbo C++ 2.0, Turbo C++ ... ... ... Borland C++ ... да ... ... Borland ... Borland C++ 3.0, Borland C++ 3.1, Borland C++ 4.0 және т.б.
C++ тілі де процедуралық тіл, бірақ онда ОБП ... ... ... ... ОБП ... қолданылатын негізгі ұйымдар: класс,
объект, оқиға, қасиеттер мен әдістер. Бұл ұғымдар:
объект - құрылымы класс типі арқылы ... ... - ... ... ... ... - ... сипаттамалары
(параметрлері); әдіс - класс элементтерін іздейтін команда не процедура,
функция.
класс - пайдаланушы ... тип. Тип ... мен ... ... ... ... осы ... жеке даналары дайындалады. ОБП-да
класс үшін мұрагерлік, ... және ... ... ...... ... класс типінің туынды
иерархиялық класта ... ... ... ЖӘНЕ ... ... ... C және C++ тілдерінде графикалық режімге µтіп, т‰рлі фигуралық
кескіндерді салуѓа ... ... ... бар. Олар graphics.h
файлында сақталып қойылған. Графикалық драйверлер (басқарушы программалар)
BGI (Borland Graphics Interғase) кеңейтілуі бар ... ... ... арнайы initgraph() функциясы арқылы орындалады.
Графикалық режім EGA, VGA, SVGA адаптерлерінде т‰рлі-т‰рлі. Мысалы,
EGA адаптері 640 X 480 ... ... ... ... ... ... функциялары:
1. Драйвер мен графикалық режімді тандау: detectgraph (&gd, ... ... ... жғне ... ... инициалдау:
initgraph (&gd, &gm, "BGI файлына жол");
М±ндаѓы gd - қажетті ... ... ... gm - ... режім нµмірі, gm=GraphMode. (gd, gm айнымалылары программада int
типі арқылы сипатталады. Программада драйверді тандау операторыныњ ... = DETECT; ... ... да ... Мысалы, (30)-программаны
карањыз. DETECT — автоматты т‰рде анықталатын графикалық драйвер ... ... ... ... ... ... б±л ... жадтан 4кб
кµлемді графикалық буфер бµліп қояды.
Егер BGI файлдары ... ... бар ... программада ғр жолы
функцияны толық жазбай, оныњ ‰шінші параметрініњ орнына бос орын (" ... ... кету ... (&gd, &gm, " ... Қате ... ... ... graphresult ();
Егер программа д±рыс қосылса, онда қате коды = 0 деп ... ... grOK=0), ал, ... ... ... - 0-ден ... б‰тін
сандар.
Сонымен, графиктік режімді іске қосу ‰шін программа басын алѓашқы
кезде мынадай т‰рде жазу ... ... #include ... main ... м±ны кµп жаѓдайда // енгізбеуге де болады
{
int gd, gm, error;
defectgraph (&gd, &gm); ... (&gd, &gm, ... puts ... катесі"); exit (1); }
Ескерту. Компьютерде режімніњ д±рыс істейтініне сенімді болсањыз,
графиктік режімніњ бар-жоғын ... ( error, if ) ... ... ... орнату
Graphics файлында анықталѓан т‰стік палитралар (барлығы 16, ... тек ... ... аты |Код ... аты ... |0 ... ... |1 |кµк ... |2 ... ... |3 |с±р ... |4 ... ... |5 ... ... ... |6 ... ... GRAY |7 ... ... ... GREEN |10 ... кµк ... RED |12 ... ... |
|YELLOW |14 ... ... |15 |ақ ... ... ... функциясы: setbkcolor (т‰с);
Tүc ‰шін оныњ латынша атын не кодын ... ... ... мен ... мғтін т‰сін орнату:
setcolor (т‰с);
Геометриялық объектініњ µзгешілігі мен қалыњдыѓын орнату:
setlinestyle (т‰р, ‰лгі, қалындық);
М±ндаѓы т‰р кодтары:
0 SOLID_LINE ... ... ... ... ... ... мен ... PASHED_LINE (пунктирлермен)
4 USERBIT_LINE (пайдаланушы анықтайтын);
Қалыңдық:
1 NORM_WIDTH (бір пиксельдік сызық)
3 THICK_WIDTH (‰ш пиксельдік сызық)
‡лгі ... т‰р коды 4-ке етіп ... ғана ... ... ... 0 коды ... облысты бояу ‰шін арналѓан функциялар:
a1) setfillstyle (бояу типі, т‰с);
М±ндаѓы бояу ... ... ... мен ... ... фон ... бояу
1 SOLID_ҒILL кµрсетілген т‰спен т±тас толтыру
3 LTSLASH_ҒILL ... ... ... floodfill(x, y, т‰с);
(x, y) — т±йық облыс ішінде жататын н‰кте, т‰с ... ... ... ... т‰с ... ... кµбірек пайдаланылады).
Экранды тазалау (орнатылѓан параметрлерді алып тастап, ... ... ... ... графикалық режімде н‰ктелер координаттарыныњ ең ... ... ... (); - ... ... getmaxy (); - тігі бойынша.
Графикалық экранды тазалау: clearviewport ():
Ағымдық координаттарды анықтау: getx(); gety();
Графикалық режімде жадты тазалап, алѓашқы мғтіндік режімге µту:
closegraph ... ... ... ... ашу:
setviewport (xl, yl, x2, y2, clip);
-(xl, yl), (x2, y2) - терезеніњ сғйкес сол жақ жоѓарѓы тµбесі мен ... ... ... координаттары;
clip - кесіп тастау коды. Егер clip=l, онда терезеге сыймайтын кескін
элементтері ... ... егер clip=0 ... терезе шекаралары
ескерілмейді.
Геометриялық объектілерді сызу ... (xl, yl), (x2, y2) ... ... ... ... (xl, yl, x2, y2)
ал, lineto (x, y) - ... ... ... (x, y) ... ... кесіндісін сызады.
Сғйкес сол жақ жоѓарѓы жғне оњ жақ тµменгі координаттары (xl, ... y2) ... тік ... (xl, yl, x2, y2);
Орталық н‰ктесі (x, y) шењбер:
circle (x, y, радиус);
. Шењбер ... ... (x, y, ... ... ... ... градустық µлшеммен беріледі жғне сағат тіліне қарсы
есептеледі.
М±ндаѓы ... ... ... салу пиксельдік н‰ктелер бойынша
орындалады.
Жартылай µстері rx, rу болатын боялѓан ... ... y) — ... ... (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 (бір) - т‰рлі сызықтармен қ±растыру кезінде шыѓарып тастау
операциясын ... Оныњ ... бір ... ... орнына ғкелінген
кезде ол кµрінбей ("µшіп") ... одан шығу ... ол ... ... ... ... ±йымдастыру ‰шін пайдалануға болады.
Қозғалуды ±йымдастыратын басқа функциялар да бар:
getimage(), imagesize() жғне putimage(). getimage() функциясы арқылы
бейне экранныњ берілген бµлігіне ... да, ... ... жад ... ... ... функциясы шақырылады. Одан әрі putimage()
функциясы арқылы оны ... ... ... ... ... ... (x, y, т‰с);
М±ндаѓы x, y — терезеніњ ... ... ... ... н‰кте.
Терезеде мғтін орнату:
outtextxy (x, y, mn);
М±ндаѓы x, y - мғтін шыѓарылатын бастапқы ... mn — ... ... ... ... Ол тырнақшалар ішінде жазылады. Режімде
жолды ағымдық позициядан ... ... ... да ... ... ... мғтінді т‰рлі т‰рде шыѓаруға болады.
settextstyle (шрифт, бағыт, µлшем);
шрифт ... ... ... DEҒAULT _ҒONT ... SANS_SERIҒ_ҒONT тікесінен ... ... ... ... оњға қарай
1 VERT DIR тµменнен жоғарыға
µлшем - коды 1 .. 10 ... ... ... сан. Стандартты шрифт
‰шін µлшем коды 4-ке тењ етіп алынады, ол - 32 x 32 ... ... салу ... бетіне ақ т‰сті шеңбер, тік тµртб±рыш жғне т‰зу кесіндісін салу
керек. Олардыњ астыңғы ... ... Тік ... ... сµздері
жазылып қойылсын.
#include
#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 (15);
/* объектініњ ерекшеліктерін орнату */
setlinestyle (0, 0, ... ... ... ... ... ... ... орнату, оны тазалау */
setviewport (10, 10, getmaxX()-50, getmaxY() -50,
clearviewport ();
/* ... ... ... ... ... (0); setcolor ... (70, 70, ... 30, 250, 150);
line (280, 70, 400, 150);
settextstyle (0, 0, 0);
outtextxy (40, 140, "Шеңбер");
outtextxy (160, 160, "Тіктµртб±рыш");
outtextxy (380, 160, ... (); ... (); return ... 75%, 25% ... ... ... дµњгелек сектор мен контуры
бар эллипс секторын сызу керек.
Программа ‰зіндісі:
main ()
{
int gd, gm; clrscr ();
initgraph (&gd, &gm, " "); ... ... (4); ... (1, ... (70, 70, 50);
x= getmaxx()/2; y= getmaxy()/2;
setfillstyle (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 ... ... ... 70-тей ж±лдыз жғне олардыњ ... ... ай ... ... ... қ±рылѓан программа (2.9 — тақырыпта қ±рылѓан
программаны караңыз.
Оныњ ескерту бµлімінде жазылған ... ... ... ... ... ... ... initialize();
void pixel();
int gd, gm, maxX, maxY, maxColors;
void main ()
{
initialize();
pixel();
getch(); closegraph();
}
void initialize()
{ gd=DETECT;
initgraph(&gd, &gm, " ");
}
void pixel()
{
int seed=100; int x, y, k, ... ... ... ... /* srand — unsigned rand ... ... ... k

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









Ұқсас жұмыстар
Тақырыб Бет саны
Сұлулық салонының жұмысын автоматтандыру34 бет
Адамдарды тануға ұсынуды жүргізуді тактикалық - криминалистикалық қамтамасыз ету55 бет
Акциялар және оның түрлері7 бет
Білімді ұсынудың фреймдік моделі15 бет
Геометриялық интерпретация17 бет
Тану үшiн ұсынудың тактикасы42 бет
Төтенше жағдай кезіндегі білікті медициналық көмек ұйымдастыру5 бет
Қазақстандағы шағын және орта бизнес18 бет
Ұсыныс хат8 бет
C++ Builder бағдарламалау тілінде логикалық желіде виртуалдық қарым қатынас жасау10 бет


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


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

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

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

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

Email: info@stud.kz

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

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