1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Bài giảng tin học đại cương C++ (chương 6)

23 273 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 23
Dung lượng 358,64 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Sau đây là ch ng trình minh ho Ch ng trình 6 5 #include #include... Sauđây là ch ng trình tô vòng tròn... void bar int top, int left, int right, int bottom void far bar3dint left, int t

Trang 2

cputs( Ket thuc );

getche();

}

Trong ch ng trình ta có hàm:

window(x1,y1,x2,y2) dùng đ n đ nh m t c a s có to đ góc trêntrái là x1,y1 và góc d i ph i là x2,y2

textcolor(RED) đ n đ nh màu ch là đ

textbackcolor(GREEN) đ n đ nh màu n n văn b n là xanh lá câygotoxy(x,y)đ di chuy n con nháy v to đ x,y

cputs(string) đ đ t chu i string trong m t c a s Khi g p biên c a

c a s chu i s đ c xu ng dòng Màu trong ch đ đ ho đ c quy đ nh

n i này sang n i khác ta dùng hàm movetext() Ta xét ch ng trình sau t o

ra m t c a s , đi n đ y c a s b ng m t đo n văn b n và d i c a s sang vtrí khác trên màn hình

Ch ng trình 6 2

#include <conio.h>

Trang 3

Hàm movetext(x1,y1,x2,y2,x0,y0) dùng di chuy n c a s x1, y1, x2, y2

đ n v trí m i mà to đ góc trên trái bây gi là x0, y0

3 L u tr và ph c h i màn hình văn b n: Ta có th l u tr m t vùng văn

b n hình ch nh t trên màn hình và sau đó ph c h i l i t i m t v trí nào đótrên màn hình Nh v y ta có th t o m t c a s nh trên đ u văn b n hi nhành Ta xét ví d sau

Trang 4

• void clreol(void) : xoá đ n cu i dòng

• int cprintf(const char *format)đ a kí t ra m t c a s

• void textattr(int newattr) nđ nh màu cùng lúc cho văn b n và n n

• void gettextinfo(struct text_info *r): đ c các thông tin nh ki u mànhình, v trí và kích th c c a s , màu n n và văn b n ,v trí connháy

• void normvideo(void) tr l iđ sáng cũ

• void insline(void): chèn thêm m t dòng

• void delline(void) xoá m t dòng

• void hightvideo(void) tăng đ sáng

Trang 5

khai báo trong graphics.h v i cú pháp:

void far initgraph(int *graphdrive , int *graphmode , char *path);

v i các bi n

graphdrive ch a trình đi u khi n đ ho

graphmode ki u đ ho

path đ ng d n đ n th m c ch a các drive đ ho Trong ph n này

ta ph i dùng hai d u \\ vì d u \ đã đ c dùng cho kí t escape

2 L i đ ho : Đ bi t l i đ ho ta dùng hàm int far graphresult(void) Sau

khi bi t mã l i ta chuy n nó sang cho hàm grapherrormsg() Hàm này tr vcon tr ch đén l i Sau đây là ch ng trình minh ho

Ch ng trình 6 5

#include <graphics.h>

#include <conio.h>

Trang 6

3 Đ ng th ng và màu s c: Đ thi t l p d ng, m u và b dày c a đ ng

th ng ta dùng hàm void far setlinestyle(int style,nt pattern, int thickness).Tham bi n style có th là:

Trang 7

1 NORM_WIDTH dãy 1đi m nh

2 THICK_WIDTH dãy 3đi m nh

