BỘ GIÁO DỤC – ĐÀO TẠO TRƯỜNG ĐẠI HỌC HÙNG VƯƠNG THÀNH PHỐ HỒ CHÍ MINH KHOA CÔNG NGHỆ BÁO CÁO CUỐI KỲ MÔN KỸ THUẬT LẬP TRÌNH GVHD Bùi Thị Hoàng Anh TP HCM, 26 Tháng 1 Năm 2021 BỘ GIÁO DỤC – ĐÀO TẠO TR[.]
BỘ GIÁO DỤC – ĐÀO TẠO TRƯỜNG ĐẠI HỌC HÙNG VƯƠNG THÀNH PHỐ HỒ CHÍ MINH KHOA CƠNG NGHỆ BÁO CÁO CUỐI KỲ MƠN: KỸ THUẬT LẬP TRÌNH GVHD: Bùi Thị Hoàng Anh TP.HCM, 26 Tháng Năm 2021 BỘ GIÁO DỤC – ĐÀO TẠO TRƯỜNG ĐẠI HỌC HÙNG VƯƠNG THÀNH PHỐ HỒ CHÍ MINH KHOA CƠNG NGHỆ BÁO CÁO CUỐI KỲ MƠN: KỸ THUẬT LẬP TRÌNH Tên: Nguyễn Nhật Khánh MSSV: 2005CT0027 Lớp: CT04A GVHD: Bùi Thị Hoàng Anh TP.HCM, 26 Tháng Năm 2021 Mục lục Chương Tổng quan 1.1 Bài tốn giải tốn máy tính 1.2 Xác định toán 1.3 Cấu trúc liệu giải thuật 1.4 Chương trình 12 Chương 2: Ngơn ngữ lập trình C# 13 Ngơn ngữ lập trình 13 2.1 Nội dung 14 2.2 Dữ liệu 14 2.3 Kiểu liệu 14 2.4 Biến 14 2.5 Đặt tên biến 14 2.6 Kiểu biến 15 2.7 Các phép toán 15 2.8 Một số hàm có sẵn 15 Chương 3: Câu lệnh điều khiển .16 I.Các loại câu lệnh 16 1.Câu Lệnh 16 2.1 Câu lệnh if 17 2.2 Câu lênh if…else 18 2.3 Câu lệnh if…else lồng 18 2.4 Câu lệnh switch .19 3.1 Câu lệnh while .21 3.2 Câu lệnh do…while .21 3.3 Câu lệnh for 22 3.4 Câu lệnh foreach 22 4.1 Hàm .22 4.2 Tham số hình thức & tham số thực 23 4.3 Truyền tham trị tham chiếu hàm 23 5.1 Hàm đệ qui 23 5.2 Đệ qui tuyến tính 23 5.3 Đệ qui nhị phân .24 5.4 Đệ qui phi tuyến 24 5.5 Đệ qui tương hỗ .25 5.6 Cơ chế hoạt đông đệ qui 26 5.7 Khử đệ qui .26 6.Viết hàm viết chương trình 26 Chương 4: Mảng chuỗi .26 7.1Mảng 26 7.2 Khai báo mảng .26 7.3 Truy xuất phân tử mảng 26 7.4 Duyệt mảng 27 7.5 Duyệt mảng foreach 27 7.6 Sao chép mảng .27 7.7 Đảo mảng 27 7.8 Sắp xếp mảng 28 7.9 Tìm kiếm mảng 28 7.10 Mảng đa chiều .28 7.11 Đánh giá mảng .28 8.1 Kiểu ký tự 28 8.2 Chuyển đổi kiểu ký tự 29 8.3 So sánh kiểu ký tự 29 8.4 Thao tác với ký tự 29 9.1 Chuỗi .30 9.2 Chuyển đổi sang chuỗi 30 Chương 5: Kiểu liệu cấu trúc 30 10.1 Struct gì? 30 10.2 Đặc điểm struct .30 10.3 Khai báo struct .31 10.4 Sử dụng struct 31 Chương 6: File FileStream C# 31 11.1 Các lớp I/0 C# 31 11.2 Đọc ghi file (File I/0) C#? 31 Chương 7: Windows Form 32 12.1 Khái niệm windows form 32 12.2 Các ứng dụng windows form 32 12.3 Môi trường thiết kế 32 12.4 Các control phổ biến 33 12.5 Label 33 12.6 Texbox 33 12.7 Button 33 12.8 Checkbox radiobutton .33 12.9 Lisbox 33 12.10 RichTextbox 33 Chương 8: Kết quả, kết luận kiến nghị 33 Chương Tổng quan Kỹ thuật lập trình -Là kỹ lập trình Các cách thức hồn thành, giải vấn đề lập trình: +Kỹ thuật xếp bọt +Kỹ thuật duyệt mảng +Kỹ thuật xử lý AI (trí tuệ nhân tạo) +… Kỹ thuật lập trình là: Kỹ thuật thực thi giải pháp phần mềm (cấu trúc liệu + giải thuật) dựa tảng phương pháp luận (methodology) nhiều ngơn ngữ lập trình phù hợp với yêu cầu đặc thùcủa ứng dụng Kỹ thuật lập trình = Tư tưởng thiết kế+ Kỹ thuật mã hóa= Cấu trúc liệu + Giải thuật + Ngôn ngữ lập trình Kỹ thuật lập trình ≠ Phương pháp phân tích & thiết kế(A&D) Mục tiêu mơn học -Nắm vững kiến thức lập trình (biến, hàm, câu lênh, cấu trúc tuần tự, cấu trúc rẽ nhánh, kiểu liệu ) -Trang bị kiến thức lập trình ứng dụng windows form -Nắm vững kiến thức lập trình hướng đối tương Thế lập trình? •Với tốn (vấn đề) đặt ra, cần: – Thiết kế giải thuật để giải tốn – Cài đặt giải thuật chương trình máy tính •Đúng/Chính xác: –Thoả mãn nhiệm vụ tốn lập trình đặt ra, khách hàng chấp nhận •Ổn định bền vững: –Chương trình chạy ổn định trường hợp –Chạy lỗi (số lượng lỗi ít, cường độ lỗi thấp) –Mức độ lỗi nhẹ chấp nhận •Khả chỉnh sửa: –Dễ dàng chỉnh sửa trình sử dụng phát triển –Dễ dàng thay đổi nâng cấp để thích ứng với điều kiện tốn lập trình thay đổi •Khả tái sử dụng: –Có thể sử dụng kế thừa cho tốn ≠ •Độ tương thích: –Khả thích ứng chạy tốt điều kiện môi trường khác •Hiệu suất: –Chương trình nhỏ gọn, sử dụng nhớ –Tốc độ nhanh, sử dụng thời gian CPU •Hiệu quả: –Thời gian lập trình ngắn –Khả bảo trìdễdàng –Giá trị sử dụng lại lớn –Sử dụng đơn giản, thân thiện –Nhiều chức tiện ích •Học cách tư phương pháp lập trình: –Tư tốn học, tư logic, tư có cấu trúc, tư hướng đối tượng, tư tổng quát –Tìm hiểu cấu trúc liệu giải thuật •Hiểu sâu máy tính: –Tương tác CPU, chương trình nhớ –Cơ chế quản lý bộnhớ •Nắm vững ngơn ngữ lập trình: –Biết rõ đặc thù, khả hạn chếcủa ngôn ngữ –Kỹ lập trình (đọc thơng, viết thạo) •Tự rèn luyện máy tính: –Hiểu sâu điểm nêu trên, rèn luyện kỹ lập trình –Thúc đẩy sáng tạo 1.1 Bài tốn giải tốn máy tính Để giải tốn máy tính, cần thực bước sau: -1: Xác định toán -2: Xác định cấu trúc liệu để mô tả toán -3: Xây dựng thuật toán -4: Soạn thảo, kiểm tra hồn thiện chương trình -5: Viết tài liệu 1.2 Xác định tốn -Mọi tốn diễn đạt theo sơ đồ chung sau: A=>B -Trong đó: +A giả thiết, điều kiện ban đầu, thông tin cho, biết +B kết luận, mục tiêu cần đạt phải tìm, phải làm kết thúc toán Là suy luận, giải pháp cần xác đinh chuỗi thao tác cần thực để có kết B từ có A -Bài tốn máy tính: A => B -Trong đó: +A đầu vào(INPUT) +B đầu ra(OUTPUT) Là chương trình máy tính cho kết B với đầu vào A -Việc xác định tốn máy tính thường gặp khó khăn sau: +Thơng tin A, B thường khơng rõ ràng không đầy đủ +Thông báo điều kiện đặt cho cách giải ( => ) thường không nêu cách minh bạch Nhận xét: Việc xác định toán quan trọng, ảnh hưởng tới cách thức chất lượng việc giải toán Một toán cho dù diễn đạt chi tiết, rõ ràng nên giả định phần lớn thông tin A, B tiềm ẩn đầu người giải Thông tin A B thường biểu tượng gợi nhớ đến thông tin tiềm ẩn Bước để xác định toán phải phát biểu lại tốn cách xác theo ngơn ngữ riêng chình cách tiếp cận toán, hiểu toán Nên xét vài trường hợp cụ thể để thơng qua hiểu toán, thấy rõ thao tác phải làm Thực tế cho thấy có tin học mơ tải thơng qua ví dụ 1.3 Cấu trúc liệu giải thuật Cấu trúc liệu: Cấu trúc liệu cách tổ chức lưu trữ truy cập liệu máy tính cho sử dụng cách hiệu (và phụ thuộc vào cộng cụ lập trình) Ví dụ (trong C): Mảng (Array), Con trỏ (Pointer), Xâu kí tự (String), File, Stack, Queue Một cấu trúc liệu chọn cẩn thận cho phép thực thuật toán hiệu Giải thuật: Giải thuật tập hợp hữu hạn chi thị hay phương cách định nghĩa rõ ràng cho việc hoàn tất số việc từ trạng thai ban đầu cho trước; thị áp dụng triệt để dẫn đến kết sau dự đốn Một thuật tốn có tính chất sau: Tính xác định: để đảm bao kết tính tốn hay thao tác mà máy tính thực xác Tính rõ ràng: Thuật tốn phải đươc thể câu lệnh minh bạch; cậu lệnh xếp theo thứ tự định Tính khách quan: Một thuật tốn dù viết nhiều người nhiều máy tính cho kết giống Tính phổ dụng: Thuật tốn khơng áp dụng cho tốn định mà áp dụng cho lớp tốn có đầu vào tương tự Tính kết thúc: Thuật toán phải gồm số hữu hạn bước tính tốn Trình tự thực bước thuật toán: -Giải thuật thiết kế theo cấu trúc suy luận sau: Tuần tự (Sequential): Các công việc thực cách tuần tự, công việc nối tiếp công việc Cấu trúc lựa chọn (Selection): Lựa chọn công việc để thực vào điều kiện Cấu trúc 1: Nếu (đúng) thực Cấu trúc 2: Nếu (đúng) thực , ngược lại (điều kiện sai) thực Cấu trúc 3: Trường hợp thực Cấu trúc lập (Repeating): Thực lặp lại công việc không nhiều lần vào điều kiện Biểu diễn thuật giải: -Ngơn ngữ tự nhiên: Là ngôn ngữ sử dụng Có thể sử dụng ngơn ngữ tự nhiên để mơ tả giả thuật sau: Ví dụ: Ta có thuật tốn giải PT bậc dạng ax + b = sau: Bước 1: Nhận giá trị tham số a, b Bước 2: Xét giá trị a xem có hay khơng? Nếu a = làm bước 3, a ≠ làm bước Bước 3: (a = 0) Nếu b = ta kết luận phương trình vơ số nghiệm Nếu b ≠0 ta kết luận phương trình vơ nghiệm Bước 4: (a ≠ 0) ta kết luận phương trình có nghiệm x = -b/a Biểu diễn thuật giải: ... Kỹ thuật lập trình -Là kỹ lập trình Các cách thức hồn thành, giải vấn đề lập trình: +Kỹ thuật xếp bọt +Kỹ thuật duyệt mảng +Kỹ thuật xử lý AI (trí tuệ nhân tạo) +… Kỹ thuật lập trình là: Kỹ. .. tưởng thiết kế+ Kỹ thuật mã hóa= Cấu trúc liệu + Giải thuật + Ngơn ngữ lập trình Kỹ thuật lập trình ≠ Phương pháp phân tích & thiết kế(A&D) Mục tiêu mơn học -Nắm vững kiến thức lập trình (biến,... GIÁO DỤC – ĐÀO TẠO TRƯỜNG ĐẠI HỌC HÙNG VƯƠNG THÀNH PHỐ HỒ CHÍ MINH KHOA CƠNG NGHỆ BÁO CÁO CUỐI KỲ MƠN: KỸ THUẬT LẬP TRÌNH Tên: Nguyễn Nhật Khánh MSSV: 2005CT0027 Lớp: CT04A GVHD: Bùi Thị Hoàng