Tải bản đầy đủ (.pdf) (30 trang)

Bài giảng Kỹ thuật lập trình nâng cao: Chương 1 - Trần Minh Thái

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (298.79 KB, 30 trang )

CHƯƠNG 1. TỔNG QUAN
VỀ KỸ THUẬT LẬP TRÌNH &
CÁC BƯỚC XÂY DỰNG
CHƯƠNG TRÌNH
TRẦN MINH THÁI
[e]
[w] www.minhthai.edu.vn1


CÁC BƯỚC CƠ BẢN ĐỂ XÂY DỰNG
HỆ THỐNG CHƯƠNG TRÌNH
• B1: Phân tích và xác định rõ bài toán
• B2: Xây dựng thuật toán
• B3: Viết chương trình
• B4: Chạy và kiểm tra chương trình
• B5: Bảo trì

2


ĐÁNH GIÁ CHẤT LƯỢNG CỦA MỘT
HỆ THỐNG CHƯƠNG TRÌNH
Đúng đắn, chính xác (correctness).
Chắc chắn (robustness).
Thân thiện (user friendliness).
Khả năng thích nghi (adapability): Chương
trình có khả năng để phát triển tiến hóa theo
yêu cầu.
• Tính tái sử dụng (reuseability): Chương trình
có thể dùng để làm một phần trong một chương
trình lớn khác.








3


ĐÁNH GIÁ CHẤT LƯỢNG CỦA MỘT
HỆ THỐNG CHƯƠNG TRÌNH

• Tính hiệu quả (efficiency).
• Tính khả chuyển (porability): Khả năng
chuyển đổi dễ dàng giữa các môi trường.
• Tính an toàn (security).
• Tính dừng (halt).

4


PHƯƠNG PHÁP TOP - DOWN
• Phân rã vấn đề một cách có hệ thống từ trên
xuống, được sử dụng chủ yếu cho quá trình
phân tích và thiết kế hệ thống.
• Quá trình phân rã bài toán được thực hiện theo
từng mức khác nhau. Mức thấp nhất gọi là mức
tổng quan, mức này cho thấy chức năng của hệ
thống một cách tổng thể (hệ thống làm được
những gì?). Mức tiếp theo là phân tích các chức

năng chính. Quá trình phân tích tiếp tục phân rã
cho tới khi nào nhận được mức đơn thể, và tiến
hành cài đặt.
5


PHƯƠNG PHÁP BOTTOM - UP

• Được sử dụng cho quá trình cài đặt hệ thống.
• Ngược lại với phương pháp Top-down, phương
pháp này đi từ cái riêng cho tới cái chung, từ
các đối tượng thành phần ở mức cao tới mức
thấp, từ mức mođun đến mức tổng thể, từ
những mođun có sẵn lắp ghép thành mođun
mới.
6


VÍ DỤ

Hãy phân tích và viết chương trình giải và biện
luận phương trình bậc hai

7


CÁC NGUYÊN LÝ KHI LẬP TRÌNH
• Nguyên lý tối thiểu
Nắm vững các cấu trúc lệnh, kiểu dữ liệu cùng
với phép toán trên nó để viết chương trình.

Tiếp theo, mới tìm hiểu những thư viện tiện ích
của ngôn ngữ.
VD:

thay vì

• Nguyên lý địa phương
Hạn chế sử dụng biến toàn cục
8


CÁC NGUYÊN LÝ KHI LẬP TRÌNH

• Nguyên lý nhất quán
Thao tác phải phù hợp với dữ liệu
• Nguyên lý an toàn
Tránh mọi lỗi trong khi xây dựng chương trình,
lỗi ở mức thiết kế là lỗi nặng nhất, nên phát
hiện và sửa lỗi ở từng bước của chương trình
9


CÁC PHƯƠNG PHÁP LẬP TRÌNH

• Tuần tự
• Thủ tục
• Đơn thể (module)
• Hướng đối tượng

10



CHƯƠNG TRÌNH C

CẤU TRÚC CHƯƠNG TRÌNH
Khai báo

Khai báo thư viện hàm
Khai báo hàm
Khai báo hằng số …

Cài đặt hàm

Cài đặt tất cả những hàm con
đã được khai báo

Hàm main()

Gọi thực hiện các hàm theo
yêu cầu của bài toán
11


KHÁI NIỆM

• Hàm là một đoạn chương trình độc lập thực hiện
trọn vẹn một công việc nhất định sau đótrảvề
giátrị cho chương trình gọi nó, hay nói cách khác
hàm là sựchia nhỏcủa chương trình.


12


KHÁI NIỆM
• Mục đích sử dụng hàm:
Khi có một công việc giống nhau cần thực hiện ở
nhiều vị trí.
Khi cần chia một chương trình lớn phức tạp thành
các đơn thểnhỏ(hàm con) đểchương trình được
trong sáng, dễhiểu trong việc xửlý
, quản lýviệc
tính toán vàgiải quyết vấn đề
.

13


Mẫu tổng quát của hàm
<Kiểu dữliệu> TênHàm([ds các tham số
]);
Trong đó:
• Kiểu dữ liệu trả về của hàm (kết quả của hàm/
đầu ra), gồm 2 loại
• void: Không trả về giá trị
• float / int / long / char */ kiểu cấu trúc / … :
Trả về giá trị kết quả có kiểu dữ liệu tương
ứng với bài toán (chỉ trả về được 1 giá trị theo
kiểu dữ liệu)
14



• TênHàm: Đặt tên theo qui ước sao cho phản
ánh đúng chức năng thực hiện của hàm
• Danh sách các tham số (nếu có): đầu vào của
hàm (trong một số trường hợp có thể là đầu vào
và đầu ra của hàm nếu kết quả đầu ra có nhiều
giá trị - Tham số này gọi là tham chiếu)

15


HÀM KHÔNG TRẢ VỀ GIÁ TRỊ
Cài đặt
void TênHàm([danh sách các tham số])
{
Khai báo các biến cục bộ
Các câu lệnh / khối lệnh hay lời gọi đến hàm
khác.
}
Gọi hàm: TênHàm(danh sách tên các đối số);
Những phương thức loại này thường rơi vào những
nhóm chức năng: Nhập / xuất dữliệu , thống kê,
sắp xếp, liệt kê
16


HÀM TRẢ VỀ GIÁ TRỊ
Cài đặt
<Kiểu dữliệu trả về> TênHàm([danh sách các
tham số

])
{
<Kiểu dữliệu trả về> kq;
Khai báo các biến cục bộ
Các câu lệnh / khối lệnh hay lời gọi đến hàm
khác.
return kq;
}
17


HÀM TRẢ VỀ GIÁ TRỊ

Gọi hàm
<KDL trả về của hàm> Tên biến = TênHàm
(danh sách tên các đối số);
Những phương thức này thường rơi vào các
nhóm: Tính tổng, tích, trung bình, đếm, kiểm
tra, tìm kiếm

18


THAM SỐ LÀ THAM CHIẾU

• Tham số làm kết quả đầu ra
• Tham số vừa làm đầu vào và đầu ra
• Dùng dấu & phía trước tên tham số khi cài
đặt hàm
VD:

void Nhap(int &n);
19


NGUYÊN TẮC XÂY DỰNG HÀM

Trước khi xây dựng hàm phải trả lời những câu hỏi
sau:
• Hàm trả về gì? à Xác định kiểu dữ liệu trả về
của hàm
• Hàm làm gì? à Xác định tên hàm
• Cần những thông tin gì để hàm xử lý? à Xác
định tham số
20


NGUYÊN TẮC XÂY DỰNG HÀM
Ứng với mỗi thông tin đã xác định, xác định
xem đã có giá trị trước khi vào hàm chưa,
- Nếu chưa có à Tham chiếu
- Nếu có mà sau khi thực hiện xong hàm vẫn
không thay đổi à Tham trị (không là tham
chiếu)
- Nếu có mà sau khi thực hiện xong hàm thì giá
trị cũng bị thay đổi theo à Tham chiếu
21


TẠO PROJECT TRONG MS VISUAL C++
Nhằm dễ dàng trong quản lý source code theo

phương pháp lập trình hàm, mỗi project trong VS
C++ thường gồm 3 file:
• Thư mục Header Files, tạo file khaibao.h: chứa
các khai báo thư viện hàm, khai báo hằng số,
biến toàn cục, khai báo hàm, …
• Thư mục Source Files, tạo file caidat.cpp và
main.cpp: chứa các cài đặt hàm và hàm main()
22


CẤU TRÚC FILE KHAIBAO.H

#pragma once
Khai báo thư viện, hàm, hằng số, …

23


CẤU TRÚC FILE CAIDAT.CPP
#include “khaibao.h”
void HamA()
{
các lệnh;
}
void HamB()
{
Các lệnh;
}

24



CẤU TRÚC FILE MAIN.CPP

#include “khaibao.h”
void main()
{
Các lệnh gọi hàm;
}
25


×