Đ xác đ nh màu cho đ ng th ng ta dùng hàm void setcolor(int color Ta

Trang 8

4 Ellipse và đa giác: Đ v ellipse ta dùng hàm

void far ellipse(int x, int y , int gd, int gc, int xr, int yr)

x,y to đ tâm ellipse

void far drawpoly(int number, int far *addrlist)

number s đ nh đa giác c ng thêm 1

addrlist m ng ch a to đ các đ nh , to đ đi m đ u và cu i ph itrùng nhau

Trang 9

5 Tô màu và m u tô: Turbo C có nhi u hàm đ tô màu Hàm thông d ng

nh t đ tô bên trong m t đa giác và m u tô hi n hành là void far fillpoly(intnumber, int far * addlist) Màu và m u tô đ c thi t l p nh hàm void farsetfillstyle(int pattern, int color) Bi n pattern có th nh n m t trong các trsau:

Trang 10

đi m b t đ u tô Hàm s tô cho đ n khi g p đ ng biên có màu xác đ nh

b ng bi n border Có th tô bên trong hay ngoài hình v tu đi m b t đ u

N u tô m t vùng không kín thì màu tô s lan ra trong l n ngoài v t th Sauđây là ch ng trình tô vòng tròn

Màu dùng đ tô có th gi ng hay khác v i màu dùng cho đ ng vi n

c a vùng Tuy v y màu dùng cho tham bi n border c a floodfill() ph i

gi ng màu v v t th (trong ch ng trình là màu RED)

Trang 11

6 Đ th : Turbo C có nhi u hàm giúp đ n gi n hoá vi c v đ th các hàm là

bar(), bar3d() và pieslice()

void bar (int top, int left, int right, int bottom)

void far bar3d(int left, int top, int right, int right, int bottom, int depth, int topflag)

topflag = 0 có n p, topflag = 1 không có n p

void far pieslice(int x, int y, int startangle, int endangle, int r)

Trang 13

7 Viewport: Viewport là m t vùng nhì th y đ c c a màn hình Khi m i

kh i đ ng viewport là toàn b màn hình Đ xác đ nh m t viewport ta dùnghàm setviewport() có cú pháp:

void far setviewport(int left, int top, int right, int bot, int clip)

Tham bi n clip cho bi t hình v có hi n ra ngoài viewport hay không N uclip <>0 thì không th y đ c hình bên ngoài viewport Đ xoá m t viewport

ta dùng hàm void far clearviewport(void)

có to đ (x, y)

Trang 14

9 Đi m nh: Đ đ t m t đi m nh lên màn hình ta dùng hàm :

void far putpixel(int x, in y, int color)

Trang 15

Đ xác đ nh màu c a m t đi m ta dùng hàm int getpixel(int x, int y)

10 nh bit và làm nh chuy n đ ng: Đ c t gi m t hình nh vào b nh

unsigned far imagesize(int left, int top, int right, int bot)

Giá tr c a hàm đ c truy n cho hàm malloc() đ c p phát b nh Con tr

do hàm malloc() tr v đ c truy n cho hàm putimage đ khôi ph c l ihìnhđã c t Cú pháp c a putimage() là:

void far putimage(int left, int top, void far * addbuf, int putop)

left, top là góc trên trái c a vùng s đ a nh ra

Trang 17

void far settextstyle(int font, int direction, int charsize)

Các fonts ch a trong các t p tin trong b ng sau

Đ i direction có th nh n m t trong hai tr :

0 (HORIZ_DIR) t trái sang ph i

1 (VERT_DIR) t trên xu ng d i

Khi đ i charsize có tr là 1, kích th c ch là nh nh t Khi kích th c là 2,

ch s tăng g p đôi v.v Đ in chu i ra màn hình trong ch đ đ ho tadùng các hàm:

void far outtext( char far * string);

void far outtextxy(int x, int y, char far *string);

Ch ng trình 6 16 : Dùng hàm settextstyle()đ vi t ch

Trang 18

2 Justify và đ nh kích th c văn b n: Hàm đ nh v trí văn b n là:

void far settextjustify(int horiz, int vert);

Đ i horiz nh n các bi n trong b ng sau

Trang 19

Tr H ng ý nghĩa

0 LEFT_TEXT CP n m bên trái văn b n

1 CENTER_TEXT CP n m bên chính gi a văn b n

2 RIGHT_TEXT CP n m bên ph i văn b n

Đ i vert nh n m t trong các giá tr sau:

Trang 20

outtext( Center top );

void far setusercharsize(int multx, int divx, int multy, int divy);

multx nhân chi u r ng c a kí t

divx chia chi u r ng c a kí t

multy nhân chi u cao c a kí t

divx chia chi u cao c a kí t

#define width (((n+1)*di))

#define pbt ((float)(bot top))

#define ppd ((float)(bot top)/maxdata)

void main()

{

Trang 21

int gd,gm,i;

float a,b,c,d;

int data[n]={41,47,54,62,63,59,75,83,89,96,55,2};

char month[12][4]={ Jan , Feb , Mar , Apr , May , Jun , Jul ,

Aug , Sep , Oct , Nov , Dec };

line(left,bot i*pbt/10,left+twidth,bot i*pbt/10);

line(left+width twidth,bot i*pbt/10,left+width,bot i*pbt/10);

Ngày đăng: 17/06/2015, 14:11

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w