
Cùng Top lời giải tìm hiểu chi tiết các bước này nhé:
1. Xác định bài toán
- Là quá trình xác định 2 thành phần: Input và Output và mối quan hệ giữa chúng.
Bạn đang xem: Giải bài toán bằng máy tính
- Ví dụ: Tìm bội chung lớn nhất (BCNN) của hai số nguyên dương A và B
+ Input: A, B
+ Output: BCNN(A,B)
2. Lựa chọn hoặc thiết kế thuật toán
a) Lựa chọn thuật toán
- Một bài toán có nhiều cách giải, do đó người ta lựa chọn thuật toán phù hợp nhất dựa trên các tiêu chí:
+ Thời gian thực hiện ngắn;
+ Sử dụng ít ô nhớ;
+ Thuật toán dễ hiểu, ít phức tạp;
+ Tốn ít tài nguyên nhất có thể.
b) Diễn tả thuật toán
Ví dụ: Tìm ước chung lớn nhất (ƯCLN) của hai số nguyên dương M và N.
• Xác định bài toán:
- Input: Nhập M, N;
- Output: ƯCLN(M, N).
• Ý tưởng: Sử dụng những điều đã biết sau:
- Nếu M = N thì giá trị chung đó là ƯCLN của M và N;
- Nếu M > N thì ƯCLN(M, N) = ƯCLN(M – N,N);
- Nếu M N thì M ←M - N rồi quay lại bước 2;
+ Bước 4: N ←N - M rồi quay lại bước 2.
- Thuật toán diễn tả bằng sơ đồ khối

Sau đây là hai ví dụ mô phỏng các bước thực hiện thuật toán trên:

3. Viết chương trình
- Viết chương trình là việc tổng hợp giữa việc lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình để diễn đạt đúng thuật toán.
Ngôn ngữ lập trình + Thuật toán = Chương trình
- Khi viết chương trình ta nên chọn một ngôn ngữ lập trình hoặc một phần mềm chuyên dụng thích hợp với thuật toán.
- Viết chương trình trong ngôn ngữ nào thì phải tuân theo ngôn ngữ đó.
- Chương trình dịch chỉ có thể phát hiện và thông báo về mặt ngữ pháp.
4. Hiệu chỉnh
- Khái niệm: là việc thử chương trình với 1 số bộ Input tương ứng với Output đã biết trước, từ đó ta xác định được các lỗi của chương trình.
- Mỗi bộ Input – Output được gọi là các Test.
5. Viết tài liệu
- Tài liệu dùng để:
+ mô tả bài toán, thuật toán;
+ thiết kế chương trình;
+ kết quả thử nghiệm;
+ hướng dẫn sử dụng.
- Tài liệu này rất có ích cho người sử dụng chương trình và cho việc đề xuất những khả năng hoàn thiện thêm.
- Các bước có thể lặp đi lặp lại nhiều lần cho đến khi ta cho rằng chương trình đã làm việc đúng đắn và hiệu quả.
Bài tập liên quan:
Câu 1: Hãy nêu tiêu chuẩn lựa chọn thuật toán.
Lời giải chi tiết
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 hơn và máy tính thực hiện với thời gian nhanh hơn. 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.
Câu 2:
Hãy nêu 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.
Lời giải chi tiết
• 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.
Câu 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.
Xem thêm: Đề Thi Toan Lop 2 Hoc Ki 2 Năm Học 2020, 29 Đề Thi Học Kì 2 Môn Toán Lớp 2 Hay Chọn Lọc
Lời giải chi tiết
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+ Bước 3: x
+ 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