Tin học 10 Cánh diều Bài 9: Thực hành câu lệnh lặp

Giải Tin học 10 | No tags

Mục lục

Với giải bài tập Tin học 10 Bài 9: Thực hành câu lệnh lặp sách Cánh diều hay nhất, ngắn gọn giúp học sinh dễ dàng làm bài tập & trả lời câu hỏi Tin 10 Bài 9.

Giải Tin học 10 Cánh diều Bài 9: Thực hành câu lệnh lặp

1.Làm quen với câu lệnh lặp trong Python

Giải Tin học 10 trang 84

Em hãy dự đoán xem chương trình ở Hình 1 sau đây sẽ đưa ra màn hình những gì

Giải Tin học 10 Bài 9: Thực hành câu lệnh lặp

Bài 1 trang 84 Tin học 10: Em hãy dự đoán xem chương trình ở Hình 1 sau đây sẽ đưa ra màn hình những gì.

Chạy chương trình để kiểm tra kết quả.

Em hãy dự đoán xem chương trình ở Hình 1 sau đây sẽ đưa ra màn hình những gì

Lời giải:

- Kết quả:

1 1

2 3

3 6

4 10

Em hãy dự đoán xem chương trình ở Hình 1 sau đây sẽ đưa ra màn hình những gì



Xem thêm lời giải bài tập Tin học 10 Cánh diều hay nhất, ngắn gọn khác:

Bạn Hà viết chương trình ở Hình 2 để đếm xem số nguyên n nhập vào từ bàn phím

Giải Tin học 10 Bài 9: Thực hành câu lệnh lặp

Bài 2 trang 84 Tin học 10: Bạn Hà viết chương trình ở Hình 2 để đếm xem số nguyên n nhập vào từ bàn phím có bao nhiêu ước thực sự (khác 1 và n). Tuy nhiên, chương trình chạy ra kết quả sai, em hãy sửa lỗi giúp Hà.

Bạn Hà viết chương trình ở Hình 2 để đếm xem số nguyên n nhập vào từ bàn phím

Lời giải:

Chương trình ở hình 2 có 2 lỗi:

Một là, sau điều kiện ở lệnh while phải có dấu hai chấm (:).

Hai là, chương trình là đếm số ước thực sự của n, vì vậy sau mỗi lần tìm thấy ước của n (n%i == 0) thì biến so_uoc tăng lên 1 đơn vị. Giá trị cuối cùng của biến so_uoc chính là số lượng ước của n. Vì vậy, câu lệnh print phải được đặt ngoài vòng lặp while để sau khi đếm xong số ước chúng ta mới viết ra màn hình. Chương trình viết lại như sau:

Bạn Hà viết chương trình ở Hình 2 để đếm xem số nguyên n nhập vào từ bàn phím

Bạn Hà viết chương trình ở Hình 2 để đếm xem số nguyên n nhập vào từ bàn phím



Cách làm tối ưu

Chúng ta nhận thấy rằng, các ước thực sự của n sẽ nằm trong khoảng từ 2 đến n-1.

- Dựa vào tính chất trong toán học, nếu n có ước thực sự thì chắc chắn có ước trong khoảng từ 2 đến căn của n.

- Nếu i là ước của n thì n/i chắc chắn là ước của n. Thật vậy: giả sử n=24 thì 2 là ước của 24 và 24/2 = 12 cũng là ước của 24.

Vì vậy để đếm số ước thực sự của n thì chúng ta chỉ cần duyệt i tăng từ 2 đến căn n. Nếu n chia hết cho i thì số lượng ước tăng lên 1. Và nếu i khác n/i thì số lượng ước sẽ tăng thêm 1 nữa. Ví dụ n=24, với i = 2 thì số lượng ước tăng 1, vì n/i = 12 khác 2 nên số lượng ước tăng thêm 1. Nếu n=9, i =3 thì chúng ta chỉ cộng thêm 1 ước vì n/i =i.

Chương trình tối ưu được viết như sau:

Bạn Hà viết chương trình ở Hình 2 để đếm xem số nguyên n nhập vào từ bàn phím

Xem thêm lời giải bài tập Tin học 10 Cánh diều hay nhất, ngắn gọn khác:

Tham khảo chương trình ở Ví dụ 5 trong Bài 8, em hãy viết chương trình yêu cầu

Giải Tin học 10 Bài 9: Thực hành câu lệnh lặp

Bài 3 trang 84 Tin học 10: Tham khảo chương trình ở Ví dụ 5 trong Bài 8, em hãy viết chương trình yêu cầu người dùng nhập một số nguyên lớn hơn 1 000 000. Chừng nào người dùng nhập chưa đúng yêu cầu thì có thông báo yêu cầu nhập lại, chương trình chỉ kết thúc với thông báo “Cảm ơn, bạn đã nhập dữ liệu đúng yêu cầu” khi số người dùng gõ vào thoả mãn điều kiện đặt ra.

Lời giải:

n = int(input("Nhập số n "))

while(n <= 1000000 ):

print("Dữ liệu nhập chưa đúng, nhập lại!!!")

n = int(input("Nhập số n "))

print("Cảm ơn, bạn đã nhập dữ liệu đúng yêu cầu.")

Tham khảo chương trình ở Ví dụ 5 trong Bài 8, em hãy viết chương trình yêu cầu



Xem thêm lời giải bài tập Tin học 10 Cánh diều hay nhất, ngắn gọn khác:

Em hãy lập trình giải bài toán cổ ở hình bên một cách tổng quát bằng cách

Giải Tin học 10 Bài 9: Thực hành câu lệnh lặp

Vận dụng trang 85 Tin học 10: Em hãy lập trình giải bài toán cổ ở hình bên một cách tổng quát bằng cách nhập hai số nguyên dương n, m tương ứng là tổng số con và tổng số chân sau đó đưa ra màn hình số lượng gà và số lượng chó. Kiểm thử chương trình với n = 36 và m = 100.

Em hãy lập trình giải bài toán cổ ở hình bên một cách tổng quát bằng cách

Lời giải:

n = int(input("Nhập số con "))

m = int(input("Nhập số chân"))

for i in range (n):

if 4 * i + 2 * (36 - i) == m:

print("Số gà là: ", 36 - i)

print("Số chó là: ", i)

Em hãy lập trình giải bài toán cổ ở hình bên một cách tổng quát bằng cách



Xem thêm lời giải bài tập Tin học 10 Cánh diều hay nhất, ngắn gọn khác: