Số tín chỉ: 3
Giảng viên: Ths. Đinh Thị Hà
Bộ môn Tin học
Email:
Phone: 0947830983
7-2010 Cơ sở lập trình
1
Chương 1: Kỹ thuật lập trình cơ bản
Chương 2: Lập trình căn bản trên C
Chương 3: Mảng, xâu và con trỏ
Chương 4: Hàm và macro
Chương 5: Kiểu dữ liệu có cấu trúc
7-2010 Cơ sở lập trình
2
[1] Đỗ Xuân Lôi – Cấu trúc dữ liệu và giải thuật – Nhà xuất bản
Khoa học và Kỹ thuật.
[2] Nguyễn Minh San – Cẩm nang lập trình, tập 1 & 2 – Nhà xuất
bản Giáo dục, 1996.
[3] Quách Tuấn Ngọc – Ngôn ngữ lập trình C – Nhà xuất bản
Thống kê, 2003.
[4] Bùi Thế Tâm – Giáo trình TURBO C/C++ – Nhà xuất bản Giao
thông vận tải, 2003.
[5] Phạm Văn Ất – Lập trình C, Nhà xuất bản Giáo dục, 2007.
7-2010 Cơ sở lập trình
3
1.1 Thuật toán
1.2 Sơ đồ khối
1.3 Chương trình và ngôn ngữ lập trình
1.4 Các phương pháp lập trình
1.5 Kỹ thuật thiết kế chương trình
7-2010 Cơ sở lập trình
7
Tìm UCLN của 2 số nguyên dương
Kiểm tra tính nguyên tố của một số nguyên dương
Tìm giá trị lớn nhất của một dãy số nguyên
7-2010 Cơ sở lập trình
8
1.2.1 Khái niệm
1.2.2 Các cấu trúc điều khiển
1.2.3 Ví dụ
7-2010 Cơ sở lập trình
9
Khái niệm 1: Sơ đồ khối là tập hợp các ký hiệu và quy tắc
dùng để biểu diễn thuật toán
Khái niệm 2: Sơ đồ khối là cách thể hiện thuật toán bằng các
hình khối hình học nối với nhau bằng đường đi có hướng
Các thành phần:
−
Hình thoi: thể hiện thao tác so sánh
−
Hình chữ nhật: thể hiện các phép tính toán
−
Hình bình hành: thể hiện thao tác nhập xuất dữ liệu
−
Hình oval: thể hiện sự bắt đầu/kết thúc của thuật toán.
−
Các mũi tên: thể hiện trình tự thực hiện các thao tác
7-2010 Cơ sở lập trình
đó vẫn thỏa mãn.
7-2010 Cơ sở lập trình
12
Làm việc với dãy số nguyên:
Tìm giá trị lớn nhất của dãy
Tính tổng các phầns tử của dãy mà chia hết cho 3
7-2010 Cơ sở lập trình
13
1.3.1 Chương trình
1.3.2 Ngôn ngữ lập trình
1.3.3 Trình tự giải bài toán trên MTĐT
1.3.4 Đánh giá chương trình MTĐT
7-2010 Cơ sở lập trình
14
Khái niệm: Chương trình là một tập hợp các lệnh để thể hiện
một thuật toán giải quyết một bài toán hay một nhiệm vụ
nào đó. Trong đó:
Lệnh: là một chỉ thị để máy tính có thể thực hiện một cách
tự động.
7-2010 Cơ sở lập trình
15
Khái niệm: Ngôn ngữ lập trình là ngôn ngữ để viết chương
trình.
Phân loại: (phụ thuộc vào kiến trúc và hoạt động của máy
tính)
Ngôn ngữ máy (ngôn ngữ bậc thấp)
Tính có thể mở rộng (thích nghi): chương trình dễ sửa đổi,
bổ sung để thích nghi với những thay đổi của bài toán
theo yêu cầu của người dùng.
Tính tương thích: có thể dễ dàng kết hợp, trao đổi với
nhiều chương trình hệ thống phần mềm khác
Tính hiệu quả: chi phí thấp (xây dựng, vận hành,…, đào
tạo, huấn luyện sử dụng, tài nguyên máy tính: không gian
và thời gian)
7-2010 Cơ sở lập trình
19
Tính dễ chuyển đổi: có thể chuyển sang thực hiện trên
phần cứng mới hoặc môi trường phần mềm (hệ điều
hành) khác.
Tính an toàn: bảo vệ được quyền truy cập, đảm bảo
không cho người không được phép truy cập, sửa đổi và
làm hư hại thông tin
Thân thiện với người sử dụng: tin cậy và trình độ sử dụng
tỉ lệ thuận với những công sức đầu tư học và sử dụng nó
trong thực tế.
7-2010 Cơ sở lập trình
20
1.3.4 Đánh giá chương trình MTĐT
1.4.1 Lập trình hướng thủ tục
Ví dụ: sơ đồ tổ chức chức năng của nhà cơ quan, Bài toán
về dãy sốchức năng/hàm?
7-2010 Cơ sở lập trình
24
Đặc điểm:
Tập trung vào công việc cần thực hiện (thuật toán)
Chương trình lớn được chia thành các hàm nhỏ hơn.
Phần lớn các hàm sử dụng dữ liệu chung
Các hàm (thủ tục) truyền thông tin cho nhau thông qua
cơ chế truyền tham số.
Dữ liệu trong hệ thống được chuyển động từ hàm này
sang hàm khác.
Đóng gói chức năng (sử dụng hàm/thủ tục mà không
cần biết nội dung cụ thể)
Chương trình được thiết kế theo cách tiếp cận từ trên
xuống (top - down)
7-2010 Cơ sở lập trình
25