Bài 13. Quy trình giao bài toán cho máy tính giải quyết trang 78, 79, 80 SGK Tin học 9 Chân trời sáng tạo

Ở Bài 12, em đã sử dụng phương pháp liệt kê các bước


CH tr 78

Trả lời câu hỏi Khởi động trang 78 SGK Tin học 9 Chân trời sáng tạo

Ở Bài 12, em đã sử dụng phương pháp liệt kê các bước, sơ đồ khối để mô tả thuật toán. Theo em, với cách mô tả thuật toán như vậy, máy tính đã "hiểu" và thực hiện được nhiệm vụ hay chưa? Tại sao?


Phương pháp giải:

HS liên hệ bản thân kết hợp với tham khảo thông tin sách báo, internet để hoàn thành bài tập trên


Lời giải chi tiết:

Theo em, với cách mô tả thuật toán như vậy, máy tính chưa "hiểu" và thực hiện được nhiệm vụ. Bởi vì, máy tính thực hiện các nhiệm vụ dựa trên mã lệnh



CH1

Trả lời câu hỏi 1 trang 79 SGK Tin học 9 Chân trời sáng tạo

Theo em, sau khi mô tả thuật toán, để máy tính thực hiện được, ta phải làm gì? Tại sao? Nêu ví dụ minh hoạ.


Phương pháp giải:

 HS liên hệ bản thân, tham khảo thông tin sách báo, internet để hoàn thành bài tập trên

Lời giải chi tiết:

- Theo em, sau khi mô tả thuật toán, để máy tính thực hiện được, ta phải chuyển thuật toán thành chương trình cho máy tính. Bởi vì, chương trình là bản mô tả thuật toán bằng ngôn ngữ mà máy tính có thể hiểu và thực hiện được

- Ví dụ: Thuật toán tính và đưa ra lời khuyên theo chỉ số BMI cần được chuyển thành chương trình. 



CH2

Trả lời câu hỏi 2 trang 79 SGK Tin học 9 Chân trời sáng tạo

Em hãy nêu những việc cần làm để giao bài toán tìm ƯCLN của hai số nguyên dương a, b cho máy tính giải quyết.


Phương pháp giải:

HS liên hệ bản thân kết hợp với tham khảo thông tin sách báo, internet để hoàn thành bài tập trên


Lời giải chi tiết:

Bước 1. Thu thập dữ liệu: Nhập giá trị của hai số nguyên dương a và b từ người dùng hoặc từ một nguồn dữ liệu khác.

Bước 2. Viết thuật toán: Mô tả thuật toán tìm ƯCLN của hai số nguyên dương a và b. Có nhiều thuật toán khác nhau để tìm ƯCLN, như thuật toán Euclid hay thuật toán tìm ước số chung.

Bước 3. Chọn ngôn ngữ lập trình: Chọn một ngôn ngữ lập trình để viết mã lệnh thực hiện thuật toán. Có nhiều ngôn ngữ lập trình phổ biến như Python, C++, Java, JavaScript, v.v.

Bước 4. Viết mã lệnh: Sử dụng ngôn ngữ lập trình đã chọn, viết mã lệnh thực hiện thuật toán tìm ƯCLN. Mã lệnh sẽ bao gồm các phép toán và lệnh điều khiển cần thiết để thực hiện thuật toán.



CH3

Trả lời câu hỏi 3 trang 79 SGK Tin học 9 Chân trời sáng tạo

Đối với bài toán tìm và đưa ra lời khuyên theo chỉ số BMI, em hãy cho biết

a. Sau khi đã tạo được chương trình như ở Hình 2, quy trình giao bài toán cho máy tính giải quyết đã được thực hiện đến bước nào.

b. Sản phẩm của mỗi bước đã thực hiện.

c. Bước cần thực hiện tiếp theo.


Phương pháp giải:

HS liên hệ bản thân kết hợp với tham khảo thông tin sách báo, internet để hoàn thành bài tập trên


Lời giải chi tiết:

a. Quy trình giao bài toán cho máy tính giải quyết đã được thực hiện đến bước: viết chương trình chỉ số BMI và đưa ra lời khuyên dựa trên kết quả BMI.

b. Sản phẩm

- Bước 1: Thu thập dữ liệu - Chương trình đã yêu cầu người dùng nhập chiều cao và cân nặng để tính toán chỉ số BMI.

- Bước 2: Tính chỉ số BMI - Chương trình đã tính toán chỉ số BMI bằng cách sử dụng công thức BMI = cân nặng / (chiều cao * chiều cao).

- Bước 3: Đưa ra lời khuyên - Chương trình đã dựa vào kết quả BMI để đưa ra lời khuyên về tình trạng cơ thể của người dùng.

c. Bước cần thực hiện tiếp theo là thêm phần kiểm tra và xử lý lỗi. Điều này đảm bảo rằng chương trình có thể xử lý các tình huống không mong muốn hoặc dữ liệu không hợp lệ từ người dùng. Sau khi đã kiểm thử, sửa lỗi, ta chạy chương trình để máy tính thực hiện nhiệm vụ được giao



LT1

Trả lời câu hỏi Luyện tập 1 trang 80 SGK Tin học 9 Chân trời sáng tạo

Theo em, tại sao ta phải chuyển thuật toán thành chương trình cho máy tính?


Phương pháp giải:

HS liên hệ bản thân kết hợp với tham khảo thông tin sách báo, internet để hoàn thành bài tập trên


Lời giải chi tiết:

