Để hiểu rõ hơn nội dung các b−ớc phát triển một ch−ơng trình, ta thử minh hoạ bằng một ví dụ đơn giản d−ới đâỵ
1.1.1 Ví dụ.
Viết ch−ơng trình thực hiện nhân hai ma trận.
1- Xác định yêu cầu: Thực hiện phép nhân hai ma trận. Dữ liệu đầu vμo lμ
hai ma trận nhập từ bμn phím. Ma trận kết quả đ−ợc in ra d−ới dạng một bảng hình chữ nhật dóng thẳng hμng, cột. Nếu kích th−ớc của 2 ma trận đầu vμo không phù hợp thì thông báo lỗị
2- Phân tích bμi toán:
- Đầu vμo lμ dữ liệu về hai ma trận A, B cụ thể gồm: rA = số hμng của ma trận Ạ cA = số cột của ma trận Ạ rB = số hμng của ma trận B. cB = số cột của ma trận B. các phần tử Aij của ma trận A, BB
ij của ma trận
B.
- Đầu ra lμ ma trận tích C.
- Các công thức tính toán: rC = rA (số hμng của C bằng số hμng của
A). cC = cB (số cột của C bằng số cột của B). Các phần tử của C lμ
Cij = Σ Aik * Bkj.
- Phải kiểm tra điều kiện nhân đ−ợc cA=rB. Nếu không thoả mãn thì báo lỗi vμ dừng ch−ơng trình. Nếu thoả mãn thì tính vμ in ra ma trận C. 3- Thiết kế.
Thực hiện chi tiết dần từng b−ớc theo cách tiếp cận top-down sẽ trình bμy kì hơn trong phần thiết kế chi tiết dần từng b−ớc
4- Triển khai, viết mã lệnh.
Chuyển thiết kế chi tiết của b−ớc tr−ớc thμnh các câu lệnh Pascal. 5- Chạy thử vμ kiểm trạ
- Tr−ờng hợp nhân đ−ợc.
- Tr−ờng hợp không nhân đ−ợc.
- Các tr−ờng hợp đặc biệt: ma trận suy biến thμnh véc tơ, chỉ có một hμng, một cột, v.v.