
- •Программалау тілдері
- •2.2. Си тілінің қарапайым элементтері
- •2.2.1 Пайдаланылатын символдар си тілінің символдарын бес топқа бөлуге болады.
- •2.2.2 Тілдің қарапайым объектілері
- •Бақылау сұрақтары
- •2.3. Си тіліндегі мәліметтер типтері және енгізу, шығару функциялары
- •2.4. Бүтін сан түріндегі мәліметтерді сипаттау
- •2.4.2. Char типі
- •2.4.3. Float және double жылжымалы нүктелі нақты сандар типтері
- •2.5 Символдық тіркестер (жолдар, қатарлар)
- •2.6. Printf және scanf функциялары
- •Бақылау сұрақтары
- •3. Си тілінде қолданылатын негізгі операторлар
- •3.1. Меншіктеу операторы
- •3.2. Типтерді түрлендіру
- •Int I; float fl;
- •3.3. Программа жұмысын басқару операторлары
- •3.4. Шартты оператор
- •If (шарт)
- •If (шарт)
- •Int r; /* gil-ды 4-ке бөлгендегі қалдық */
- •Int ball;
- •3.4.1 Шартты операция
- •3.5. Switch көп нұсқалы таңдау операторы
- •Бақылау сұрақтары
- •4. Цикл операторлары
- •4.1. For цикл операторы
- •4.2. While операторы
- •4 .3. Do ... While цикл операторы
- •5. Си тілінде массивтерді пайдалану
- •Int index;
- •Void main()
- •Жиымды өңдеу есептерінің түрлері (кластары)
- •Void main()
- •Void main()
- •Int b[10]; //қосымша массив
- •Жиымды сұрыптау (сорттау, реттеу)
- •Жай таңдау жолымен сұрыптау
- •Жай енгізу (кірістіру) тәсілімен сұрыптау
- •Жай алмастыру арқылы сұрыптау
- •Int *iptr;
- •Функциялар арасында байланыс жасау үшін нұсқауыштарды пайдалану
- •Void change (int *u, int *V)
- •Int temp;
- •Int xmin,X[10];
- •6. Екі өлшемді жиымдар
- •Void line()
- •Void line()
- •Екінші типтегі есептер алгоритмдері
- •Void line()
- •Int I,j,jmin,min;
- •Int amin;
- •Бақылау сұрақтары
- •7. Сөз тіркестерін өңдеу
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Сөз тіркестерімен жұмыс істейтін функциялар
- •Көмекші программа. Функцияны пайдалану
- •Int mini(int X, int y)
- •Int maxi(int X, int y)
- •Void lin(char a)
- •Void z1(int *X, int *y)
- •Void z1(int*, int*);
- •Int rus (unsigned char r)
- •Int min_index(int sp[], int ras)
- •Void init(int mas[],int ras);//функцияны сипаттау
- •Жоғарыда қарастырырылған функцияда екі өлшемді жиымның бағаналарының саны тұрақты және ол ауқымды ko айнымалысымен анықталған.
- •Void main(void)
- •Index(s1,s2)
- •Void main(void)
- •Int main()
- •Бақылау сұрақтары
- •Құрылымдарды пайдалану мысалы:
- •Void Vvod(int nom,struct Spisok *sved)
- •Void main(void)
- •Vvod(-1,sved);
- •Int I; clrscr();
- •Void main(void)
- •Int I,j,k,priznak;
- •If(!priznak) break;
- •If(!priznak)break; }
- •Бақылау сұрақтары
- •Void main ()
- •Int pages;
- •Void main()
- •Бақылау сұрақтары
- •11. Графикалық режимде жұмыс істеу
- •Void main ( )
- •Int gmode; //режим аты
- •Int errorcode; // қате коды
- •11.1. Графикалық режим орнату, одан шығу, мәтін жазу, сызық салу функциялары
- •Initgraph(&Driver,&Mode,Path);
- •Initgraph(&Driver,&Mode," ");
- •Экранға мәтін шығару функциясы
- •Экрандағы көрсетілген орынға мәтін шығару функциясы
- •1) Line (x1,y1,x2,y2);
- •2) Lineto (X,y);
- •11.2. Сызық стильдерін беру
- •Int gmode;
- •11.3. Тұйық сызықтар салу
- •Көпбұрыш салу функциясы
- •Int gmode;
- •Іші боялған контурлы эллипс салу функциясы
- •Pieslice(X,y,БұрышБасы,БұрышСоңы,Радиус);
- •Void main ()
- •Void main ( )
- •Void main ()
Бақылау сұрақтары
Файл дегеніміз не? Ол не үшін пайдаланылады?
Файл қайда орналасады және қалай белгіленеді?
Файл ашу функциясы қалай жазылады?
Файл атын программада қалай анықтаймыз?
Файлдың қолданылу режимдері қалай көрсетіледі?
Файлға мәлімет жазу/оқу функциялары.
Файлға жаңа элемент қалай қосылады?
Мәлімет оқылған файлға мәлімет жазуға бола ма?
Файлдан ақпарат оқу үшін не істеу керек?
Файлға ақпарат жазу үшін не істеу керек?
Символдар мен сөз тіркестерін файлға жазу үшін не істеу керек?
Құрылымдарды пайдаланатын файлдар қандай функцияларды пайдаланады?
ДӘРІС№15
11. Графикалық режимде жұмыс істеу
Си тілінде растрлық графика жұмыс істейді, оның тақырыптық файлы graph.h. График нүктелерден – пиксельдерден тұрады. Пиксель – экранның адрестелетін ең кіші элементі. Алдымен графика шығара алатын бейнережимді іске қосу керек. Мұнда экранның пиксельмен берілген мөлшері және түстер саны беріледі.
Графикада үш координаталық жүйе: абсолюттік, салыстырмалы және масштабталған жүйе қолданылады. Тіке және көлденең өстер бойынша пиксельдер саны экран типіне байланысты болады.
Абсолюттік координатада координаталар басы – (0;0) нүктесі сол жақ жоғарғы бұрышта болып саналады, х координатасы солдан оңға қарай, у координатасы жоғарыдан төмен қарай өседі.
Салыстырмалы режимде координаталар басы экранның кез келген нүктесіне ауыстырыла алады.
Масштабталатын режимде экран бетінде масштабталған координаталар беруге болады, онда х пен у өстері бойынша минимум және максимум мәндер енгізіп, жұмыс істеуге мүмкіндік бар.
Жалпы абсолюттік графикалық режимде
әрбір
пиксель берілген 16 түстің біріне боялады;
(0,0) – экранның сол жақ жоғарғы бұрышы координатасы;
(639,479) – оң жақ төменгі бұрышы координатасы болады;
әр түрлі фигураларды экранға шығару үшін алдын ала графикалық режимді іске қосып алу керек.
Жалпы дисплей адаптерлері
графикалық режимде 200, 350,
600 нүктелерден тұратын
экран жолдарының әрқайсысында 640, 720, 800 нүктелер тізбегін бейнелей алады. Мұндағы нүкте деп отырғанымыз –
көлемі 0,8х1 мм2 шамасында болып келген (CGA) кішкентай тіктөрбұрыш, яғни пиксель.
Әрбір нүктенің координаталары екі бүтін санмен (Х, У) анықталады. Дисплей экранына график салу үшін оның нүктелерінің координаталарын көрсету қажет. Координаталар басы (0,0) болып экранның сол жақ жоғарғы бұрышы есептеледі. Х координаталары (бағаналар немесе позициялар нөмірлері) солдан оңға қарай, ал У мәндері (жолдар немесе қатарлар) жоғарыдан төмен қарай өсіп отырады. Мысалы, VGA адапте-рінің экран бұрыштарының координаталарын Х=0..799, Y=0..599 аралығында көрсету қажет. Экранда Х өсі солдан оңға қарай, Y өсі жоғарыдан төмен қарай бағытталған, ал оның шеткі нүктелерінің координаталары суретте көрсетілген.
Олардың ең жоғарғы мәндері пайдаланылған экран адаптеріне тәуелді болады, яғни (0,0)..(320х200), (0,0)..(640х480), (0,0)..(800х600) аралықтарында және т.б. болуы мүмкін. Сонымен, графикалық режимде экрандағы кез келген объект көрініп тұрған нүктелер тобынан тұрады. Мәтіндік режимнен графикалық режимге көшкенде экран тазартылады. Графикалық режимде экраннан курсор көрінбейді. Дисплей экранының бетіне (кейін қағазға) нүкте, түзу немесе қисық сызық, шеңбер, эллипс және кез келген тұйық сызық сызып шығаруға болады. Сонымен қатар тұйық сызықтардың ішін әр түрлі түске бояп қою мүмкіндіктері де бар. Сызықтарды жылжыту, айналдыру және басқа орынға көшіру арқылы көрнекі бейнелер мен мультфильмдер жасауға болады.
График тұрғызу үшін оны шығару немесе бастау нүктесін көрсету қажет. Мәтіндік режимде ол курсор позициясы болып саналады, ал графикалық режимде көрініп тұратын курсор жоқ, бірақ экранда көрінбейтін курсор тәрізді сілтеме белгі CP (current poіnter) бар. Негізінде оны да курсор деп қабылдауға болады.
Графикалық режимдегі жұмыстарды атқаратын Турбо Си нұсқасында бірсыпыра графикалық функциялар бар, енді біз солардың негізгілеріне тоқталып өтеміз.
Графикалық режимде жұмыс істеу былай басталады:
#include <stdio.h>
#include <conio.h>
#include <graphics.h>