-
Thông tin
-
Hỏi đáp
Tuẩn luận ngành Công nghệ thông tin | Trường Đại học Lao động - Xã hội
Tuẩn luận ngành Công nghệ thông tin | Trường Đại học Lao động - Xã hội được sưu tầm và soạn thảo dưới dạng file PDF để gửi tới các bạn sinh viên cùng tham khảo, ôn tập đầy đủ kiến thức, chuẩn bị cho các buổi học thật tốt. Mời bạn đọc đón xem!
Công nghệ thông tin(CNTT101) 7 tài liệu
Đại học Lao động - Xã hội 592 tài liệu
Tuẩn luận ngành Công nghệ thông tin | Trường Đại học Lao động - Xã hội
Tuẩn luận ngành Công nghệ thông tin | Trường Đại học Lao động - Xã hội được sưu tầm và soạn thảo dưới dạng file PDF để gửi tới các bạn sinh viên cùng tham khảo, ôn tập đầy đủ kiến thức, chuẩn bị cho các buổi học thật tốt. Mời bạn đọc đón xem!
Môn: Công nghệ thông tin(CNTT101) 7 tài liệu
Trường: Đại học Lao động - Xã hội 592 tài liệu
Thông tin:
Tác giả:
Tài liệu khác của Đại học Lao động - Xã hội
Preview text:
TR N ƯỜ G ĐẠI H C Ọ LAO Đ N Ộ G – XÃ H I Ộ Ngành: Công ngh ệ thông tin ----------o0o---------- BÀI BÁO CÁO Đ Ồ H A Ọ MÁY TÍNH Đ tài: Mô ph n ỏ g vẽ đ n ồ g hồ Tên sinh viên th c ự hi n ệ : Nguy n ễ Trung Dũng Nguy n ễ Việt Dũng Nguy n ễ Viết Nam Đ ỗ Quý Long L p ớ : D17CN04 Gi n ả g viên h n ướ g d n
ẫ : Vương Thùy Linh Năm h c ọ 2023 - 2024 MỤC LỤC CH N
ƯƠ G 1: GIỚI THIỆU V Ề Đ Ồ HỌA MÁY TÍNH 1.1.L c ị h s ử phát tri n ể 1.2. Khái ni m ệ đ ồ h a
ọ máy tính và các kỹ thu t ậ đ ồ h a ọ 1.2.1. Đ ồ h a
ọ máy tính là gì ? 1.2.2. Kỹ thu t ậ đ ồ h a ọ Vector CH N
ƯƠ G 2: GIỚI THIỆU Đ Ề TÀI I. N i ộ Dung 1. Các lý thuy t ế liên quan 1.1. Các n i ộ dung lý thuy t ế 1.1.1. Thu t ậ toán Bresenham 1.1.2. Thu t ậ toán Midpoint 1.1.3 Thu t ậ toán Bézier 2. Trình bày thu t ậ toán đ c ượ s ử d n ụ g 2.1 . Thu t ậ toán Bresenham 2.2. Thu t ậ toán Midpoint 3. Ý t n ưở g xây d n ự g ch n ươ g trình CH N
ƯƠ G 1: GIỚI THIỆU V Ề Đ Ồ HỌA MÁY TÍNH 1.1.L c ị h s ử phát tri n ể - Graphics nh n ữ g năm 1950-1960 + Năm 1959 Thi t ế bị đ ồ ho ạ đ u ầ tiên là màn hình xu t ấ hi n ệ t i ạ Đ c ứ .
+ Năm 1960 - SAGE (Semi-Automatic Ground Environment System) xu t ấ hiện bútsáng thao tác v i ớ màn hình.
+ Năm 1960 William Fetter nhà khoa h c ọ ng i
ườ Mỹ, ông đang nghiên c u ứ xâydựng mô hình bu n
ồ g lái máy bay cho hãng Boeing c a ủ Mỹ. Ông đã d a ự trên hìnhảnh 3 chiều c a ủ mô hình ng i ườ phi công trong bu n ồ g lái c a ủ máy bay đ ể xây d n ự gnên m t ộ mô hình t i ố u ư cho bu n ồ g lái máy bay.
Phương pháp này cho phép các nhàthi t ế k ế quan sát m t ộ cách tr c ự quan vị trí c a
ủ người lái trong khoang. Ông đ t ặ têncho ph n ươ g pháp này là đ ồ
hoạ máy tính (Computer Graphics) . + Màn hình là thi t ế b ịthông d n ụ g nh t ấ trong h ệ đ ồ ho , ạ các thao tác c a ủ
hầu hếtcác màn hình đ u ề d a ự trên thi t ế k ế n ố g tia âm c c ự CRT (Cathode ray tube). Khi đógiá đ ể làm t i ươ màn hình là r t ấ cao, máy tính x ử lý ch m ậ , đ t ắ và không ch c ắ ch n ắ (không đáng tin c y ậ ).
- Graphics: 1960-1970+ Năm 1963 Ivan Sutherland (h i ộ ngh ịFall Joint Computer - l n ầ đ u ầ tiên có kh n ả ăng t o ạ m i ớ , hi n ể th ịvà thay đ i ổ đ c ượ th c ự hiện trong th i ờ gian th c ự trên mànCRT). + H ệ th n ố g này được dùng đ ể thi t ế k ế m c ạ h đi n ệ : CRT, LightPen (bút sáng),computer (ch a ứ chư n ơ g trình x ử lý thông tin). Ng i ườ s ử d n ụ g có th ể vẽ m c ạ h đi n ệ tr c ự ti p
ế lên màn hình thông qua bút sáng.
- Graphics:1970-1980+ Raster Graphics (đ ồ ho ạ đi m ể ). B t ắ đ u ầ chu n ẩ đ ồ hoạ ví d
ụ như: GKS(GraphicsKernel System): European effort (k t ế quả
của châu âu), Becomes ISO 2D standard. - Graphics: 1980-1990+ M c ụ đích đ c ặ bi t ệ v ề ph n ầ c n ứ g, thi t ế b ịhình h c ọ đ ồ ho ạ Silicon. Xu t ấ hi n ệ cácchu n ẩ công nghi p ệ : PHIGS
(Programmers Hierarchical Interactive GraphicsStandard) xác đ n ị h các phương pháp chu n ẩ cho các mô hình th i ờ gian th c ự và l p ậ trình h n ướ g đ i ố tượng. + Giao di n ệ ng i
ườ máy Human-Computer Interface (HCI) - Computer Graphics: 1990-2000
+ OpenGL API (Application Program Interface – giao di n ệ ch n ươ g trình n ứ gd n ụ g).
+ Completely computer-sinh ra ngành đi n ệ n ả h phim truy n ệ (Toy Story)
rất thànhcông. Các tiềm tàng ph n ầ c n ứ g m i
ớ : Texture mapping (dán các n ả h c a ủ cảnh th t ậ lên b ề m t ặ c a ủ đ i ố t n ượ g),blending (tr n ộ màu). . - Computer Graphics: 2000- nay + n Ả h hi n ệ th c ự , các c c ạ đ ồ ho
ạ cho máy tính (Graphics cards for PCs), gameboxes and game players. + Công nghi p ệ phim n ả h nh ờ vào đ ồ ho
ạ máy tính (Computer graphics
becomingroutine in movie industry): Maya (th ế gi i ớ v t ậ ch t ấ tri giác đ c ượ ). . 1.2. Khái ni m ệ đ ồ h a
ọ máy tính và các kỹ thu t ậ đ ồ h a ọ 1.2.1. Đ ồ h a
ọ máy tính là gì ? - Đồ h a ọ máy tính là m t ộ ngành khoa h c ọ Tin h c ọ chuyên nghiên c u ứ v ề cácph n ươ g pháp và kỹ thu t ậ đ ể có th ể mô t
ả và thao tác trên các đ i ố t n ượ g c a ủ th ế gi i ớ thực b n ằ g máy tính - V ề b n ả ch t ấ : đó là m t ộ quá trình xây d n ự g và phát tri n ể các công c ụ trên cả hailĩnh v c ự ph n ầ c n ứ g và ph n ầ mềm h ổ tr ợ cho các l p ậ trình viên thi t ế kế các ch n ươ gtrình có kh ả năng đ ồ h a ọ cao. - V i ớ vi c ệ mô t ả d ữ li u ệ thông qua các hình n ả h và màu s c ắ đa d n ạ g c a ủ nó, cácch n ươ g trình đồ h a ọ th n ườ g thu hút ng i ườ s ử d n ụ g b i ở tính thân thi n ệ , d ể dùng,. .kích thích kh ả năng sáng t o ạ và nâng cao năng su t ấ làm việc. + Các mô hình hình n ả h đ c ượ hi n ể th ịnh ư m t ộ l i ướ đi m ể (grid) các pixel r i ờ r c ạ , + T n ừ g pixel đ u ề có v ịtrí xác đ n ị h, đ c ượ hi n ể th ịv i ớ m t ộ giá tr ịr i ờ r c ạ (sốnguyên) các thông s ố hi n ể th ị(màu s c ắ ho c ặ đ ộ sáng) + T p ậ h p ợ tất cả các pixel c a
ủ grid cho chúng ta mô hình, hình n ả h đ i ố t n ượ g mà chúng ta mu n ố hi n ể th .ị - Ph n
ươ g pháp để tạo ra các pixel: + Ph n ươ g pháp dùng ph n ầ m m ề đ ể vẽ tr c ự ti p ế t n ừ g pixel m t ộ . + D a ự trên các lý thuy t ế mô ph n ỏ g (lý thuy t ế Fractal, v.v) đ ể xây d n ự g nên hình n ả h mô ph n ỏ g của s ự v t ậ . + Phương pháp r i ờ r c ạ hoá (s ố hoá) hình n ả h th c ự c a ủ đ i ố tư n ợ g. + Có thể s a ử đ i ổ (image editing) ho c ặ x ử lý (image processing) m n ả g các pixel thuđ c ượ theo nh n ữ g ph n ươ g pháp khác nhau đ ể thu đ c ượ hình n ả h đ c ặ tr n ư g của đ i ố tư n ợ g. 1.2.2. Kỹ thu t ậ đ ồ h a ọ Vector - Xây d n ự g mô hình hình h c ọ cho hình n ả h đối t n ượ g, xác đ n ị h các thu c ộ tính c a ủ mô hình hình h c ọ , sau đó d a ự trên mô hình này đ ể th c ự hi n ệ quá trình tô trát đ h ể i n ể th ịt n ừ g đi m ể c a ủ mô hình, hình n ả h c a ủ đ i ố t n ượ g. - Kỹ thu t ậ này ch ỉl u ư tr ữ mô hình toán h c ọ c a ủ các thành ph n ầ trong mô hình hìnhh c ọ cùng v i ớ các thu c ộ tính t n ươ g n ứ g mà không c n ầ l u ư l i ạ toàn b ộ t t ấ c ả cácpixel c a ủ hình n ả h đ i ố t n ượ g. + Các mô hình hình n ả h đ c ượ hi n ể th ịnh ư m t ộ l i ướ đi m ể (grid) các pixel r i ờ r c ạ , + T n ừ g pixel đ u ề có v ịtrí xác đ n ị h, đ c ượ hi n ể th ịv i ớ m t ộ giá tr ịr i ờ r c ạ (sốnguyên) các thông s ố hi n ể th ị(màu s c ắ ho c ặ đ ộ sáng) + T p ậ h p ợ tất cả các pixel c a
ủ grid cho chúng ta mô hình, hình n ả h đ i ố t n ượ g mà chúng ta mu n ố hi n ể th .ị - Ph n
ươ g pháp để tạo ra các pixel: + Ph n ươ g pháp dùng ph n ầ m m ề đ ể vẽ tr c ự ti p ế t n ừ g pixel m t ộ .
+ Dựa trên các lý thuyết mô ph n
ỏ g (lý thuyết Fractal, v.v) đ ể xây d n ự g nên hình n ả h mô ph n ỏ g của s ự v t ậ . + Ph n ươ g pháp r i ờ r c ạ hoá (s ố hoá) hình n ả h th c ự c a ủ đ i ố t n ượ g. + Có thể s a ử đ i ổ (image editing) ho c ặ x ử lý (image processing) m n ả g các pixel thuđ c ượ theo nh n ữ g ph n ươ g pháp khác nhau đ ể thu đ c ượ hình n ả h đ c ặ tr n ư g của đ i ố tư n ợ g. 1.2.2. Kỹ thu t ậ đ ồ h a ọ Vector - Xây d n ự g mô hình hình h c ọ cho hình n ả h đối t n ượ g, xác đ n ị h các thu c ộ tính c a ủ mô hình hình h c ọ , sau đó d a ự trên mô hình này đ ể th c ự hi n ệ quá trình tô trát đ ể hiển thị t n ừ g đi m ể c a ủ mô hình, hình n ả h c a ủ đ i ố t n ượ g.
- Kỹ thuật này ch ỉlưu tr ữ mô hình toán h c ọ c a ủ các thành ph n ầ trong mô hình hìnhh c ọ cùng v i ớ các thu c ộ tính t n ươ g n ứ g mà không c n ầ l u ư l i ạ toàn b ộ t t ấ c ả cácpixel c a ủ hình n ả h đ i ố t n ượ g. - So sánh giữa Đ ồ h a ọ đi m ể và Đ ồ h a ọ Vector: • Cấu thành: Đ ồ họa vector s ử d n ụ g các công th c ứ và hình h c ọ đ ể xác đ n ị h các điểm, đ n
ườ g và vùng trong hình n ả h.
Có thể phóng to mà không làm m t ấ đi ch t ấ l n ượ g vì không d a ự trên pixel. • M c ụ đích s ử dụng: Thích h p ợ cho các bi u ể đ , ồ logo, bi u ể đ ồ và các hình n ả h ch a ứ các hình d n ạ g đ n ơ gi n ả . • M ở r n ộ g hình n ả h:
Có thể phóng to mà không làm m t ấ đi đ ộ nét và chi ti t ế c a ủ hình n ả h. • Dung l n ượ g t p ậ tin: Th n ườ g nh ỏ h n ơ so v i ớ hình n ả h đ ồ họa đi m ể vì nó ch ỉl u ư tr ữ thông tin v ề các đi m ể và hình d n ạ g. CH N ƯƠ G 2: GI I Ớ THI U Ệ Đ Ề TÀI Vi c ệ vẽ mô ph n ỏ g đ n ồ g h ồ b n ằ g mã l p ậ trình là m t ộ đ ề tài thú v ịvà sáng t o ạ trong lĩnh v c ự công ngh ệ thông tin. Đ n ồ g h ồ không ch ỉlà m t ộ thi t ế b ị đ ể đo th i ờ gian mà còn là m t ộ bi u ể t n ượ g c a ủ th m ẩ mỹ và s ự s p ắ x p ế . Thông qua mã l p ậ trình, chúng ta có th ể t o ạ ra nh n ữ g mô ph n ỏ g đ n ồ g h ồ số hoặc đồng h ồ c ơ v i ớ đ
ộ chính xác và tính năng đa d n ạ g. Để th c ự hi n ệ đ ề tài này, chúng ta s ử d n ụ g các ngôn ng ữ l p ậ trình nh ư JavaScript, Python ho c ặ C++, cùng v i ớ các th ư vi n ệ đ ồ h a ọ nh ư Canvas
hoặc Pygame. Chúng ta có th ể t o ạ ra các đ n ồ g h ồ kỹ thu t ậ s ố hi n ệ đ i ạ , đồng h ồ c
ơ với các bánh răng và kim đ n ồ g h ồ ho t ạ đ n ộ g, hay th m ậ chí là nh n ữ g đ n ồ g h ồ đ c ộ đáo v i ớ hiệu n ứ g đ c ặ bi t ệ . Vi c ệ vẽ mô ph n ỏ g đ n ồ g h ồ không ch ỉlà vi c ệ hi n ể th ịth i ờ gian mà còn thúc đẩy sự sáng t o ạ và kh ả năng t n ươ g tác v i ớ ng i ườ dùng. Chúng ta có th ể t o ạ ra các tính năng b ổ sung nh ư báo th c ứ , đ n ồ g h ồ đ m ế ng c ượ , ho c ặ th m ậ chí là tích h p ợ với các d ự án khác nh ư n ứ g d n ụ g đo th ể d c ụ ho c ặ IoT. V i ớ sự phát tri n ể không ng n ừ g c a ủ công ngh , ệ vi c ệ vẽ mô ph n ỏ g đ n ồ g h ồ dùng mã l p
ậ trình không ch ỉgiúp chúng ta hi u ể rõ h n ơ v ề cách th i ờ gian đ c
ượ đo và theo dõi, mà còn mang l i ạ s ự thú v ịvà thách th c ứ trong vi c ệ
khai thác tiềm năng sáng t o ạ c a ủ l p
ậ trình viên. Đây là m t ộ đ ề tài thú v ịvà đa d n ạ g có th ể khám phá và phát tri n ể trong th ế gi i ớ kỹ thu t ậ s ố ngày nay. Phân công công việc c a ủ các thành viên Nguy n ễ Trung Dũng Nguy n ễ Vi t ệ Dũng Nguy n ễ Vi t ế Nam Đ ỗ Quý Long I. N i ộ Dung 1. Các lý thuy t ế liên quan 1.1 . Các n i ộ dung lý thuy t ế Khái niệm hình tròn Hình tròn là m t ộ hình hai chi u ề khép kín có t t ấ c ả các đi m ể trên hình cách đ u ề tâm m t ộ kho n ả g. Vẽ hình tròn trong đ ồ h a
ọ máy tính là quá trình t o ạ ra m t ộ hình tròn trên màn hình máy tính. Các thu t ậ toán vẽ hình tròn Có nhi u ề thu t ậ toán khác nhau có th ể đ c ượ s ử d n ụ g đ ể vẽ hình tròn trong đ ồ h a ọ máy tính. M t ộ s ố thu t ậ toán phổ bi n ế bao g m ồ : Thu t ậ toán Bresenham Thu t ậ toán Midpoint Thu t ậ toán Bézier 1.1.1.Thu t ậ toán Bresenham
Thuật toán Bresenham là thu t
ậ toán vẽ hình tròn đ n ơ gi n ả nh t ấ . Thu t ậ toán này ho t ạ đ n ộ g b n ằ g cách b t ắ đ u ầ t ừ tâm hình tròn và vẽ các đi m ể trên đ n ườ g tròn theo m t ộ h n ướ g nh t ấ đ n ị h. Ưu đi m ể : Đơn gi n ả , d ễ hi u ể và d ễ thực hi n ệ Nhanh chóng, hi u ệ qu . ả Nhược điểm: Độ chính xác th p ấ , đ c ặ biệt là ở các góc 1.1.2.Thu t ậ toán Midpoint Thuật toán Midpoint c i ả thi n ệ đ ộ chính xác c a ủ thu t ậ toán Bresenham b n ằ g cách s ử d n ụ g m t ộ ph n ươ g pháp chia đôi kho n ả g cách. Thu t ậ toán này ho t ạ đ n ộ g b n ằ g cách b t ắ đ u ầ t ừ tâm hình tròn và vẽ các đi m ể trên đ n ườ g tròn theo một h n ướ g nh t ấ định, theo h n ướ g đi c a ủ góc ti p ế theo. Ưu đi m ể : Độ chính xác cao h n ơ thu t ậ toán Bresenham V n ẫ khá nhanh chóng và hi u ệ quả Nhược điểm: Phức t p ạ hơn thu t ậ toán Bresenham 1.1.3.Thu t ậ toán Bézier Thu t ậ toán Bézier s ử d n ụ g các đ n ườ g cong Bézier đ ể vẽ hình tròn. Các
đường cong Bézier là các đ n ườ g cong tr n ơ , m m ề m i ạ h n ơ các đ n ườ g th n ẳ g. Ưu đi m ể : Độ chính xác cao nh t ấ Đường tròn đư c ợ vẽ r t ấ mư t ợ mà, không có hi n ệ t n ượ g răng c a ư Nhược điểm: Phức t p ạ nh t
ấ trong các thuật toán vẽ hình tròn 2. Trình bày thu t ậ toán đ c ượ s ử d n ụ g 2.1. Thu t ậ toán Bresenham
Thuật toán Bresenham là thu t
ậ toán vẽ hình tròn đ n ơ gi n ả nh t ấ . Thu t ậ toán này b t
ắ đầu từ tâm hình tròn và s ử d n ụ g m t ộ công th c ứ đ n ơ giản để tính toán đi m ể tiếp theo trên đ n ườ g tròn. Công th c ứ tính toán đi m ể ti p ế theo trên đ n ườ g tròn nh ư sau: x = x_c + r * cos(t) y = y_c + r * sin(t) Trong đó: x_c và y_c là t a ọ đ ộ tâm hình trò
r là bán kính hình tròn t là góc c a ủ đi m ể tiếp theo trên đ n ườ g tròn Thu t ậ toán Bresenham ho t ạ đ n ộ g nh ư sau: 1. Kh i ở t o ạ các bi n ế x, y, x_inc, y_inc, và t. 2. Đ t ặ x = x_c và y = y_c. 3. Tính t = 0. 4. L p ặ l i ạ các b c ướ 5 đ n ế 7 cho đ n ế khi t >= 360.
5. Tính x_inc = 1 if (x < x_c + r) else -1.
6. Tính y_inc = 1 if (y < y_c + r) else -1.
7. Vẽ điểm (x, y) trên màn hình. 8. Tăng t = t + 1. 2.2. Thu t ậ toán Midpoint Thu t ậ toán Midpoint c i ả thi n ệ đ ộ chính xác c a ủ thu t ậ toán Bresenham b n ằ g cách s ử dụng m t ộ ph n ươ g pháp chia đôi kho n ả g cách. Thu t ậ toán này b t ắ đ u ầ t ừ tâm hình tròn và s ử d n ụ g m t ộ công th c ứ đ ể tính toán đi m ể ti p ế theo trên đ n ườ g tròn. Công thức tính toán đi m ể ti p ế theo trên đ n ườ g tròn nh ư sau: 2. x = x_c + r * (2 * t / 360)
3. y = y_c + r * sqrt(3) * (1 - t * t / 900) Trong đó: x_c và y_c là t a ọ đ ộ tâm hình trò
r là bán kính hình tròn t là góc c a ủ đi m ể tiếp theo trên đ n ườ g trò Thu t ậ toán Midpoint ho t ạ đ n ộ g nh ư sau: 1. Kh i ở t o ạ các bi n ế x, y, và t. 2. Đ t ặ x = x_c và y = y_c. 3. Đặt t = 0. 4. L p ặ l i ạ các b c ướ 5 đ n ế 7 cho đ n ế khi t >= 360.
5. Tính x = x_c + r * (2 * t / 360).
6. Tính y = y_c + r * sqrt(3) * (1 - t * t / 900).
7. Vẽ điểm (x, y) trên màn hình. 8. Tăng t = t + 1. Phần chạy chư n ơ g trình b n ằ g codebooks và gi i ớ thi u ề v ề codebooks
1. Code::Blocks là gì?
Đây là môi trường phát triển tích hợp (IDE) miễn phí được xây dựng để đáp ứng các
nhu cầu khắt khe nhất của người dùng trong lập trình các phần mềm được viết bằng
ngôn ngữ C, C++ hoặc Fortran. Nó có thể hoạt động được trên nhiều nền tảng như
MacOS, Linux hoặc Windows và hỗ trợ nhiều trình biên dịch như MS Visual C++ và GNU GCC.
Bên cạnh đó, Code::Blocks còn có giao diện thân thiện, tổ hợp tính năng đa dạng và
có thể dễ dàng thêm các tính năng mới. Điều này có được là do thiết kế trên khung
plugin cho phép FDE này mở rộng tính năng bằng cách cài đặt hoặc viết các mã
plugin. Ví dụ như chức năng biên dịch và gỡ lỗi trên Code::Blocks được bổ sung bởi các plugin. 2. H n ướ g dẫn cài đ t ặ Code::Blocks 2.1. B c ướ 1: T i ả Code::Blocks Truy c p ậ đ n
ườ g link: http://www.codeblocks.org/downloads. Nh n ấ ch n
ọ “Download the binary release” Ch n ọ n n ề t n ả g đang ho t ạ đ n ộ g c a ủ bạn (có 3 s ự l a ự ch n ọ là
Windows XP / Vista / 7 / 8.x / 10, Linux 32 and 64-bit và Mac OS X).b T i ả xu n ố g cài đ t ặ v i ớ trình biên d c ị h GCC.b 2.2. B c
ướ 2: Cài đặt Code::Blocks Ch y ạ cài đ t ặ đã t i ả và ch p ấ nh n ậ các tùy ch n ọ m c ặ đ n ị h Xác minh đ n ườ g dẫn c a ủ trình biên d c ị h và trình g ỡ l i ỗ Ví d ụ v i
ớ Code::Blocks 13.12 cho Windows:b Vào menu Settings, ch n ọ Compiler…. T i ạ Selected Compiler, b n ạ nh n ấ ch n ọ GNU GCC Compiler và ch n
ọ tab Toolchain Executables. Sau đó ki m ể tra m c
ụ Compiler’s Installation Directory.b Nó sẽ đ c ượ đ t ặ thành th ư m c ụ ph ụ có tên MinGW c a ủ th ư m c ụ cài đ t ặ Code::Blocks. Gi ả s ử n u ế Code::Blocks đ c ượ cài đ t ặ trong ổ C d i ướ d n ạ g v i ớ đ n ườ g d n
ẫ c: \ Program Files \ codeblocks, b n ạ hãy chuy n ể nó thành
c:\Program Files\codeblocks\MinGW.b Áp d n ụ g cách kiểm tra t n ươ g t ự v i ớ trình g ỡ l i ỗ . B n ạ cũng ch n ọ GDB/CDB debugger trong m c ụ Debugger…: t i ạ menu Settings và nh n ấ vào Default. T i ạ m c ụ Executable path, b n ạ nh p ậ tên đ n ườ g d n ẫ đâỳ đ ủ c a ủ gdb.exe, ch n ẳ g h n
ạ như c : \ Program Files \ codeblocks \ MinGW \ bin \ gdb.exe .b Cài đ t
ặ thành công Code::Blocks 3. G i ợ ý cách vi t ế ch n
ươ g trình C/C++ trong Code::Blocks Sau khi đã cài đ t
ặ Code::Blocks cho máy tính, vi c ệ ti p ế theo là hãy th ử t o ạ m t ộ d ự án cho t n ừ g n ứ g d n ụ g của b n ạ .b M t ộ dự án thông th n ườ g sẽ bao gồm nh n ữ g t p ệ có liên quan nh ư các mã nguồn, tệp tiêu đ ề và m t ộ s ố tài nguyên khác. B n ạ hãy ti n ế hành theo các b c ướ sau:b Ch n
ọ File -> New -> Project…Thông th n ườ g b n ạ nên ch n ọ Console Application cho d ự án đ u ầ tiên c a ủ mình. Sau đó nh n ấ Go.b Khi trình h n ướ g d n ẫ Console Application hi n ệ ra, b n ạ nh n ấ Next -> C++ -> Next. Trong m c ụ Project Title, b n ạ nh p ậ HelloProject. Trong m c
ụ Folder to create project in, đ t ặ thành th ư m c ụ đang ho t ạ đ n ộ g c a ủ bạn, ví d ụ như d:\project. Ch n ọ ch p ấ nh n ậ t t ấ c ả ph n ầ còn l i ạ và nhấn Next.b Lúc này, th ư m c ụ d
ự án Hello Project sẽ xu t ấ hi n ệ trong ổ D, m c ụ project v i ớ tên HelloProject.cbp. B n ạ có th ể ti p ế t c ụ t o ạ thêm các d ự án m i ớ trong th ư m c ụ project này.b Trong tr n ườ g Compiler, ch p ấ nhận tùy ch n ọ m c ặ đ n ị h c a ủ GNU GCC Compiler và nh n ấ k t ế thúc.b Trong phần Management, ch n ọ tab Projects -> m ở r n ộ g nút d ự án Hello Project -> m ở r n
ộ g nút Source. Kích đúp chu t ộ vào main.cpp.b Đ ể t o ạ ch n ươ g trình, ch n ọ Build trong menu Build Đ ể ch y ạ ch n ươ g trình, ch n ọ Run trong menu Build 3. Phụ l c ụ : Sử d n ụ g các th ư vi n ệ nào c a ủ OpenLG; Code ch n ươ g trình
1. Khai báo Thư viện và Định nghĩa:
Chương trình sử dụng các thư viện cần thiết cho đồ họa và nhập/xuất chuẩn.
#define PI 3.14159265359 định nghĩa hằng số PI. 2.Hàm tinhgoc:
Hàm này chuyển đổi góc từ độ sang radian. 3.Hàm vekhung:
Hàm này vẽ mặt đồng hồ với các vòng tròn đồng tâm và các đánh dấu.
4.Các Hàm kimgiay, kimphut, kimgio:
Các hàm này vẽ kim giây, kim phút và kim giờ của đồng hồ, tương ứng. 4. Hàm vekim:
Hàm này liên tục cập nhật vị trí của kim giờ, kim phút và kim giây dựa trên các
góc (d1, d2, d3) và vẽ chúng lại. 5. Hàm gocdau:
Hàm này tính toán các góc khởi đầu (d1, d2, d3) cho kim giờ, kim phút và kim
giây dựa trên thời gian đầu vào. 6. Hàm main:
Hàm main khởi tạo cửa sổ đồ họa, vẽ mặt đồng hồ và liên tục cập nhật vị trí kim đồng hồ.
7. Nhập dữ liệu từ Người Dùng:
Người dùng được yêu cầu nhập giờ, phút và giây.
Chương trình này sử dụng thư viện graphics.h để tạo một đồng hồ đơn giản với
kim giờ, kim phút và kim giây. Các kim được liên tục cập nhật dựa trên thời
gian hiện tại và cửa sổ đồ họa sẽ đóng khi người dùng thoát khỏi chương trình.
4.Kết quả thực hiện đề tài Ch n
ươ g trình trê cho phép chúng ta nh p ậ s ố gi ờ s ố phút s ố giây mà mình mong mu n ố đ ể đ n ồ g h ồ b t ắ đ u ầ ch y ạ
Đây là sau khi chúng ta nh p ậ d ữ li u ệ và cho phép đ n ồ g h ồ b t ắ đ u ầ ch y ạ TÀI LIỆU THAM KHẢO
Google……………………………………………………………………………
Bing………………………………………………………………………………
Coccoc……………………………………………………………………………
Edge……………………………………………………………………………… …