Mô tả các bước tính bằng tay phép tính luỹ thừa
Mô tả các bước tính bằng tay phép tính luỹ thừa 2^11 theo hai chương trình trên. Cách nào nhanh hơn?
Giải Chuyên đề Tin 11 Bài 7: Thiết kế thuật toán theo kĩ thuật chia để trị - Kết nối tri thức
Câu hỏi 1 trang 34 Chuyên đề Tin học 11: Mô tả các bước tính bằng tay phép tính luỹ thừa 2^11 theo hai chương trình trên. Cách nào nhanh hơn?
Lời giải:
Vì a^n = a x a^(n -1)
1. Tính bình thường:
- Để tính bằng phương pháp bình thường, ta sẽ lặp lại việc nhân 2 với chính nó 21 lần (tức là 2* 2*...*2, lặp lại 21 lần).
Tuy nhiên, việc tính toán này sẽ rất tốn thời gian và không hiệu quả khi giá trị của số mũ lớn hơn.
2. Chia để trị:
Bước 1: Chia bài toán thành các bài toán con
Chia 11 cho 2, ta được kết quả là 5 và số dư là 1: 11 = 2 * 5 + 1
Bước 2: Giải quyết các bài toán con
Ta cần tính 2^5 để giải quyết bài toán con này. Tiếp tục áp dụng phương pháp chia để trị trên bài toán con này:
Chia 5 cho 2, ta được kết quả là 2 và số dư là 1: 5 = 2 * 2 + 1
Tiếp tục giải bài toán con tiếp theo:
Chia 2 cho 2, ta được kết quả là 1 và số dư là 0: 2 = 2 * 1 + 0
Bây giờ ta đã giải quyết được tất cả các bài toán con.
Bước 3: Tính toán kết quả
Từ bài toán con cuối cùng, ta có được: 2^1 = 2
Từ bài toán con thứ hai, ta có được: 2^2 = (2^1)^2 = 2^2 = 4
Từ bài toán con đầu tiên, ta có được: 2^5 = (2^2)^2 * 2 = 4^2 * 2 = 16 * 2 = 32
Vậy: 2^11 = 2^5 * 2^5 * 2 = 32 * 32 * 2 = 1024
Do đó, 2^11 = 1024.
Lời giải bài tập Chuyên đề Tin 11 Bài 7: Thiết kế thuật toán theo kĩ thuật chia để trị hay, chi tiết khác:
Câu hỏi 2 trang 34 Chuyên đề Tin học 11: Phép tính a^21 sẽ cần dùng bao nhiêu phép nhân? ....
Hoạt động 2 trang 34 Chuyên đề Tin học 11: Xây dựng thuật toán cho bài toán sau: ....
Câu hỏi 1 trang 36 Chuyên đề Tin học 11: Hãy giải thích kĩ hơn chương trình 2 ....
Câu hỏi 2 trang 36 Chuyên đề Tin học 11: Nêu những điểm khác biệt của chương trình trên ....
Luyện tập 1 trang 36 Chuyên đề Tin học 11: Viết chương trình không đệ quy cho bài toán ....
Luyện tập 1 trang 36 Chuyên đề Tin học 11: Viết chương trình đo thời gian thực chạy để ....
Vận dụng 1 trang 36 Chuyên đề Tin học 11: Tìm cách thiết lập thuật toán tính ....
Vận dụng 2 trang 36 Chuyên đề Tin học 11: Bài toán tìm vùng chỉ số của ....