183
Терезені тазалау функциясы
clearviewport ();
Тағы бір мысал келтірейік.
//Диагональ сызу, жаңа терезелер ашу primer3.cpp
#include
#include
#include
#include
void main()
{
int gd=DETECT,gm,x,y;
initgraph (&gd,&gm,"c:\\TC\\bgi");
//жасыл экранда қалыңдығы 3 пиксел диагональ сызу
setbkcolor(GREEN) ; setcolor(RED);
setlinestyle(SOLID_LINE,0,3);
x=getmaxx(); y=getmaxy();
printf(" xmax=%d ymax=%d ",x,y);
line(0,0,x,y); // бір перне басып,экран тазалау
getch();
cleardevice(); // терезе ашу, оны тазалау
setviewport(100,100,600,400,1);
clearviewport(); setcolor(GREEN);
rectangle(10,30,450,255);
circle(230,145,55);
settextstyle(DEFAULT_FONT,HORIZ_DIR,3);
//орыс әріптері тек DEFAULT_FONT қарпінде
setbkcolor(BLUE);
setcolor(WHITE);
//Мәтін терезенің сол жақ жоғарысында outtextxy(1,1,“Жаңа терезе");
getch();
closegraph();
}
Бақылау сұрақтары
1.
ІBM PC компьютерлері бейнемониторының қандай түрлері бар? Олардың
айырмашылығы неде?
2.
Графикалық режимнің атқаратын қызметі қандай? Оны программада қалай
іске қосады?
3.
Графикалық режим қандай функция арқылы орнатылады?
4.
Адаптерлердің
мынадай
типтерінің
CGA,
EGA,
VGA
бір-бірінен
айырмашылығы неде?
5.
Монитордың мәтіндік және графикалық режимдерінің мүмкіндіктері неге
әртүрлі болады?
185
Қалған ӛлшемдерiн
а арқылы ӛрнектеп табыңдар. Пирамиданың оң жақ бҥйiр
бетiн бояңдар.
10. Қарайтылған ―Е‖ әрпi тәрiздi фигура салатын программа қҧрыңдар. Әрiп
қҧрайтын нҥктелердiң абсциссалары мен ординаталары жиым элементтері ретiнде
берілген. Сурет салу ҥшiн циклге енгiзiлетiн тек қана бiр LINE операторын
пайдаланыңдар.
11. Экранда боялған шырша салатын программа жазыңдар. Сурет элементтерін
жиымда сақтап, ӛшiрiп және содан кейiн қайтадан экранға шығарыңдар.
12. Боялған 7 шыршаның суретiн салатын программа жазыңдар. Шыршалар бiр-бiрiне
ҧқсас, горизонталь бойында бiр қалыпта орналасады, шыршалардың биiктiгi
солдан оңға қарай сызықтық тҥрде ӛсуi керек. Шыршаларды бойлап Қызыл
Телпек оларды уақытша ―ҥсiп қалмасын‖ деп бір затпен жауып шығатын болсын.
13. Графикалық режiмде ESC пернесiн басқанша монитор экранына кездейсоқ кҥйде
бірсыпыра нҥктелер шығаратын программа қҧрыңдар.
14. Графикалық режiмде ESC пернесiн басқанша монитор экранында (100, 100) —
(300, 200) тiктӛртбҧрышының нҥктелерiн кездейсоқ кҥйде жоятын программа
қҧрыңдар.
15. Графикалық режiмде ESC пернесiн басқанша монитор экранының центрi (200,
200) нҥктесiмен дәл келетін және радиусы 80 болатын дӛңгелек нҥктелерiн
кездейсоқ кҥйде жоятын программа қҧрыңдар.
16. Шахмат тақтасының бейнесін салыңдар.
17.
Экранда қарайтылған М әрпi пiшiндес фигура салатын
және бағыттауыш тілсызық
(
,
,
,
) пернелер арқылы басқарылып, фигураның кӛлемiн + және – пер-
нелерiнiң кӛмегiмен ӛзгертетін программа қҧрыңдар.
18. Циклдiк операторды пайдаланып 10 басқышы бар саты салыңдар, оның жҧп және
тақ нӛмiрлi басқыштарының кӛлемi әртҥрлi болатын программа қҧрыңдар.
19. Шеңберге iштей бесбҧрышты жҧлдыз салыңдар.
20. Қызыл экранға 0..9 аралығындағы 1000 кездейсоқ санды ақ тҥспен шығару қажет.
Мҧнан соң экран тҥсін
жасылға бояп, сандарды сары тҥспен шығарыңдардар.
21. Экранды барлық (8) фон тҥстеріне 5 секунд кідіріспен бояп шығыңыздар.
Экранның сол жақ жоғарғы бҧрышына оның нӛмірін жазып қою керек.
22. Қара экранға 1-ден 16-ға дейінгі сандарды 16 тҥрлі тҥске бояп шығару қажет.
Әрбір сан бӛлек жолда орналасатын болсын.
23. Алдын ала тазартылған экранды ақ тҥске бояп, жеті атаңыздың аттарын жеті тҥрлі
тҥспен шығарыңдардар.
24. Қара экранға ӛзгеріп отыратын кездейсоқ тҥстер арқылы 200 ―+‖ белгісін
кездейсоқ тҥрде берілетін координаталық нҥктелерге басып шығару керек.
25. Экранның жоғарғы
жағына екі терезе салып, оның біріншісінің ішіне ӛз атыңызды,
екіншісіне – фамилияңызды жазып қойыңыз. 10 секундтан кейін терезелер ішін
тазартып, ӛз аты-жӛніңіздің орнына досыңыздың аты мен фамилиясын
орналастырыңыз.
26. Экранның сол жақ шетіне кӛк тҥсті терезе салып, оны оң жаққа қарай қадамын бір
символ етіп жылжытып отыратын программа қҧру керек.
27. Экранға біртіндеп ҥлкейе бастайтын шағын қызыл терезе салу қажет. Ҥлкею
қадамын
Х координатасы ҥшін 3, ал
У координатасы ҥшін 1 етіп алыңыздар.