Toptailieu.vn biên soạn và giới thiệu lời giải Tin học 11 (Cánh diều)Bài 4: Làm mịn dần từng bước từ thuật toán đến chương trình máy tính hay, chi tiết sẽ giúp học sinh dễ dàng trả lời câu hỏi từ đó học tốt môn Tin học 11.
Tin học 11 (Cánh diều) Bài 4: Làm mịn dần từng bước từ thuật toán đến chương trình máy tính
Lời giải:
Cần nắm được các thuật toán
Hiểu được yêu cầu đề bài và chọn thuật toán phù hợp
Lời giải:
Theo em, đây là “chia để trị” => Làm mịn dẫn các bước mô tả thuật toán là để tiến gắn hơn đến các câu lệnh của ngôn ngữ lập trinh. Ở đây lựa chọn sử dụng mã gia để trình bày vì nó ngắn gọn, dễ hiểu và không phụ thuộc vào ngôn ngữ lập trình.
Cách thức chung: Chuyển các cụm từ mô tả một "việc cần làm” thành các đoạn mã giá tiến gần hơn một bước đến các câu lệnh của chương trình chi tiết.
b. Em hãy viết chương trình thực hiện sàng số nguyên tố sử dụng thuật toán và sử dụng thuật toán Eratosthenes. Sau đó chạy thử và so sánh kết quả.
Lời giải:
a.
Đọc mã lệnh của thuật toán Eratosthenes cho ở Hình 5 và mô tả liệt kê các bước của thuật toán và bằng mã giả:
Đục bỏ dần các số không nguyên tố bằng cách đánh dấu “là hợp số” (không phải số nguyên tố) mỗi khi biết số đó là bội số của một số nguyên tố.
b.
Gợi ý: Ví dụ “không là số chính phương”
Lời giải:
Khái niệm số chính phương trong python cũng giống như trên. Chúng ta coi một số là số chính phương trong Python nếu như nó bằng bình phương của một số tự nhiên. Đây là chìa khóa thứ nhất giúp chúng ta có thể tìm được số chính phương trong python.
Nói cách khác, căn bậc 2 của một số chính phương chính là một số tự nhiên. Đây là chìa khóa thứ 2 giúp chúng ta có thể tìm được số chính phương trong python.
Vận dụng 2 trang 106 Tin học 11: Viết mô tả mã giả cho thuật toán tương ứng ở câu 1.
Lời giải:
def find_square_number(n):
#flag = 1 => số chính phương
#flag = 0 => không phải số chính phương
flag = 0;
#Tìm số bất kỳ nhỏ hơn hoặc bằng n mà bình phương bằng n
if any(i**2 == n for i in range(n+1)):
flag = 1
return flag
Lời giải:
Lời giải:
Phép gán được sử dụng để gán giá trị cho một biến trong lập trình. Trong mã giả, phép gán được viết bằng dấu bằng "=", với biến ở bên trái dấu bằng và giá trị muốn gán ở bên phải. Dấu bằng "=" trong mã giả chỉ thực hiện phép gán giá trị cho biến, không phải là một mệnh đề so sánh.
For/in{i/I chẵn, 5+1<=i<=15-1
Lời giải:
Nếu bắt đầu ta có j nhận giá trị 5 và n nhận giá trị 15 thì kết quả là: 6,7,8,9,10,11,12,13,14.
Xem thêm các bài giải Tin học 11 Cánh diều hay, chi tiết khác:
Bài 3: Thực hành về tệp, mảng và danh sách
CÔNG TY TNHH ĐẦU TƯ VÀ DỊCH VỤ GIÁO DỤC VIETJACK
- Người đại diện: Nguyễn Thanh Tuyền
- Số giấy chứng nhận đăng ký kinh doanh: 0108307822, ngày cấp: 04/06/2018, nơi cấp: Sở Kế hoạch và Đầu tư thành phố Hà Nội.
2021 © All Rights Reserved.