Please enable JavaScript.
Coggle requires JavaScript to display documents.
(Huy Pháp) CHƯƠNG 9: LẬP TRÌNH CĂN BẢN - Coggle Diagram
(Huy Pháp) CHƯƠNG 9: LẬP TRÌNH CĂN BẢN
9.2. Các bước lập trình cơ bản
B1: Soạn thảo chương trình -> lưu tệp mã nguồn (.pas, .c, .cpp...)
B2: Biên dịch chương trình
Compiler dịch sang mã máy (object code), báo lỗi cú pháp nếu có
Linker liên kết các đối tượng -> tạo tệp thực thi (executable)
B3: Chạy thử chương trình
Chạy, nhập dữ liệu mẫu, kiểm tra kết quả; sai thì quay lại B1
Môi trường lập trình
IDE: tích hợp soạn thảo + biên dịch + liên kết + gỡ lỗi + chạy thử
Hoặc dùng trình soạn thảo riêng (Notepad++, Sublime...) + biên dịch riêng
9.4. Lập trình căn bản với C++
Giới thiệu ngôn ngữ lập trình C++
Bjanrne Stroustrup từ năm 1979
Năm 1983 chính thức chuyển thành C++
Các phần tử cơ bản của ngôn ngữ lập trình C++
Tập ký tự
Từ khóa: là những từ dành riêng cho ngôn ngữ
Tên:
Không trùng với từ khóa
Có thể bao gồm: Chữ, số, dấu gạch nối.
Ký tự đầu tiên phải là chữ hoặc dấu gạch nối (_)
Hằng: Là đại lượng ko đổi trong suốt quá trình thực thi chương trình
Biến: Dùng để chứa dữ liệu, giá trị của biến có thể thay đổit
trong quá trình thực thi chương trình
Hàm: Hàm đã có sẵn, hàm người dùng tự viết
Biểu thức
Biểu thức điều kiện: Bt1?bt2:bt3
Lệnh:
Lệnh đơn
Lệnh phức: { }
Lệnh gán giá trị: tên_biến = biểu_thức;
Chú thích:
Chú thích trên 1 dòng: //
Chú thích nhiều dòng: /
.....
/
Kiểu dữ liệu
Các kiểu dữ liệu cơ bản: Kiểu ký tự, nguyên, thực
Các kiểu có cấu trúc: mảng, xâu và tệp
Kiểu ký tự: Kiểu có dấu và không dấu
Char và unsigned Char. Kích thước là 1 byte
Kiểu số nguyên:
Có dấu
short 2 byte
int 2 hoặc 4 byte
long 4 byte
Không dấu
unsigned short, unsigned int, unsigned long
Kiểu số thực
phép ép kiểu
9.1. Ngôn ngữ lập trình và trình biên dịch
9.1.1. Ngôn ngữ lập trình
Là ngôn ngữ viết chương trình máy tính, gồm ký hiệu, từ khóa, quy tắc cú pháp
Phân loại:
Ngôn ngữ máy: duy nhất CPU hiểu trực tiếp, dạng nhị phân, khó đọc/viết
Hợp ngữ: ra đời 1950, gần ngôn ngữ máy nhưng viết dạng mã chữ dễ nhớ,
dịch sang máy qua assembler, dùng khi lập trình sát phần cứng
Ngôn ngữ lập trình bậc cao: gần ngôn ngữ tự nhiên/toán học, dễ học/đọc/viết,
độc lập phần cứng, còn gọi ngôn ngữ thuật toán (Fortran, Pascal, C, C++, Java, PHP...)
Cách phân loại khác: theo mức trừu tượng, theo hình thức lập trình
(khai báo / mệnh lệnh), theo họ ngôn ngữ (hàm, logic, hướng đối tượng, truy vấn...)
Ví dụ tiêu biểu: FORTRAN, ALGOL, LISP, COBOL, BASIC, PASCAL, C, C++, C#, PERL, PYTHON, JAVA, PHP...
9.1.2. Trình biên dịch và trình thông dịch
Máy tính chỉ hiểu ngôn ngữ máy -> chương trình nguồn cần được dịch
Trình thông dịch (Interpreter)
Dịch và thực thi từng câu lệnh, không lưu mã máy
Không tạo tệp mã đối tượng, mỗi lần chạy phải thông dịch lại
Dễ dò lỗi, phù hợp môi trường tương tác
VD: BASIC, VISUAL BASIC, PERL, PYTHON
Trình biên dịch (Compiler)
Dịch toàn bộ chương trình nguồn -> tạo tệp mã đối tượng
Báo lỗi cú pháp trước khi tạo file; chạy lại không cần dịch lại
Phù hợp chương trình ổn định, chạy nhiều lần
VD: PASCAL, C, C++
9.3. Các phương pháp lập trình
Lập trình tuyến tính (phi cấu trúc)
Dữ liệu toàn cục, lệnh nằm hết trong chương trình chính
Không có cấu trúc rõ ràng, không tái sử dụng lệnh, khó kiểm soát dữ liệu
Lập trình cấu trúc
Chia thành chương trình con (hàm, thủ tục) độc lập, gọi lẫn nhau
Phân định dữ liệu toàn cục/cục bộ, cấu trúc rõ ràng
Dễ xây dựng, phát hiện lỗi; tái sử dụng code; kiểm soát dữ liệu tốt
Lập trình hướng đối tượng
Dựa trên lập trình cấu trúc + trừu tượng hóa dữ liệu
Tập trung vào đối tượng, kết hợp dữ liệu + thao tác thành Lớp (class)
Có tính kế thừa, dễ tái sử dụng, dễ bảo trì/mở rộng