May 3, 2020

10. Рекурсивті функциялар

Мысал. Диагональ сызу, жаңа терезелер ашу primer3.cpp

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <graphics.h>
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. Графикалық режiмде ESC пернесiн басқанша монитор экранының центрi (200, 200) нүктесiмен дәл келетін және радиусы 80 болатын дөңгелек нүктелерiн кездейсоқ күйде жоятын программа құрыңдар.

2. Шахмат тақтасының бейнесін салыңдар.

3. Экранда қарайтылған М әрпi пiшiндес фигура салатын және бағыттауыш тілсызық (, , , ) пернелер арқылы басқарылып, фигураның көлемiн + және – пернелерiнiң көмегiмен өзгертетін программа құрыңдар.

4. Циклдiк операторды пайдаланып 10 басқышы бар саты салыңдар, оның жұп және тақ нөмiрлi басқыштарының көлемi әртүрлi болатын программа құрыңдар.

3. Шеңберге iштей бесбұрышты жұлдыз салыңдар.

4. Қызыл экранға 0..9 аралығындағы 1000 кездейсоқ санды ақ түспен шығару қажет. Мұнан соң экран түсін жасылға бояп, сандарды сары түспен шығарыңдардар.

5. Экранды барлық (8) фон түстеріне 5 секунд кідіріспен бояп шығыңыздар. Экранның сол жақ жоғарғы бұрышына оның нөмірін жазып қою керек.

6. Қара экранға 1-ден 16-ға дейінгі сандарды 16 түрлі түске бояп шығару қажет. Әрбір сан бөлек жолда орналасатын болсын.

7. Алдын ала тазартылған экранды ақ түске бояп, жеті атаңыздың аттарын жеті түрлі түспен шығарыңдардар.

8. Қара экранға өзгеріп отыратын кездейсоқ түстер арқылы 200 «+» белгісін кездейсоқ түрде берілетін координаталық нүктелерге басып шығару керек.

9. Экранның жоғарғы жағына екі терезе салып, оның біріншісінің ішіне өз атыңызды, екіншісіне – фамилияңызды жазып қойыңыз. 10 секундтан кейін терезелер ішін тазартып, өз аты-жөніңіздің орнына досыңыздың аты мен фамилиясын орналастырыңыз.

10.Экранның сол жақ шетіне көк түсті терезе салып, оны оң жаққа қарай қадамын бірсимвол етіп жылжытып отыратын программа құру керек.