Tổng hợp các dạng bài tập thuật toán tin học lớp 10 năm 2020 phần 1

Trước khi hoàn toàn có thể vận dụng thuần thục các giải pháp giải cho từng dạng bài tập thuật toán tin học lớp 10. Bạn cần ôn tập lại triết lý một cách kỹ càng để hiểu thực chất của các dạng, tránh trường hợp học lỏi, học vẹt nhanh quên và sẽ bồn chồn khi các dạng bài được biến hóa đôi chút khác với bài tập cơ bản.

Tóm tắt lý thuyết về bài toán và thuật toán Tin lớp 10:

Phiên bản tóm tắt giúp các bạn ôn luyện những nội dung cơ bản để nắm thực chất các dạng bài tập thuận tiện hơn.

Khái niệm bài toán

– Bài toán là một việc nào đó mà con người muốn máy tính thực hiện.

– Các yếu tố của một bài toán : + Input : tin tức đã biết, thông tin đưa vào máy tính. + Output : tin tức cần tìm, thông tin lấy ra từ máy tính. – Ví dụ : Bài toán tìm ước chung lớn nhất của 2 số nguyên dương, khi đó : + Input : hai số nguyên dương A, B. + Output : ước chung lớn nhất của A và B

Khái niệm thuật toán

a ) Khái niệm Thuật toán là 1 dãy hữu hạn các thao tác được sắp xếp theo 1 trình tự xác lập sao cho sau khi triển khai dãy thao tác ấy, từ Input của bài toán, ta nhận được Output cần tìm. b ) Biểu diễn thuật toán – Sử dụng cách liệt kê : nêu ra tuần tự các thao tác cần triển khai. – Sử dụng sơ đồ khối để miêu tả thuật toán.

Lý thuyết bài toán và thuật toán tin 10

c ) Các đặc thù của thuật toán – Tính dừng : thuật toán phải kết thúc sau 1 số hữu hạn lần thực thi các thao tác. – Tính xác lập : sau khi triển khai 1 thao tác thì hoặc là thuật toán kết thúc hoặc là có đúng 1 thao tác xác lập để được thực thi tiếp theo. – Tính đúng đắn : sau khi thuật toán kết thúc, ta phải nhận được Output cần tìm.

Một số dạng bài tập thuật toán tin học lớp 10 P1 kèm hướng dẫn phương pháp giải:

Dạng 1: Kiểm tra tính nguyên tố của 1 số nguyên dương

• Xác định bài toán – Input : N là một số ít nguyên dương ; – Output : ″ N là số nguyên tố ″ hoặc ″ N không là số nguyên tố ″. • Ý tưởng : – Định nghĩa : ″ Một số nguyên dương N là số nguyên tố nếu nó chỉ có đúng hai ước là 1 và N ″ – Nếu N = 1 thì N không là số nguyên tố. – Nếu 1 < N < 4 thì N là số nguyên tố. - N ≥ 4 : Tìm ước i tiên phong > 1 của N. + Nếu i < N thì N không là số nguyên tố ( vì N có tối thiểu 3 ước 1, i, N ). + Nếu i = N thì N là số nguyên tố. • Xây dựng thuật toán a ) Cách liệt kê - Bước 1 : Nhập số nguyên dương N ; - Bước 2 : Nếu N = 1 thì thông tin ″ N không là số nguyên tố ″, kết thúc ; - Bước 3 : Nếu N < 4 thì thông tin ″ N là số nguyên tố ″, kết thúc ; - Bước 4 : i ← 2 ; - Bước 5 : Nếu i là ước của N thì đến bước 7 ; - Bước 6 : i ← i + 1 rồi quay lại bước 5 ; ( Tăng i lên 1 đơn vị chức năng ) - Bước 7 : Nếu i = N thì thông tin ″ N là số nguyên tố ″, ngược lại thì thông tin ″ N không là số nguyên tố ″, kết thúc ; b ) Sơ đồ khối

Các dạng bài tập thuật toán tin học lớp 10

Lưu ý : Nếu N > = 4 và không có ước trong khoanh vùng phạm vi từ 2 đến phần nguyên căn bậc 2 của N thì N là số nguyên tố.

Dạng 2: Sắp xếp bằng cách tráo đổi

• Xác định bài toán – Input : Dãy A gồm N số nguyên a1, a2, …, an – Output : Dãy A được sắp xếp thành dãy không giảm. • Ý tưởng – Với mỗi cặp số hạng đứng liền kề trong dãy, nếu số trước lớn hơn số sau ta đổi chỗ chúng cho nhau. ( Các số lớn sẽ được đẩy dần về vị trí xác lập cuối dãy ). – Việc này lặp lại nhiều lượt, mỗi lượt thực thi nhiều lần so sánh cho đến khi không có sự đổi chỗ nào xảy ra nữa. • Xây dựng thuật toán a ) Cách liệt kê – Bước 1 : Nhập N, các số hạng a1, a2, …, an ; – Bước 2 : M ← N ; – Bước 3 : Nếu M < 2 thì đưa ra dãy A đã được sắp xếp, rồi kết thúc ; - Bước 4 : M ← M – 1, i ← 0 ; - Bước 5 : i ← i + 1 ; - Bước 6 : Nếu i > M thì quay lại bước 3 ; – Bước 7 : Nếu ai > ai + 1 thì tráo đổi ai và ai + 1 cho nhau ; – Bước 8 : Quay lại bước 5 ; b ) Sơ đồ khối

Các dạng bài tập thuật toán tin học lớp 10

Dạng 3: Bài toán tìm kiếm

• Xác định bài toán – Input : Dãy A gồm N số nguyên khác nhau a1, a2, …, an và một số ít nguyên k ( khóa ) Ví dụ : A gồm các số nguyên ″ 5 7 1 4 2 9 8 11 25 51 ″ và k = 2 ( k = 6 ). – Output : Vị trí i mà ai = k hoặc thông tin không tìm thấy k trong dãy. Vị trí của 2 trong dãy là 5 ( không tìm thấy 6 ) • Ý tưởng Tìm kiếm tuần tự được triển khai một cách tự nhiên : Lần lượt đi từ số hạng thứ nhất, ta so sánh giá trị số hạng đang xét với khóa cho đến khi gặp một số ít hạng bằng khóa hoặc dãy đã được xét hết mà không tìm thấy giá trị của khóa trên dãy. • Xây dựng thuật toán a ) Cách liệt kê – Bước 1 : Nhập N, các số hạng a1, a2, …, aN và giá trị khoá k ; – Bước 2 : i ← 1 ; – Bước 3 : Nếu ai = k thì thông tin chỉ số i, rồi kết thúc ; – Bước 4 : i ← i + 1 ; – Bước 5 : Nếu i > N thì thông tin dãy A không có số hạng nào có giá trị bằng k, rồi kết thúc ; – Bước 6 : Quay lại bước 3 ; b ) Sơ đồ khối

Các dạng bài tập thuật toán tin học lớp 10

Các dạng bài tập thuật toán tin học lớp 10

Dạng 4: Tìm kiếm nhị phân

• Xác định bài toán – Input : Dãy A là dãy tăng gồm N số nguyên khác nhau a1, a2, …, an và một số ít nguyên k. Ví dụ : Dãy A gồm các số nguyên 2 4 5 6 9 21 22 30 31 33 và k = 21 ( k = 25 ) – Output : Vị trí i mà ai = k hoặc thông tin không tìm thấy k trong dãy. Vị trí của 21 trong dãy là 6 ( không tìm thấy 25 ) • Ý tưởng Sử dụng đặc thù dãy A đã sắp xếp tăng, ta tìm cách thu hẹp nhanh vùng tìm kiếm bằng cách so sánh k với số hạng ở giữa khoanh vùng phạm vi tìm kiếm ( agiữa ), khi đó chỉ xảy ra một trong ba trường hợp : – Nếu a giữa = k thì tìm được chỉ số, kết thúc ; – Nếu a giữa > k thì việc tìm kiếm thu hẹp chỉ xét từ adầu ( khoanh vùng phạm vi ) → agiữa – 1 ; – Nếu a giữa < k việc tìm kiếm thu hẹp chỉ xét từ agiữa + 1 → acuối ( khoanh vùng phạm vi ). Quá trình trên được lặp lại cho đến khi tìm thấy khóa k trên dãy A hoặc khoanh vùng phạm vi tìm kiếm bằng rỗng. • Xây dựng thuật toán a ) Cách liệt kê - Bước 1 : Nhập N, các số hạng a1, a2, …, aN và giá trị khoá k ; - Bước 2 : Đầu ← 1 ; Cuối ← N ; - Bước 3 : Giữa ← [ ( Đầu + Cuối ) / 2 ] ; - Bước 4 : Nếu agiữa = k thì thông tin chỉ số Giữa, rồi kết thúc ; - Bước 5 : Nếu agiữa > k thì đặt Cuối = Giữa – 1 rồi chuyển sang bước 7 ; – Bước 6 : Đầu ← Giữa + 1 ; – Bước 7 : Nếu Đầu > Cuối thì thông tin không tìm thấy khóa k trên dãy, rồi kết thúc ; – Bước 8 : Quay lại bước 3. b ) Sơ đồ khối

Các dạng bài tập thuật toán tin học lớp 10

Một số bài tập trắc nghiệm về bài toán và thuật toán môn Tin học lớp 10:

Câu 1:

A. Thể hiện thao tác giám sát B. Thể hiện thao tác so sánh C. Quy định trình tự thực thi các thao tác

D. Thể hiện các thao tác nhập, xuất dữ liệu

Câu 2: Thuật toán có tính:

A. Tính xác lập, tính link, tính đúng đắn B. Tính dừng, tính link, tính xác lập C. Tính dừng, tính xác lập, tính đúng đắn D. Tính tuần tự : Từ input cho ra output

Câu 3: Trong tin học sơ đồ khối là:

A. Ngôn ngữ lập trình bậc cao B. Sơ đồ miêu tả thuật toán C. Sơ đồ về cấu trúc máy tính D. Sơ đồ phong cách thiết kế vi điện tử

Câu 4: Chọn phát biểu đúng khi nói về Bài toán và thuật toán:

A. Trong phạm vi Tin học, ta hoàn toàn có thể ý niệm bài toán là việc nào đó mà ta muốn máy tính triển khai B. Thuật toán ( giải thuật ) để giải một bài toán là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác lập sao cho sau khi thực thi dãy thao tác đó, từ Input của bài toán này, ta nhận được Output cần tìm C. Sơ đồ khối là sơ đồ diễn đạt thuật toán D. Cả ba câu trên đều đúng

Câu 5: Thuật toán sắp xếp bằng đổi chỗ cho dãy số A theo trật tự tăng dần dừng lại khi nào?

A. Khi M = 1 và không còn sự đổi chỗ B. Khi số lớn nhất trôi về cuối dãy C. Khi ai > ai + 1 D. Tất cả các giải pháp

Câu 6: Cho thuật toán tìm giá trị nhỏ nhất trong một dãy số nguyên sử dụng phương pháp liệt kê dưới đây:

Bước 1 : Nhập N, các số hạng a1, a2, …., aN ; Bước 2 : Min ← ai, i ← 2 ; Bước 3 : Nếu i < N thì đưa đưa ra giá trị Min rồi kết thúc ; Bước 4 : Bước 4.1 : Nếu ai > Min thì Min ← ai ; Bước 4.2 : i ← i + 1, quay lại bước 3. Hãy chọn những bước sai trong thuật toán trên : A. Bước 2 B. Bước 3 C. Bước 4.1 D. Bước 4.2

Câu 7: Thuật toán tốt là thuật toán:

A. Thời gian chạy nhanh B. Tốn ít bộ nhớ C. Cả A và B đều đúng D. Tất cả các giải pháp đều sai

Câu 8: Input của bài toán: “Hoán đổi giá trị của hai biến số thực A và C dùng biến trung gian B” là:

A. Hai số thực A, C B. Hai số thực A, B C. Hai số thực B, C D. Ba số thực A, B, C

Câu 9: Cho bài toán kiểm tra tính nguyên tố của một số nguyên dương N. Hãy xác đinh Output của bài toán này?

A. N là số nguyên tố B. N không là số nguyên tố C. N là số nguyên tố hoặc N không là số nguyên tố D. Tất cả các ý trên đều sai

