Cách giải bài toán trên máy tính

Quá trình giải bài toán trên máy tính gồm 3 bước

   + B1: Xác định bài toán, bao gồm xác định điều kiện cho trước và xác định kêt quả cần đạt được

   + B2: Mô tả thuật toán, liệt kê các thao tác cần thực hiện.

   + B3: Viết chương trình, dùng thuật toán vừa viết ra chuyển thành chương trình để máy tính có thể hiểu và thực hiện.

   Đáp án: B

CÂU HỎI HOT CÙNG CHỦ ĐỀ

BÀI 6. GIẢI BÀI TOÁN TRÊN MÁY TÍNH

 

Các bước để giải một bài toán trên máy tính

  • Xác định bài toán
  • Lựa chọn hoặc thiết kế thuật toán
  • Viết chương trình
  • Hiệu chỉnh
  • Viết tài liệu.

1. Xác định bài toán

- Là xác định rõ 2 thành phần Input và Output và mối quan hệ giữa chúng để có thể lựa chọn thuật toán và ngôn ngữ lập trình thích hợp.

2. Lựa chọn hoặc thiết kế thuật toán

a. Lựa chọn thuật toán:

- Là bước quan trọng nhất để giải bài toán.

- Có thể có nhiều thuật toán để giải một bài toán, cần thiết kế hoặc chọn 1 thuật toán phù hợp để giải bài toán cho trước.

b. Diễn tả thuật toán

VD: Tìm UCLN [M,N]

- Xác định bài toán

  • Input: cho M, N
  • Output: UCLN [M,N]

- Ý tưởng:

  • Nếu M=N thì UCLN [M]
  • Nếu M>N  thì M\[\leftarrow\]M-N
  • Nếu MN thì M \[\leftarrow\] M - N rồi quay lại B2;
  • B4: N \[\leftarrow\] N – M rồi quay lại B2;
  • B5: Đ­ưa ra kết quả ­UCLN rồi kết thúc. 
  • Sơ đồ khối:
  • 3. Viết chương trình

    - Là 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.

    - Khi chọn ngôn ngữ lập trình nào phải tuân theo quy định ngữ pháp của ngôn ngữ đó.

    4.  Hiệu chỉnh

    - Sau khi viết xong, chương trình cần phải được thử bằng một số Input tiêu biểu. Nếu phát hiện sai sót thì phải sửa chương trình rồi thử lại.

    5. Viết tài liệu

    - Tài liệu phải mô tả chi tiết bài toán, thuật toán, thiết kế chương trình, kết quả thử nghiệm và hướng dẫn sử dụng. Từ tài liệu này, ngư­ời sử dụng đề xuất các khả năng hoàn thiện thêm.

    Câu hỏi: Các bước giải bài toán trên máy tính được tiến hành theo thứ tự nào sau đây

    A. Xác định bài toán – Lựa chọn thuật toán – Viết chương trình – Hiệu chỉnh – Viết tài liệu

    B. Xác định bài toán – Viết chương trình – Lựa chọn thuật toán – Viết tài liệu

    C. Lựa chọn thuật toán – Xác định bài toán – Viết chương trình – Hiệu chỉnh – Viết tài liệu

    D. Viết chương trình – Hiệu chỉnh – Viết tài liệu

    Đáp án A.

    Các bước giải bài toán trên máy tính được tiến hành theo thứ tự: Xác định bài toán – Lựa chọn thuật toán – Viết chương trình – Hiệu chỉnh – Viết tài liệu.

    2. Luyện tập Bài 6 Tin học 10

    Sau khi học xong Bài 6: Giải bài toán trên máy tính, các em cần nắm vững các bước giải giải bài toán trên máy tính:

    • Xác định bài toán: Input và Output
    • Lựa chọn hoặc thiết kế thuật toán: 
      • Lựa chọn thuật toán tối ưu nhất [thời gian và bộ nhớ]

      • Diễn tả thuật toán [Sơ đồ và liệt kê]

    • Viết chương trình
      • Chọn ngôn ngữ lập trình phù hợp

      • Tổ chức dữ liệu

    • Hiệu chỉnh: Test và sửa sai sót
    • Viết tài liệu:
      • Mô tả chương trình

      • Hướng dẫn sử dụng

    * Các bước để giải một bài toán trên máy tính:

    + Xác định bài toán

    + Lựa chọn hoặc thiết kế thuật toán

    + Viết chương trình

    + Hiệu chỉnh

    + Viết tài liệu.

    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.

    - 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ì ƯCLN[M, N] = ƯCLN[M,N- M].

    •Thuật toán

    - Thuật toán diễn tả bằng cách liệt kê

    + Bước 1: Nhập M, N;

    + Bước 2: Nếu M = N đưa ra ƯCLN[M,N]=M; Kết thúc;

    + Bước 3: 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.

    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

    Để 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].

    Video liên quan

    Chủ Đề