Theo em, ta phải chuyển thuật toán thành chương trình cho máy tính bởi vì máy tính chỉ có hiểu và thực thi các lệnh, phép tính cụ thể được viết bằng một ngôn ngữ lập trình.



LT2

Trả lời câu hỏi Luyện tập 2 trang 80 SGK Tin học 9 Chân trời sáng tạo

Nêu quy trình con người giao bài toán cho máy tính giải quyết. Cho ví dụ minh hoạ

Phương pháp giải:

HS liên hệ bản thân kết hợp với tham khảo thông tin sách báo, internet để hoàn thành bài tập trên


Lời giải chi tiết:

* Quy trình gồm 4 bước: 

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

- Xây dựng thuật toán

- Lập trình

- Kiểm thử và chạy chương trình

* Ví dụ: 

- Xác định bài toán: tìm ƯCLN của hai số nguyên dương a, b được nhập từ bàn phím

- Xây dựng thuật toán: mô tả thuật toán bằng phương pháp liệt kê các bước hoặc sơ đồ khối

- Lập trình: ngôn ngữ lập trình Scratch 

- Kiểm thử và chạy chương trình: phát hiện và loại bỏ lỗi



TH1

Trả lời câu hỏi Thực hành 1 trang 80 SGK Tin học 9 Chân trời sáng tạo

Tạo chương trình Scratch để máy tính thực hiện được bài toán tính và đưa ra lời khuyên theo chỉ số BMI (Hình 1). Thực hiện kiểm thử, gỡ lỗi cho chương trình (nếu có). Chạy chương trình, nhập chiều cao, cân nặng và cho biết lời khuyên máy tính đưa ra cho em.


Phương pháp giải:

HS liên hệ bản thân, thảo luận với bạn kết hợp với tham khảo thông tin sách báo, internet để hoàn thành bài tập trên


Lời giải chi tiết:

HS tự thực hiện theo yêu cầu đề bài

when green flag clicked

ask "Nhập chiều cao (m):" and wait

set [height v] to (answer)

ask "Nhập cân nặng (kg):" and wait

set [weight v] to (answer)

set [BMI v] to (weight) / ((height) * (height))

say (join "Chỉ số BMI của bạn là " (BMI))

if <(BMI) < (18.5)> then

  say "Bạn đang gầy, hãy tăng cân!"

else

  if <(BMI) < (24.9)> then

    say "Bạn có cân nặng bình thường, hãy duy trì!"

  else

    if <(BMI) < (29.9)> then

      say "Bạn bị thừa cân, hãy giảm cân!"

    else

      say "Bạn bị béo phì, hãy giảm cân!"

    end

  end

end



TH2

Trả lời câu hỏi Thực hành 2 trang 80 SGK Tin học 9 Chân trời sáng tạo

Hãy làm việc cùng với bạn để giao cho máy tính giải quyết bài toán tìm bội số chung nhỏ nhất của hai số nguyên dương a, b theo quy trình bốn bước: Xác định bài toán; Xây dựng thuật toán; Lập trình; Kiểm thử và chạy chương trình.

Phương pháp giải:

HS liên hệ bản thân, thảo luận với bạn kết hợp với tham khảo thông tin sách báo, internet để hoàn thành bài tập trên

Lời giải chi tiết:

Bước 1: Xác định bài toán: Bài toán là tìm bội số chung nhỏ nhất của hai số nguyên dương a và b.

Bước 2: Xây dựng thuật toán: 

Một thuật toán phổ biến để tìm bội số chung nhỏ nhất là sử dụng thuật toán Euclid mở rộng hoặc sử dụng phép nhân của hai số để tìm ra kết quả. Bạn có thể chọn thuật toán mà bạn muốn sử dụng.

Bước 3: Lập trình 

Chọn một ngôn ngữ lập trình và viết mã lệnh thực hiện thuật toán đã chọn. Bạn có thể sử dụng ngôn ngữ lập trình như Python, C++, Java, JavaScript, v.v.

Bước 4: Kiểm thử và chạy chương trình 

Nhập giá trị của a và b từ người dùng hoặc sử dụng các giá trị mẫu để kiểm thử chương trình. Chạy chương trình và kiểm tra kết quả để đảm bảo rằng nó trả về bội số chung nhỏ nhất của a và b.



VD

Trả lời câu hỏi Vận dụng trang 80 SGK Tin học 9 Chân trời sáng tạo

Hình 4 là thuật toán của bài toán hỗ trợ quản lí mượn sách được một nhóm học sinh mô tả bằng phương pháp liệt kê các bước. Trên cơ sở thuật toán ở Hình 4, em hãy tạo chương trình Scratch để máy tính thực hiện bài toán hỗ trợ quản lí mượn sách.


Phương pháp giải:

HS liên hệ bản thân kết hợp với tham khảo thông tin sách báo, internet để hoàn thành bài tập trên


Lời giải chi tiết:

HS tự thực hiện theo yêu cầu của đề bài

when green flag clicked

set [Trả lời v] to "Có"

repeat until <(Trả lời) = "Không">

  ask "Tên sách muốn mượn:" and wait

  set [sachmuon v] to (answer)

  if <(sachmuon) = [Tên sách]> then

    set [soluong v] to [Số lượng]

    if <(soluong) = [0]> then

      say "Cuốn sách đã được mượn hết"

    else

      say (join "Vị trí của cuốn sách: " (Vị trí))

      change [soluong] by (-1)

    end

  end

  ask "Tiếp tục (Có/Không)?" and wait

  set [Trả lời v] to (answer)

end


Bài giải tiếp theo