Câu 10: “…(1) là một dãy hữu hạn các …(2) được sắp xếp theo một trình tự xác định sao cho khi thực hiện dãy các thao tác ấy, từ …(3) của bài toán, ta nhận được …(4) cần tìm”. Các cụm từ còn thiếu lần lượt là?

A. Input – Output – thuật toán – thao tác B. Thuật toán – thao tác – Input – Output C. Thuật toán – thao tác – Output – Input D. Thao tác – Thuật toán – Input – Output

Đáp án

Câu 1:

Đáp án : A

Giải thích :

Khi trình diễn thuật toán bằng lưu đồ ( sơ đồ khối ) : + Hình chữ nhật có ý nghĩa là biểu lộ thao tác thống kê giám sát. + Hình thoi bộc lộ thao tác so sánh. + Các mũi tên bộc lộ pháp luật trình tự triển khai các thao tác. + Hình ô van biểu lộ các thao tác nhập, xuất dữ liệu.

Câu 2:

Đáp án : C

Giải thích :

+ Thuật toán phải kết thúc sau một số ít hữu hạn lần thực thi cac thao tác → tính dừng. + Sau khi triển khai một thao tác thì hoạc là thuật toán kết thúc hoặc có đúng 1 thao tác xác lập để thực thi tiếp theo → tính xác lập. + Sau khi thuật toán kết thúc, ta phải nhận được Output của cần tìm → Tính đúng đắn.

Câu 3:

Đáp án : B

Giải thích :

Trong tin học sơ đồ khối là sơ đồ diễn đạt dãy các thao tác biểu lộ thuật toán bởi 1 số ít khối và đường mũi tên.

Câu 4:

Đáp án : D

Giải thích :

+ Bài toán là việc nào đó mà ta muốn máy tính triển khai. + Thuật toán ( giải thuật ) để giải một bài toán là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác lập sao cho sau khi triển khai dãy thao tác đó, từ Input của bài toán này, ta nhận được Output cần tìm. + Sơ đồ khối là sơ đồ miêu tả thuật toán.

Câu 5:

Đáp án : A

Giải thích :

Thuật toán sắp xếp bằng đổi chỗ cho dãy số A theo trật tự tăng dần dừng lại khi : + M = 1 thì trong dãy có 1 số ít hạng nên không cần đổi chỗ và thuật toán kết thúc + Không còn sự đổi chỗ vì với mỗi cặp số hạng liền kề trong dãy, nếu số trước lớn hơn sau ta đổi chỗ chúng cho nhau và lặp đi lặp lại, cho đến khi còn số hạng nào đổi chỗ nữa thì dừng.

Câu 6:

Đáp án : C

Giải thích :

Bước 4.1: Nếu ai> Min thì Min ← ai là sai vì nếu ai> Min. vậy sẽ có 1 số hạng ai lớn hơn Min. Vậy Min là nhỏ nhất nên không thể gán ai cho Min. Cần sửa là Nếu ai Min.

Câu 7:

Đáp án : C

Giải thích :

Thuật toán tốt là thuật toán tốn ít bộ nhớ và thời hạn giúp máy tính hiểu và xử lý một bài toán nhanh, đúng mực.

Câu 8:

Đáp án : A

Giải thích :

Input của bài toán là các thông tin đã cho vì thế Input của bài toán : ” Hoán đổi giá trị của hai biến số thực A và C dùng biến trung gian B ” là hai số thực A, C.

Câu 9:

Đáp án : C

Giải thích :

Output là các thông tin cần tìm vì thế bài toán kiểm tra tính nguyên tố của 1 số ít nguyên dương N, Output của bài toán này là N là số nguyên tố hoặc N không là số nguyên tố.

Câu 10:

Đáp án : C

Giải thích :

Thuật toán là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác định sao cho khi thực hiện dãy các thao tác ấy, từ Input của bài toán, ta nhận được Output cần tìm.

File tải miễn phí Full Lý thuyết + Các dạng bài tập thuật toán tin học lớp 10 P1 có hướng dẫn phương pháp giải:

Chúc các em thành công xuất sắc !