Bài 6: Giải bài toán trên máy tính

Sách Giáo Khoa
Hướng dẫn giải Thảo luận (3)

Tiêu chuẩn lựa chọn thuật toán

Một bài toán có thể được biểu diễn bởi nhiều thuật toán, việc chọn lựa thuật toán thích hợp sẽ giúp cho quá trình viết chương trình đơn gián hom và máy tính thực hiện với thời gian nhanh hơri. Vì vậy, có ba tiêu chuẩn cơ bản lựa chọn thuật toán đó là:

- Thuật toán có độ phức tạp thời gian nhỏ nhất (thực hiện chương trình trong thời gian ngắn nhất);

- Số lượng ô nhớ sử dụng ít nhất;

- Viết chương trình cho thuật toán dễ hiểu, đơn giản nhất.

Sách Giáo Khoa
Hướng dẫn giải Thảo luận (2)

Nội dung và mục đích của bước hiệu chỉnh khi giải bài toán trên máy tính

Nội dung của bước hiệu chỉnh

- Chạy thử chương trình với các bộ test tiêu biểu phụ thuộc vào đặc thù của bài toán để phát hiện các lỗi cú pháp, lỗi cấu trúc...

- Nếu phát hiện chương trình sai, sửa chương trình rồi chạy thử lại, quá trình tiếp tục cho đến khi không phát hiện lỗi nào nữa.

Mục đích của bưởc hiệu chỉnh

Khi chương trình hoàn thành, vẫn có thể có nhiều lỗi chính tả, lỗi sai cú pháp ngôn ngữ lập trình, lỗi mô tả thuật giải... Nhờ có bước hiệu chỉnh ta có thể sưa lại chương trình đúng với yêu cầu của bài toán.

Sách Giáo Khoa
Hướng dẫn giải Thảo luận (3)

Hãy viết thuật toán giải phương trình bậc nhất: ax + b = 0 và đề xuất các test tiêu biểu.

Trả lời:

Thuật toán giải phương trình ax + b = 0

- Bằng liệt kê tuần tự

Bước 1: Nhập hai số thực a, b

Bước 2. Nếu a = 0

Bước 2.1. Nếu b ≠0 thì thông báo phương trình vô định, rồi kết thúc;

Bước 2.2. Nếu b = 0 thì gán x <- 0 rồi chuyển sang bước 4;

Bước 3: x <- -b/a

Bước 4. Đưa ra nghiệm X, rồi kết thúc.

- Sơ đồ khối:

Đề xuất các test tiêu chuẩn

Để xét tất cả các trường hợp có thể xảy ra, ta sử dụng ba bộ test như sau:

i) a = 0, b = 1 (kiểm tra trường hợp phương trình vô định);

ii) a = 0,b = 0 (kiểm tra trường hợp nghiệm x=0);

iii) a = 3, b = 6 (kiểm tra trường hợp nghiêm , y = -b/a)