Tắt QC

Giải VBT Tin học 9 Kết nối bài 16: Thực hành Lập chương trình máy tính

Giải chi tiết VBT Tin học 9 kết nối tri thức bài 16: Thực hành Lập chương trình máy tính. Tech12h sẽ hướng dẫn giải tất cả câu hỏi và bài tập với cách giải nhanh và dễ hiểu nhất. Hi vọng, thông qua đó học sinh được củng cố kiến thức và nắm bài học tốt hơn.

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Câu 16.1: Ở nước ta và nhiều nước khác trên thế giới, đơn vị đo nhiệt độ là độ C (Celsius). Tuy nhiên ở Anh và Mỹ, người ta đo nhiệt độ bằng độ F (Fahrenheit) - được đặt theo tên của nhà vật lý người Đức Daniel Gabriel Fahrenheit. Công thức chuyển từ độ C sang độ F là:

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Hãy viết chương trình chuyển số đo nhiệt độ từ độ C sang độ F và ngược lại.

Bài giải chi tiết:

Chuyển số đo nhiệt độ giữa độ C và độ F

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Câu 16.2: Viết chương trình nhập vào số nguyên dương n. Tính và đưa ra màn hình tổng của các số lẻ nhỏ hơn n. Nếu số đó nhập từ bàn phím là lẻ thì loại ra.

Bài giải chi tiết:

Các biến đầu vào là a, b, c

Chúng cần được sắp xếp lại để các điều kiện thử từ dạng đơn dễ kiểm tra nhất đến dạng phức tạp nhất giúp đoạn mã được thực hiện ngắn gọn hơn. Việc sắp xếp được thực hiện theo ba bước (từ lớn đến nhỏ hoặc từ nhỏ đến lớn, tùy nhau) như sau:

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Bước đầu tiên được thể hiện trong Scratch như Hình 16.2.

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Biến v là trung gian giữ hoán đổi hai giá trị a và b.

Sau khi sắp xếp, ta có a < b < c. Việc phân loại tam giác cần tới nhiều lệnh để nhanh. Em có thể ghép các khối lệnh liên hệ nhanh sau vào vị trí phù hợp theo thuật toán ở Câu 15.1b. Để không mất nhiều thời gian cho việc tạo các khối lệnh, em có thể truy cập dự án 940537231 trên trang Scratch trực tuyến.

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Câu 16.3: Viết chương trình tính tổng các số chẵn nhỏ hơn n.

Bài giải chi tiết:

Bài toán rút gọn phân số được phát biểu như sau:

Đầu vào: hai số nguyên dương a và b.

Đầu ra: hai số nguyên dương c và d, sao cho ab=cd\frac{a}{b} = \frac{c}{d}ba​=dc​, và c, d nguyên tố cùng nhau.

Để rút gọn phân số thành tối giản, em cần chia cả tử số và mẫu số cho ước chung lớn nhất của chúng. Em có thể viết chương trình tính ước chung lớn nhất của hai số nguyên dương a và b như sách giáo khoa.

Việc nhập giá trị từ số, mẫu số của biến được thực hiện ở khối lệnh trong Hình 16.4a.

Việc tính ước chung lớn nhất của a và b được thực hiện bằng khối lệnh lập trong Hình 16.4b. Sau khi thực hiện khối lệnh, em sẽ có ước chung lớn nhất của số cần lại, nhấn số lại bẳng a + b.

Việc rút gọn chỉ cần lấy a chia và lấy số dư tử số và mẫu số của a và b, so sánh với 0 nên ước đã tìm ra từ trước sẽ không có giá trị cần tối giản trong Hình 16.4c.

Em có thể tham khảo bài tập này ở dự án 940553303 trên trang Scratch trực tuyến.

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Câu 16.4: Viết chương trình tìm số Fibonacci tại vị trí n.

Bài giải chi tiết:

Số Fibonacci thứ nhất và thứ hai lần lượt bằng 0 và 1. Các số Fibonacci từ thứ ba trở đi được tính bằng một phép lặp. Trong đó:

Trước khi lặp, a và b lần lượt được gán giá trị bằng 0 và 1 là hai số Fibonacci đầu tiên.

Phép lặp được thực hiện với n - 2 bước.

Trong mỗi bước lặp, f được gán bằng a + b, còn a và b được gán bằng hai số Fibonacci gần nhất.

Dự án 940958163 trên trang Scratch trực tuyến thể hiện thuật toán tính số Fibonacci thứ n trong Câu 15.4 sau khi đã được dịch phép gán vào chương trình bằng khối lệnh.

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Câu 16.5: Viết chương trình tính tổng lặp Fibonacci của các số chẵn nhỏ hơn n.

Bài giải chi tiết:

Việc tính tổng lập phương của n số tự nhiên đầu tiên từ bàn phím được thực hiện như trong Câu 15.5.

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Hình 16.5. Những khối lệnh chính tính tổng lập phương của n số tự nhiên đầu tiên

Em có thể tham khảo lời giải bài tập này ở dự án 940987364 trên trang Scratch trực tuyến.

Câu 16.6: Viết chương trình tìm ước của các ước của một số nguyên dương n (không kể chính nó).

Bài giải chi tiết:

Việc tính tổng các ước của một số nguyên dương n (không kể chính nó) với n được nhập từ bàn phím và cho biết n có phải là số hoàn hảo hay không được thực hiện như mô tả trong Câu 15.6. Khác với khối lệnh trong Câu 15.6, phép lặp chỉ thực hiện n/2 bước và việc cộng dồn các ước (n chia hết cho i) được hoàn thành bằng phép gán.

Em có thể tham khảo lời giải bài tập này ở dự án 941000544 trên trang Scratch trực tuyến.

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Câu 16.7: Viết chương trình liệt kê các cặp số bạn của các số nguyên dương n cho trước. Mỗi cặp được liệt kê không quá một lần.

Bài giải chi tiết:

Chương trình liệt kê các cặp số bạn bè không vượt quá số n cho trước được thực hiện như mô tả trong Câu 15.7. Tuy nhiên, trong Scratch, giá trị tính được từ khối lệnh TongUoc() được lưu trữ bên n và với mỗi số i, việc kiểm tra và in ra cặp số bạn bè có dạng như sau:

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Em có thể tham khảo lời giải bài tập này ở dự án 941003216 trên trang Scratch trực tuyến.

Câu 16.8: Viết chương trình tìm các số hoàn hảo không vượt quá số cho trước.

Bài giải chi tiết:

Đối với bài toán liệt kê các cặp số hoàn hảo, mỗi cặp số bạn bè được kiểm tra đến điều kiện trở thành đơn giản hơn. Em có thể tham khảo lời giải bài tập này ở dự án 941018894 trên trang Scratch trực tuyến.

Câu 16.9: Viết chương trình kiểm tra một số có phải là số mạnh mẽ (strong number).

Bài giải chi tiết:

Thuật toán phân tích một số thành tích của các thừa số nguyên tố, thừa số nào xuất hiện nhiều lần thì ghi rõ bằng vòng lặp lồng nhau, có thể được mô tả bằng cách liệt kê như trong Câu 15.11. Em có thể tham khảo lời giải bài tập này ở dự án 941019591 trên trang Scratch trực tuyến.

Câu 16.10: Một số tự nhiên bằng tổng giai thừa các chữ số của nó có gọi là số mạnh mẽ (strong number). Sử dụng thuật toán trong Câu 15.9, trình bày thuật toán liệt kê các số mạnh mẽ không vượt quá n.

Bài giải chi tiết:

Trong chương trình mô phỏng đồng hồ báo kim, hình ảnh mặt đồng hồ có thể được sử dụng làm sân khấu với một kim giờ không chuyển động.

Mỗi phút (60 giây), kim giờ quay 360°/60 = mỗi giây 6°. Chuyển động này được thực hiện bằng các lệnh thay đổi hướng của kim giờ trong Scratch bằng cách lệnh:

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Tương tự như trên, kim phút quay 6° mỗi phút, tương đương với 0.1° mỗi giây. Câu lệnh điều khiển giúp kim phút quay một cách mượt mà, không bị đột ngột khi được điều chỉnh bằng cách lệnh thay đổi hướng của kim giờ sau mỗi giây:

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Tương tự như trên với kim giờ nhỏ, mỗi giờ 30° mỗi phút:

Em có thể tham khảo lời giải bài tập này ở dự án 813755610 trên trang Scratch trực tuyến.

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Lời giải sách bài tập Tin học 9 Bài 16: Thực hành: Lập chương trình máy tính hay khác:

Câu 16.11: Viết chương trình nhập vào một văn bản. Đếm các từ trong văn bản đó. Bản sao của văn bản đã nhập từ bàn phím sẽ được đếm lại và trả về tổng số từ.

Bài giải chi tiết:

Bài tập này minh họa cho việc xử lí ngôn ngữ gồm dịch giọng nói và văn bản. Em có thể thực hiện với các bước như sau:

BÀI 16 – THỰC HÀNH – LẬP CHƯƠNG TRÌNH MÁY TÍNH

Hình 16.8

Sử dụng phần mềm chuyển đổi giọng nói thành văn bản (Speech to Text) và dịch văn bản (Text to Speech) và phần mềm Dịch.

Em có thể khai thác các tính năng này để làm bài thực hành. Để tham khảo lời giải bài này, em có thể truy cập dự án 813527760 trên trang Scratch trực tuyến. Trong dự án đó, em có thể:

Nhập chuỗi văn bản và văn bản chuyển đổi hiển thị bằng tiếng Việt hoặc tiếng Anh.

Nhấp chuột vào nhân loa để phát âm thanh câu tiếng Anh được dịch từ câu tiếng Việt được nhập từ bàn phím.


Xem đáp án

Bình luận

Giải bài tập những môn khác