Giải SBT Tin 9 Cánh diều Bài 3: Thực hành tạo và chạy thử chương trình có đáp án
8 câu hỏi
Cho thuật toán được mô tả như sau:
Bước 1: Nhập giá trị của NNN
Bước 2: Tổng = 0
Bước 3: Lặp NNN lần:
Nhập ai
Tổng được cộng thêm (ai)2
Hết lặp
Bước 4: Thông báo kết quả là Tổng
Hãy chọn chương trình thể hiện đúng thuật toán đó.

Đáp án: Chương trình C
Xét những chương trình đã cho ở Bài F13. Với những chương trình không đưa ra kết quả đúng với thuật toán, hãy chỉ ra lỗi của chương trình và nêu phương án sửa.
Chương trình A: Trong Scratch khi nhập một giá trị vào, giá trị đó sẽ được lưu vào biến answer, chương trình A thiếu lệnh 
sau khi nhập giá trị N và thiếu lệnh
sau khi nhập giá trị a1 vào.
Chương trình B: Lệnh
cần được thực hiện sau mỗi khi nhập a1, tức là phải nằm trong vòng lặp N lần.
Chương trình D: Sai công thức tính, thuật toán dùng để tính tổng các (a1)2, còn chương trình này lại tính (a₁ + a₂ + ... + aₙ)². Do vậy cần thay như sau:

Kết quả của bước Xác định bài toán và Tìm thuật toán của một bài toán như sau:
Xác định bài toán:
Input: Số NNN nguyên dương
Output: Các số là ước thực sự của NNN
Tìm thuật toán:
Bước 1: Nhập giá trị của NNN
Bước 2: Lặp với i từ 2 đến N/2:
Nếu (N chia hết cho i) và (i không chia hết cho 2):
Thông báo i là một ước số thực sự và lẻ
Hết nhánh
Hết lặp
Trong những chương trình dưới đây, hãy chọn chương trình đúng để giải bài toán nói trên theo thuật toán đã mô tả.




Đáp án: Chương trình A
Xét những chương trình đã cho ở Bài F15. Với những chương trình không đưa ra kết quả đúng với thuật toán, hãy chỉ ra lỗi của chương trình và nêu phương án sửa.

Kết quả của bước Xác định bài toán và Tìm thuật toán của một bài toán như sau:
Xác định bài toán:
Input: Số cạnh của đa giác đều là 6
Output: Một đa giác đều 6 cạnh, các cạnh màu xanh lá cây
Tìm thuật toán:
Bước 1: Chọn màu vẽ là màu xanh lá cây
Bước 2: Lặp 6 lần:
Vẽ một cạnh có độ dài bằng 45 bước
Xoay hướng bút vẽ đi 60 độ
Hết lặp
Hãy tạo chương trình theo thuật toán trên và cho biết kết quả có khớp với Output của bài toán hay không?

Chương trình cho kết quả như Output.
Bài toán:
Với mỗi một số tự nhiên được đưa ra, hãy cho biết số đó có phải là số nguyên tố hay không (với yêu cầu không được dùng bảng các số nguyên tố để tra cứu).
Hãy tạo chương trình để giải bài toán này.
Theo mô tả thuật toán như phát biểu 4) Bài F11, chương trình sẽ là:

Để giải bài toán cho ở Bài F18, chương trình sau đây còn lỗi. Hãy phát hiện và sửa lỗi cho chương trình:


Bài toán:
Hãy thể hiện trò chơi có tên là Thử thách Đoán số. Máy tính bí mật lấy một số bất kỳ trong 10 số tự nhiên đầu tiên. Người chơi chỉ được đoán nhiều nhất 4 lần. Mỗi lần đoán sai, máy sẽ đưa ra thông báo số bí mật lớn hơn hay nhỏ hơn số vừa đoán. Nếu đoán đúng với không quá 4 lần đoán thì người chơi đã vượt được thử thách này.
Hãy tạo chương trình để giải bài toán này.
Xác định bài toán:
Input:
Số bí mật là số tự nhiên trong khoảng từ 1 đến 10 (do máy lấy ngẫu nhiên).
Số lần đoán số không quá 4 lần.
Output:
Máy cho nhập vào số lần đoán (không quá 4 lần). Mỗi lần đoán sai, máy thông báo số bí mật lớn hơn hay nhỏ hơn so với số vừa đoán.
Tìm thuật toán:
Bước 1: Máy tính lấy ngẫu nhiên một số trong phạm vi từ 1 đến 10, lưu giữ số này trong biến Số bí mật.
Bước 2: Lặp 4 lần:
2.1: Yêu cầu nhập số vừa đoán, lưu vào biến Số đoán.
2.2: Nếu (Số đoán = Số bí mật):
Thông báo "Bạn đoán đúng"
Kết thúc trò chơi.
Trái lại:
Nếu (Số đoán > Số bí mật): Thông báo "Sai! Phải là số nhỏ hơn".
Trái lại: Thông báo "Sai! Phải là số lớn hơn".
Hết nhánh
Hết nhánh
Hết lặp
Viết chương trình:



