1. Trang chủ
  2. » Giáo án - Bài giảng

SKKN THCS: Một số giải pháp giúp học sinh lớp 8, nắm vững các thuật toán và mô tả thuật toán, qua bài “Từ bài toán đến chương trình

12 1,3K 11

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 212,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong quá trình dạy học, tôi nhận thấy việc tiếp cận với lập trình của học sinh còn rất khó khăn, nhất là kỹ năng trong xây dựng thuật toán và mô tả bài toán để tiến tới viết chương trình. Bản chất thuật toán là sáng tạo, tư duy của con người, không phải của máy tính, nếu học sinh không nắm được thuật toán sẽ rất khó để viết được chương trình. Một số chương trình các em viết xong khi chạy chương trình kết quả không như mong muốn vì thuật toán không đúng hoặc không tối ưu. Chính vì vậy để học sinh có thể nắm vững được thuật toán và biết cách mô tả thuật toán đối với một số bài toán trong yêu cầu chuẩn kiến thức, kỹ năng tạo điều kiện để các em có thể thành thạo viết chương trình tốt, tôi đã mạnh dạn ứng dụng Sáng kiến kinh nghiệm “Một số giải pháp giúp học sinh lớp 8, nắm vững các thuật toán và mô tả thuật toán, qua bài “Từ bài toán đến chương trình” .

Trang 1

MỘT SỐ GIẢI PHÁP GIÚP HỌC SINH LỚP 8 NẮM VỮNG CÁC THUẬT TOÁN VÀ MÔ TẢ THUẬT TOÁN

QUA BÀI: “TỪ BÀI TOÁN ĐẾN CHƯƠNG TRÌNH”

A ĐẶT VẤN ĐỀ

Để học tốt lập trình, dù là ngôn ngữ nào thì xác định bài toán và mô tả thuật toán là điều đầu tiên học sinh cần phải nắm vững Việc xác định bài toán và xây dựng thuật toán là những nội dung quan trọng, nếu không nói là quan trọng nhất Nếu học sinh nắm vững được những kiến thức này thì sẽ dễ dàng hơn rất nhiều trong việc tiếp thu kiến thức ở các bài sau, để viết được chương trình tốt Tuy rằng ngôn ngữ lập trình Pascal là một ngôn ngữ có cấu trúc trong sáng, có tính sư phạm cao, phổ biến, phù hợp với giáo viên và học sinh, thường được dạy trong nhà trường và dành cho cho người mới học lập trình Nhưng việc học lập trình đang còn khá mới

mẻ và tương đối khó với đa số học sinh lớp 8 Việc nắm được thuật toán và mô tả thuật toán của từng bài toán nhiều học sinh không làm được và tỏ ra khá lúng túng

Trong quá trình dạy học, tôi nhận thấy việc tiếp cận với lập trình của học sinh còn rất khó khăn, nhất là kỹ năng trong xây dựng thuật toán và mô tả bài toán

để tiến tới viết chương trình Bản chất thuật toán là sáng tạo, tư duy của con người, không phải của máy tính, nếu học sinh không nắm được thuật toán sẽ rất khó để viết được chương trình Một số chương trình các em viết xong khi chạy chương trình kết quả không như mong muốn vì thuật toán không đúng hoặc không tối ưu

Chính vì vậy để học sinh có thể nắm vững được thuật toán và biết cách mô tả thuật toán đối với một số bài toán trong yêu cầu chuẩn kiến thức, kỹ năng tạo điều kiện để các em có thể thành thạo viết chương trình tốt, tôi đã mạnh dạn ứng dụng

Sáng kiến kinh nghiệm “Một số giải pháp giúp học sinh lớp 8, nắm vững các thuật toán và mô tả thuật toán, qua bài “Từ bài toán đến chương trình”

B GIẢI QUYẾT VẤN ĐỀ

I CƠ SỞ LÝ LUẬN CỦA VẤN ĐỀ:

THUẬT TOÁN (algorithm) để 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 định sao cho sau khi thực hiện dãy thao tác

ấy, từ Input của bài toán, ta nhận được Output cần tìm

Thuật toán được mô tả theo rất nhiều cách: trong ngôn ngữ tự nhiên (natural

languages), bằng sơ đồ khối (flowcharts) hoặc trong cái gọi là mã giả (pseudocode)

một loại ngôn ngữ thể hiện thuật toán, không phụ thuộc vào ngôn ngữ lập trình cụ thể

Với học sinh, khái niệm thuật toán là thuật ngữ còn khá mới mẻ đối với các

em khi bắt đầu học lập trình Và với học sinh lớp 8 khả năng tiếp thu về kiến thức lập trình lại càng khó khăn hơn

Trang 2

Đứng trước một bài toán lập trình nhiều em còn lúng túng không tìm ra cách giải quyết bài toán Điều này sẽ gây hậu quả học sinh không thể mô tả được thuật toán và viết được chương trình dẫn đến các em có tâm lí chán nản không thích học môn học này

Nắm vững được thuật toán và biết mô tả thuật toán sẽ giúp các em có kiến thức về lập trình mà cụ thể là lập trình Pascal, tạo tiền đề cho sau này các em học lập trình bằng ngôn ngữ khác

II THỰC TRẠNG CỦA VẤN ĐỀ

1 Thực trạng:

1.1 Thực trạng việc dạy nội dung “Từ bài toán đến chương trình”

Nội dung về các bài toán và thuật toán trong (bài 5) là một nội dung quan trọng và tương đối khó đối với học sinh Các thuật toán ở bài này là những thuật toán cơ bản học sinh cần tiếp thu

Tuy nhiên làm thế nào để học sinh có thể hiểu, nắm và ghi nhớ được các thuật toán này, nhiều giáo viên vẫn chưa tìm ra cách để giảng dạy phù hợp với khả năng tiếp thu của học sinh

Một số giáo viên lựa chọn các bài toán và thuật toán để giới thiệu cho học sinh chưa phù hợp, còn lúng túng trong cách truyền đạt dẫn đến học sinh chỉ nắm thuật toán máy móc chứ không hiểu bản chất của thuật toán

Một số giáo viên khác lại lựa chọn giới thiệu thuật toán và mô tả thuật toán bằng cả hai cách liệt kê các bước và bằng sơ đồ khối Điều này làm phức tạp hóa vấn đề, gây quá tải cho học sinh dẫn đến việc tiếp thu kiến thức không sâu và nhanh quên

1.2 Thực trạng việc học nội dung “Từ bài toán đến chương trình”

Bài toán và thuật toán để giải quyết bài toán là những nội dung rất quan trọng trong lập trình Học sinh nắm vững được những kiến thức này thì sẽ dễ dàng hơn rất nhiều trong việc tiếp thu kiến thức trong các bài sau

Tuy nhiên, rất nhiều học sinh do lần đầu tiên được học lập trình nên trước một bài toán các em tỏ ra lúng túng và rất khó khăn để tìm ra thuật toán hay còn gọi cách giải một bài toán Đa số các em còn rất bỡ ngỡ và cảm thấy xa lạ với môn học lập trình và đặc biệt là việc tìm ra thuật toán ở các bài toán cụ thể

Trong chương trình Tin học 8 các em bước đầu làm quen với lập trình bằng ngôn ngữ Pascal Nhưng việc nắm về kiến thức lập trình và đặc biệt là các thuật toán được giới thiệu trong bài 5 còn rất yếu, nhiều học sinh không nắm được các thuật toán hoặc nắm một cách máy móc nên rất dễ quên Chính vì vậy dẫn đến nhiều em không biết áp dụng các câu lệnh đã học để viết chương trình cụ thể trong các bài tập ở những bài học sau

Trang 3

2 Kết quả:

Rất ít học sinh tìm được các bước để giải một bài toán, nếu có tìm được các

em cũng không nhớ được lâu dẫn đến số lượng học sinh nắm thuật toán và mô tả thuật toán còn thấp, làm cho kết quả môn học không cao Qua khảo sát ở khối lớp 8 năm học 2013-2014 khi chưa áp dụng những giải pháp sau khi học xong bài 5, với

đề kiểm tra 15 phút câu hỏi như sau:

Câu 1: Hãy chỉ ra INPUT và OUTPUT của các bài toán sau:

a) Xác định số học sinh trong lớp cùng mang họ Trần b) Tìm số các số có giá trị nhỏ nhất trong n số đã cho

Câu 2: Hãy mô tả thuật toán tìm số lớn nhất trong ba số a, b, c

Kết quả số học sinh chưa nắm được thuật toán rất nhiều trong đó có những học sinh nắm thuật toán một cách máy móc chứ chưa hiểu bản chất của vấn đề cụ thể:

Lớp Số HS Nắm vững thuật toán Chưa nắm vững thuật toán

Từ thực trạng trên để học sinh nắm vững được thuật toán và mô tả thuật toán,

mà cụ thể là những thuật toán trong bài 5 “Từ bài toán đến chương trình” Tin học 8 tôi sử dụng một số giải pháp và đã có kết quả

III GIẢI PHÁP VÀ TỔ CHỨC THỰC HIỆN:

Để học sinh có thể nắm được thuật toán và mô tả thuật toán thì việc đầu tiên giáo viên cần quan tâm là làm sao học sinh xác định được bài toán Để dẫn dắt đến

khái niệm xác định bài toán, giáo viên có thể dựa vào giả thiết và kết luận của một

bài toán trong môn Toán để dẫn dắt học sinh xác định Input, Output của bài toán

trong Tin học Trong môn Toán, thường trước khi bắt đầu giải một bài toán các em

đã quen với việc tìm giả thiết và kết luận của bài toán Trong Tin học, phần giả

thiết là các điều kiện cho trước (Input), phần kết luận là kết quả cần thu được (Output)

Có thể sử dụng một bài toán đơn giản, quen thuộc với học sinh để học sinh

dễ dàng tìm ra được điều kiện cho trước (giả thiết) và kết quả cần thu được (kết luận) của bài toán này (không nhất thiết cứ phải lấy ví dụ trong SGK)

Sau đó giáo viên dẫn dắt học sinh đến khái niệm thuật toán và mô tả thuật

toán Bước đầu để học sinh nắm được thuật toán chính là các bước để giải một bài toán Việc mô tả thuật toán có thể bằng cách liệt kê các bước hoặc mô tả bằng sơ

đồ khối Nhưng vì các em bước đầu mới làm quen với thuật toán và mô tả thuật toán, giáo viên không nên giới thiệu về cách mô tả bằng sơ đồ khối Mà nên lựa

Trang 4

chọn mô tả thuật toán bằng cách liệt kê các bước để tránh phức tạp vấn đề và phù hợp với trình độ lứa tuổi của các em

Về cơ bản mô tả thuật toán bằng cách liệt kê gần gũi với cách suy nghĩ của học sinh THCS hơn Việc so sánh, đối chiếu giữa thuật toán được mô tả bằng cách liệt kê và chương trình tương ứng có thể dễ dàng hơn với học sinh Chính vì vậy lựa chọn các bài toán gần gũi, quen thuộc với học sinh là giải pháp đầu tiên mà tôi đưa ra áp dụng

Giải pháp 1: Chọn thuật toán của bài toán là một công việc, một nhiệm

vụ gắn liền với cuộc sống hàng ngày:

Khái niệm bài toán và giải bài toán đã trở thành quen thuộc với học sinh trong các môn học khác như Toán, Vật lí, Tuy nhiên giáo viên cần giới thiệu bài toán trong Tin học không chỉ là những bài toán trong lĩnh vực toán học mà còn có thể là một nhiệm vụ, một công việc cần giải quyết trong cuộc sống thực tiễn (nhiều khi chẳng liên quan gì đến toán học) như: tính điểm trung bình một môn học một học kì, nấu một món ăn hay điều khiển rô-bốt nhặt rác chẳng hạn

Để cho học sinh mở rộng nhận thức về khái niệm bài toán mà các em được biết ở môn học khác, giáo viên có thể sử dụng ví dụ về các bài toán là một công việc, một nhiệm vụ gắn liền với cuộc sống hàng ngày Do quen thuộc nên việc tìm

ra điều kiện cho trước, kết quả thu được của bài toán và mô tả thuật toán sẽ dễ dàng hơn với học sinh

Ví dụ 1: Bài toán “Làm món trứng tráng”

Với ví dụ này giáo viên yêu cầu học sinh tìm Input (điều kiện cho trước), Output (kết quả cần thu được) của bài toán sau đó yêu cầu các em liệt kê các

bước để “Làm món trứng tráng”

INPUT: Trứng, dầu ăn, muối và hành

OUTPUT: Trứng tráng

Mô tả thuật toán:

quấy mạnh cho đến khi đều

trong khoảng 1 phút

1 phút

Rõ ràng, bất kì ai hiểu biết một chút về làm bếp theo đúng trình tự và chỉ dẫn

ở các bước trong thuật toán nêu trên đều có thể tự làm cho mình món trứng tráng Đối với học sinh đó là những bước làm khá quen thuộc, giáo viên hướng dẫn cho

học sinh những thao thác các em thực hiện lần lượt để “Làm món trứng tráng” đó

chính là thuật toán của bài toán mà chúng ta cần phải mô tả

Ví dụ 2: Bài toán “Pha trà mời khách”

Trang 5

INPUT: Trà, nước sôi, ấm và chén

OUTPUT: Chén trà đã pha mời khách

Mô tả thuật toán:

Từ Ví dụ 1 và Ví dụ 2 ta thấy những bài toán trên có thuật toán gần gũi,

quen thuộc với học sinh Nên các em có thể dễ dàng liệt kê các bước như trên và đó chính là cách thường dùng để mô tả thuật toán.Từ đó sẽ giúp các em dễ hiểu hơn về cách tìm ra thuật toán và mô tả thuật toán cho bài toán được yêu cầu.Qua đó giáo viên giới thiệu thêm cho học sinh, nếu không có mô tả gì khác trong thuật toán, các bước của thuật toán được thực hiện tuần tự như đã được chỉ ra Mặc dù không được nêu rõ trong khái niệm thuật toán, song thuật toán phải được mô tả cụ thể để bất kì đối tượng nào, với cùng khả năng và điều kiện như nhau, khi thực hiện thuật toán cũng đều đạt được kết quả như nhau

Như vậy học sinh đã nắm được thuật toán chính là dãy hữu hạn các thao tác cần thực hiện theo một trình tự xác định để thu được kết qủa cần thiết từ những điều kiện cho trước Từ việc học sinh nắm vững được khái niệm bài toán, thuật

toán sẽ hình thành cho các em kĩ năng xác định bài toán (tìm Input, Output) và mô

tả thuật toán (tìm cách giải bài toán và diễn tả bằng các lệnh cần phải thực hiện)

đơn giản bằng liệt kê các bước ở các bài toán cụ thể

Giải pháp 2: Sử dụng hình ảnh trực quan hướng dẫn học sinh nắm thuật toán và mô tả thuật toán:

Để học sinh có thể hiểu rõ về thuật toán và biết cách mô tả trước một bài toán cụ thể giáo viên có thể sử dụng các hình ảnh trực quan giúp học sinh tìm ra thuật toán dễ dàng hơn

Ví dụ 3: Một hình A được ghép từ một hình chữ nhật với chiều rộng 2a chiều dài b và một hình bán nguyệt bán kính a Tính diện tích hình A

Rõ ràng với bài toán cụ thể này học sinh sẽ lúng túng tìm ra thuật toán và mô

tả thuật toán nếu không có sự gợi ý của giáo viên

2a b

A

Trang 6

Trước tiên giáo viên yêu cầu học sinh xác định Input, Output của bài toán như sau:

INPUT: a là bán kính của hình bán nguyệt, 2a là chiều rộng của hình chữ

nhật, b là chiều dài của hình chữ nhật.

OUTPUT: Diện tích hình A

Để các em có thể hình dung ra thuật toán của bài toán này, giáo viên chuẩn

bị một hình chữ nhật, một hình bán nguyệt được cắt bằng giấy màu dán lên bảng cho học sinh quan sát:

Học sinh quan sát và dễ dàng nhận thấy diện tích của hình A chính là diện

tích của hình chữ nhật cộng với diện tích của hình bán nguyệt

Như vậy học sinh sẽ biết ngay tính diện tích hình chữ nhật, diện tích hình

bán nguyệt (diện tích hình tròn chia 2) bằng công thức đã học ở Toán học và đó

chính là thuật toán của bài toán này Cụ thể giáo viên có thể sử dụng kí hiệu phép gán trong ngôn ngữ lập trình Pascal để hướng dẫn học sinh mô tả thuật toán cụ thể sau đó đưa ra dạng tổng quát

S1:= 2ab { tính diện tích hình chữ nhật}

S2:= ∏ a 2 /2 { tính diện tích bán nguyệt}

S:=S1 + S2 { tính diện tích hình A}

Mô tả thuật toán:

Lưu ý: Trong biểu diễn thuật toán người ta thường dùng kí hiệu ← để chỉ

phép gán giá trị của một biểu thức cho một biến Giáo viên có thể giới thiệu từ ngôn ngữ lập trình cụ thể Pascal rồi khái quát lên thành những kiến thức, kĩ năng lập trình nói chung Cách tiếp cận từ cụ thể đến khái quát sẽ phù hợp hơn với phần lớn học sinh THCS

Ví dụ 4 : Đổi giá trị của hai biến x và y

Đây là bài toán yêu cầu hoán đổi giá trị của hai biến x và y Giáo viên sử dụng thuật toán dùng một biến phụ z để tráo đổi hai giá trị của x và y Tuy nhiên

học sinh sẽ rất khó tưởng tượng ra thuật toán này Giáo viên có thể lấy ví dụ minh hoạ trực quan như việc muốn tráo đổi giữa hai cốc nước

Giả sử có hai cốc nước, một cốc nước chứa nước màu đỏ, một cốc nước chứa nước màu xanh Làm thế nào để tráo đổi nước giữa hai cốc nước này?

2a

b

2a

?

Trang 7

Đương nhiên học sinh sẽ trả lời được là phải dùng cốc thứ ba làm trung gian

để thực hiện điều này

Cụ thể: Giáo viên chuẩn bị ba chiếc cốc như hình dưới, giả sử cốc X chứa nước màu đỏ, cốc Y chứa nước màu xanh và cốc Z là cốc trung gian, không chứa gì

cả Các em hãy quan sát và nêu cách tráo đổi nước chứa trong cốc X và cốc Y?

Với hình ảnh trực quan như vậy học sinh sẽ biết ngay các thao tác để tráo đổi nước giữa hai cốc

- Đổ nước đỏ trong cốc X sang cốc Z;

- Đổ nước xanh trong cốc Y sang cốc X;

- Đổ nước đỏ trong cốc Z sang cốc Y

Sau khi thực hiện như trên nước trong hai cốc đã được tráo sang nhau

Như vậy học sinh dễ dàng nhận thấy việc tráo đổi giá trị của hai biến cũng

tương tự, trong chương trình phải sử dụng biến z làm biến trung gian để lưu giữ giá trị ban đầu của biến x Cụ thể giáo viên có thể sử dụng kí hiệu phép gán trong ngôn

ngữ lập trình Pascal để hướng dẫn học sinh mô tả thuật toán cụ thể sau đó đưa ra dạng tổng quát

Z

X X

2

Trang 8

z:=x; {Lưu giá trị của biến x vào biến z}

x:=y; {Giá trị của biến x được thay bằng giá trị của biến y}

y:=z; { Giá trị của biến y được thay bằng giá trị của biến z, giá trị của biến z lúc này chính bằng giá trị của biết x ban đầu}

Đây chính là thuật toán tráo đổi giá trị của hai biến x và y và lúc này việc mô tả

thuật toán là dễ dàng với học sinh vì thuật toán tráo đổi đã được học sinh nắm rất rõ: INPUT: Hai biến có giá trị tương ứng là a và b

OUTPUT: Hai biến có giá trị tương ứng là b và a

Mô tả thuật toán:

giá trị ban đầu của biến x}

Ví dụ 5: Tìm số lớn trong dãy A các số a1, a2, …, an cho trước

Ý tưởng xây dựng thuật toán này là ta sẽ dùng biến MAX để lưu giá trị phần

tử lớn nhất của dãy A Việc xác định MAX có thể được thực hiện như sau: Đầu tiên gán giá trị a1 cho biến MAX Tiếp theo, lần lượt so sánh các số a2, …, an của dãy A với MAX Nếu ai > MAX, ta gán ai cho MAX

Tuy nhiên học sinh sẽ rât khó hình dung ra thuật toán Với bài toán cụ thể này giáo viên cần chuẩn bị bốn quả bóng to nhỏ khác nhau (Nếu không có bóng giáo viên có thể chuẩn bị bằng các hộp giấy, hay sử dụng các cốc nước…có hình dáng to nhỏ khác nhau để học sinh quan sát được) và được đánh số từ 1 đến 4 để minh họa

- Trước hết, ta giả sử quả bóng lớn nhất là quả bóng số 1, tức là MAX=1

- So sánh MAX (quả bóng số 1) với quả bóng số 2 Vì quả bóng số 2 nhỏ hơn quả bóng số 1, do đó MAX vẫn bằng 1

- Tiếp theo, so sánh MAX (quả bóng số 1) với quả bóng số 3 Vì quả bóng

số 3 lớn hơn quả bóng số 1, do đó MAX được đặt lại bằng 3 (quả bóng số 3)

- Cuối cùng so sánh MAX (quả bóng số 3) với quả bóng số 4 Quả bóng số 3 lớn hơn quả bóng số 4, do đó MAX vẫn bằng 3 (quả bóng thứ 3) Kết quả, quả bóng lớn nhất là quả bóng thứ 3

2

1

4 3

Trang 9

Như vậy, việc minh họa thuật toán trên với trường hợp tìm ra quả bóng lớn nhất trong bốn quả bóng, bằng cách lần lượt so sánh các quả bóng từ 1 đến 4 với nhau, giúp học sinh tiếp thu thuật toán rất nhanh, dễ nhớ

Thuật toán được mô tả như sau:

INPUT: Dãy A các số a1, a2, …, an (n>=1)

OUTPUT: giá trị MAX=max{ a1, a2, …, an}

Mô tả thuật toán:

Rõ ràng với việc dùng những hình ảnh trực quan để minh họa thuật toán, học sinh có thể tiếp thu thuật toán nhanh và ghi nhớ thuật toán cũng dễ dàng và sâu sắc hơn

Giải pháp 3: Mô phỏng thuật toán với một bộ dữ liệu cụ thể

Sau khi xây dựng thuật toán, người ta thường “thực hiện bằng tay” để thử thuật toán với các bộ dữ liệu INPUT khác nhau Sau mỗi lần “thực hiện”, kiểm tra kết quả thu được với yêu cầu của đề bài xem có thỏa mãn không Quá trình như vậy được gọi là mô phỏng thuật toán Để học sinh có thể hiểu và ghi nhớ sâu hơn thuật toán của bài toán, giáo viên có thể chọn ra những thuật toán mà học sinh còn khó hiểu, khó nhớ để mô phỏng lại với những bộ dữ liệu cụ thể

Ví dụ 6: Tính tổng của 100 số tự nhiên đầu tiên

Ý tưởng của giải bài toán trên là dùng một biến SUM để lưu giá trị của tổng Việc tính SUM có thể được thực hiện như sau: Đầu tiên gán cho SUM giá trị bằng

0 Tiếp theo lần lượt thêm các giá trị 1, 2, 3,…, 100 vào SUM

Với thuật toán này giáo viên mô phỏng bộ dữ liệu N=10 (10 số tự nhiên đầu tiên) cho học sinh quan sát

+ Mô phỏng thuật toán tính tổng N số tự nhiên đầu tiên, với N = 10 (trong SGK, N= 100).

I 1 2 3 4 5 6 7 8 9 10 11 i≤ N Đúng Đúng Đúng Đúng Đúng Đúng Đúng Đúng Đúng Đúng Sai SUM

(Tổng)

thúc Như vậy với việc mô phỏng bằng số liệu thực tế học sinh sẽ được củng cố thêm về thuật toán vừa học

Trang 10

Ví dụ 7: Tìm số lớn nhất trong dãy số N cho trước:

Ý tưởng của thuật toán này là ta sẽ dùng biến MAX để lưu giá trị phần tử lớn nhất của dãy A

Việc xác định MAX có thể được thực hiện như sau: Đầu tiên gán giá trị a1 cho biến MAX Tiếp theo, lần lượt so sánh các số a2, …, an của dãy A với MAX Nếu ai > MAX, ta gán ai cho MAX

Với thuật toán này giáo viên “thực hiện bằng tay” để thử bộ dữ liệu dãy số có N=3 ta sẽ thực hiện thuật toán với ba số (3, 5, 7) rồi kiểm tra kết quả MAX nhận được ở bước 5 có phải là số lớn nhất trong ba số không

Từ đó giáo viên có thể yêu cầu học sinh thực hiện với các bộ dữ liệu khác nhau:

Em hãy mô phỏng quá trình thực hiện thuật toán với các bộ dữ liệu thử khác

nhau (ví dụ: (3, 6, 10); (6, 3, 10); (10, 6, 3);…) bằng cách điền vào bảng dưới đây:

1 2 3 4 5

Sau khi học sinh đã nắm vững được thuật toán tìm MAX giáo viên sẽ luyện thêm cho các em bằng cách yêu cầu mô phỏng thuật toán tìm số lớn nhất với N lớn hơn (có thể N=9 hoặc 10)

Lưu ý: Giáo viên nên chọn dãy số với N tối đa bằng 10 để học sinh kiểm tra

bằng tay cho dễ dàng tránh trường hợp làm phức tạp thêm vấn đề sẽ làm học sinh lúng túng

Ngày đăng: 10/12/2016, 15:15

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w