1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Sử dụng phần mềm CROCODILE ICT 605 để hỗ trợ việc dạy và học trong chương trình tin học 11

48 33 0

Đ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 48
Dung lượng 14,97 MB

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

Nội dung

Xuất phát từ cơ sở trên, tôi đã chọn đề tài “Sử dụng phần mềm CROCODILE ICT 605 để hỗ trợ việc dạy và học trong chương trình Tin học 11” nâng cao kết quả học tập của học sinh trường THPT

Trang 1

I PHẦN MỞ ĐẦU

I. 1 Lí do chọn đề tài:

Trong những năm gần đây, tin học phát triển rất mạnh mẽ, đặc biệt là ở ViệtNam tin học đã trở thành một phần không thể thiếu trong xã hội Tin học không chỉdừng lại ở việc nghiên cứu của các nhà khoa học mà nó đã trở thành một công cụ,phương tiện đắc lực cho tất cả mọi người Tin học đã và đang đi sâu vào tất cả cáclĩnh vực khác như y tế, kinh tế, an ninh quốc phòng, giáo dục Tin học đã trởthành một đối tượng để cho tất cả những ai đam mê nó nghiên cứu, tìm hiểu vàkhám phá Trong giáo dục, Tin học đã có những bước tiến vượt bậc khi nó đã trởthành một môn học chính thức ở các nhà trường từ bậc tiểu học cho đến THCS vàTHPT

Việc ứng dụng công nghệ thông tin vào dạy học đang trở thành trào lưu củanền giáo dục hiện đại Thông qua việc sử dụng công cụ hỗ trợ làm cho bài giảngcủa giáo viên thêm phong phú và trực quan hơn, giúp thầy giáo, cô giáo nâng caochất lượng dạy học, trang bị cho học sinh kiến thức về công nghệ thông tin, họcsinh sử dụng máy tính như một công cụ học tập nhằm nâng cao chất lượng học tập

Đó là yêu cầu quan trọng của đổi mới phương pháp dạy học

Crocodile ICT là phần mềm hỗ trợ việc hình thành, rèn luyện, phát triển tưduy giải thuật và một số kĩ năng lập trình cơ bản cho học sinh THPT khi học môntin học

Qua việc dạy tin học ở trường THPT Bỉm Sơn, để giúp học sinh hiểu đượccấu trúc lặp, dữ liệu kiểu mảng cũng như hiểu được hoạt động của nó cần phải thửnghiệm kết quả của thuật toán Đây là quá trình mất nhiều thời gian bởi người dạyphải thực hiện từng bước một nhất là đối với các bài toán lặp Việc dạy và học vềcấu trúc lặp và dữ liệu kiểu mảng trong nhà trường gặp nhiều khó khăn khi các emcòn ít tiếp xúc với thuật toán Thực tế, với đối tượng HS mới tiếp cận, người dạyđôi khi khó truyền đạt cho người học ý tưởng, hoạt động của thuật toán như thếnào là hiệu quả nên học sinh chỉ tiếp thu một cách thụ động

Xuất phát từ cơ sở trên, tôi đã chọn đề tài “Sử dụng phần mềm

CROCODILE ICT 605 để hỗ trợ việc dạy và học trong chương trình Tin học 11” nâng cao kết quả học tập của học sinh trường THPT Bỉm Sơn

I.2 Mục đích của đề tài:

dạỵ học, góp phần nâng cao hiệu quả dạy và học chương trình Tin học lớp 11, giúpcác em bước đầu rèn luyện tư duy giải thuật;

tin và ứng dụng của CNTT vào dạy học;

Trang 2

- Mô phỏng các thuật toán giải bài toán đã đưa ra giúp học sinh tiếp xúc trựcquan với thuật toán;

hiệu quả

I.3 Đối tượng nghiên cứu:

I.4 Phạm vi nghiên cứu:

- Bài 10: Cấu trúc lặp;

- Bài 11: Kiểu mảng;

- Chương trình tin học lớp 11 theo sách giáo khoa;

I.5 Phương pháp nghiên cứu:

- Phương pháp nghiên cứu lý thuyết

- Phương pháp phỏng vấn, điều tra, trao đổi kinh nghiệm với bạn bè và cácgiáo viên dạy tin học ở các trường THPT

II NỘI DUNG II.1 Cơ sở lý luận:

Tình hình dạy Tin học trong nhà trường phổ thông.

Ở nước ta hiện nay đang phát triển mạnh mẽ việc ứng dụng công nghệ thôngtin trong dạy học Bộ giáo dục và đào tạo đã đưa tin học vào trong nhà trường theohai phương diện đó là:

- Là nội dung học vấn phổ thông như các môn học khác

- Là công cụ để nâng cao chất lượng dạy học các khoa học khác

Vì vậy nó trở thành một trong những môn học chính trong nhà trường phổthông Tuy nhiên, ở nhiều đơn vị, học sinh chưa có nhiều hứng thú với bộ mônnày, đặc biệt là học sinh ở các trường THPT miền núi trong chương trình Tin học

11 Các em còn nhiều bỡ ngỡ, ít được tiếp cận trực quan về thuật toán và ngôn ngữlập trình

Mục tiêu của việc dạy học môn tin học

Mục tiêu khi đưa tin học vào nhà trường là nhằm giúp học sinh có khả năngphân tích, tổng hợp, trừu tượng hoá, khái quát hoá vấn đề mà đặc biệt là phát triển

tư duy trí tuệ

- Về kiến thức: Trang bị cho học sinh một cách tương đối hệ thống các kháiniệm cơ bản nhất ở mức phổ thông về tin học là một ngành khoa học với những

Trang 3

đặc thù riêng, các kiến thức về hệ thống, rèn luyện kỹ năng xây dựng thuật toáncho bài toán cụ thể.

- Về thái độ: Rèn luyện cho học sinh phong cách suy nghĩ và làm việc phùhợp với con người của thời đại tin học: Ham hiểu biết, tìm tòi sáng tạo, chuẩn mựcchính xác trong suy nghĩ và hành động, say mê môn học, cẩn thận trong công việc,hợp tác tốt với bạn bè

- Về kỹ năng: Học sinh bước đầu biết cách xây dựng thuật toán từ đó có tưduy tốt hơn để quá trình học lập trình hiệu quả hơn, vận dụng để giải các bài toánđơn giản, khai thác và sử dụng hệ cơ sở dữ liệu cho lập trình

II.2 Thực trạng:

1/ Thuận lợi:

Nhà trường:

- Về cơ sở vật chất trang thiết bị dạy học, nhà trường đã trang bị cho ba phòng

máy tính Do đó trong các giờ học, học sinh đã có điều kiện tiếp cận với công nghệthông tin (CNTT), thể hiện thao tác trực tiếp trên máy nên dễ dàng nắm bắt nộidung của bài học

Giáo viên:

- Đối với giáo viên: Là giáo viên trẻ nên có điều kiện tiếp cận với những tiến

bộ của CNTT, hỗ trợ rất lớn cho công tác giảng dạy

- Giáo viên được đào tạo những kiến thức cơ bản và nâng cao về Tin học

- Giáo viên giảng dạy đã qua đào tạo chuyên ngành Tin học

Học sinh:

- Với học sinh, qua chương trình tin học lớp 11 các em đã được trang bịnhững kĩ năng nhất định trong việc sử dụng máy tính, biết thế nào là thuật toáncũng như cách xây dựng một thuật toán

2/ Khó khăn:

- Tuy đã trang bị cho phòng máy tính nhưng hệ thống phòng thực hành Tinhọc ở trường THPT Bỉm Sơn và một số trường khác chưa thực sự đáp ứng đượcyêu cầu giảng dạy, máy sử dụng lâu đã xuống cấp, hỏng hóc, số lượng máy còn ítchưa đáp ứng được nhu cầu sử dụng của học sinh

- Do đặc thù bộ môn, nên nhiều học sinh chưa thực sự say mê với môn học,thờ ơ và coi nhẹ việc học Tin học

đây là một nội dung mới và khó đối với đa số học sinh, phần lớn học sinh thực sựkhó khăn trong việc hiểu nghĩa từng bước của thuật toán cũng như lập trình nên

Trang 4

khi học về phần này học sinh rất khó hiểu, vận dụng câu lệnh viết chương trìnhmang lại kết quả chưa cao.

đạt cho học sinh hiểu đúng bản chất và cách vận dụng các cấu trúc câu lệnh còngặp không ít khó khăn, lúng túng dẫn đến kết quả học tập chưa được cao

3/ Tình trạng thực tế khi chưa thực hiện đề tài

Trước đây khi chưa áp dụng phương pháp giảng dạy bằng giáo án điện tử, lấy

ví dụ từ thực tế… học sinh luôn phản ánh với giáo viên rằng: “Học về cấu trúc lặp

và dữ liệu kiểu mảng” này khó hiểu và trừu tượng Khi kiểm tra với mức độ đề

tương đương với một vài ví dụ trong sách giáo khoa, các em vẫn mơ hồ và đạt kếtquả chưa cao

4/ Khảo sát thực tế

Giáo viên đưa ra vấn đề yêu cầu giải thích nguyên tắc hoạt động và kết quảcủa một số thuật toán khi đưa dữ liệu vào đối với lớp 11A1, 11A2, 11A3 có kếtquả như sau:

Bài toán 1 : Với số nguyên a > 2 cho trước, tính: 1100

2

1 1

1 1

a a S

Bài toán 2 : Với số nguyên a > 2 cho trước, tính: S a a a a N

1 1

1 1

a a

2

1 1

Bài toán 6 : Tìm giá trị lớn nhất của một dãy số nguyên;

Bài toán 7 : Sắp xếp dãy số nguyên bằng thuật toán tráo đổi – Exchange Sort.

Cho dãy A gồm N số nguyên khác nhau a1, a2,, a3 ,… aN Cần sắp xếp các

số hạng để dãy A thành dãy không giảm.

Trang 5

Kết quả kiểm tra như sau:

mơ hồ về thuật toán

II.3 Các biện pháp để giải quyết vấn đề:

1/ Tạo một sơ đồ khối bằng phần mềm CROCODILE ICT 605:

Các khối lệnh thường sử dụng:

Các khối lệnh để xây dựng chương trình trên Crocodile ICT đều được đặt

trong các thư mục trong Part library Nó gồm có 3 thu mục chính:

- Flowcharts: các khối dùng để vẽ sơ đồ khối

- Chracters: các nhân vật để thực hiện hành động đã được lập trình

- Presentation: gồm các hộp thoại, hình ảnh

1.1 Flowchart:

Cung cấp các thành phần để tạo sơ đồ khối Click vào Flowchart sẽ có các ứngdụng sau:

a Start and stop: Gồm các khối để khởi động hay kết thúc sơ đồ

Start: Sử dụng để bắt đầu một sơ đồ Khi sơ đồ đã được tạo hoàn chỉnhnhấn nút để thiết lập chạy chương trình Khi sơ đồ đang chạy, ngưng lại bằngviệc nhấn nút

Trang 6

Stop: Dùng để kết thúc một chương trình Bất kỳ một chương trìnhchính nào cũng đều phải kết thúc bằng thành phần Stop

Function Sử dụng để xây dựng một hàm Tên hàm là duy nhất, có thểđược thay đổi bằng việc click vào và sửa tên ở phần function Danh sách tham số

có thể được thêm vào bằng nút “+” hoặc “-“:

- Name: Tên của tham số

- Type: Kiểu tham số

b Process:

Set variable : Dùng để gán giá trị cho biếnClick vào Set variablerồi kéo rê ra màn hình Tại đây ta có thể nhập giá trịcho biến :

- Click vào tên biến (phần bên trái mũi tên) để thay đổi tên biến

- Click vào giá trị của biến (bên phải mũi tên) để thay đổi giá trị cho biến đó

Random : Nhập một số nguyên bất kỳ (từ 0 đến 100) cho biến

Call function : Dùng để gọi tên một hàm Chương trình chính sẽngưng lại cho đến khi giá trị cuối cùng được trả về, sau đó chương trình chính sẽđược tiếp tục

c Decision:

giá trị của hai biểu thức

d Inputs and Outputs:

Get property : Nhập giá trị cho biến

Set property : Đưa giá trị biến ra màn hình

e Programming Environment:

Monitor box : Hộp thoại này thể hiện toàn bộ hoạt động và sự kiệncủa Scene Nhờ nó học sinh có thể thấy được sự thay đổi giá trị của các biến quatừng bước một trong chương trình

1.2 Presentation:

Inputs-Outputs:

Trang 7

Text : Dùng để chèn thêm văn bản vào các mô hình và có thể tác độngđếnnhư một thành phần thông thường

Editbox : Dùng để liên kết với các thành phần khác, chẳng hạn như liên

kết vớiGet Property để nhập giá trị cho biến, liên kết với Set Property để đưa giá trị của biến ra

1.3 Các lỗi trong sơ đồ:

- Nếu một thành phần của sơ đồ khối có lỗi về kết nối hoặc có lỗi nào đó khichạy chương trình, sơ đồ sẽ không tiếp tục chạy mà sẽ xuất hiện một biểu tượngbáo lỗi

2/ Các hàm trong Crocodile ICT

a Các hàm lượng giác:

với giá trị sin của x

giá trị cosin của xinverse

với giá trị tan của x

secant của xinverse

Trang 8

inverse

hyperbolic

sine

hyperbolic sine của xinverse

hyperbolic

cosine

hyperbolic cosine của x

b Các hàm toán học:

Raise to

Trả về bgiá trị x luỹ thừa y

Absolute

Trả về giá trị là trị tuyệt đối của x

gần nhấtceiling value

nhất

một số nguyênFractional

Trang 9

- Các biến và các hàm: Các hàm không truy cập đến các biến mà chúng đượckhai báo, định nghĩa trong chương trình chính Nếu một hàm sử dụng các biến màcác biến đó đã được sử dụng trong chương trình chính thì:

- Các biến phải được truyền đến các hàm như các tham số

- Các biến phải là biến trong Scene variables

3/ Sử dụng phần mềm Crocodile ICT để mô phỏng một số thuật toán trong bài 10 cấu trúc lặp và bài 11 kiểu mảng:

Khi dạy bài cấu trúc lặp, giáo viên cần chỉ ra cho học sinh thấy được điều kiện lặp; thao tác lặp Khác với cấu trúc rẽ nhánh, cấu trúc lặp có câu lệnh được thực

hiện có thể nhiều lần tùy thuộc vào điều kiện lặp Điều kiện luôn là biểu thức chokết quả logic, nhưng điều kiện ở cấu trúc lặp là điều kiện xác định câu lệnh đượcthực hiện lặp, còn ở cấu trúc rẽ nhánh là điều kiện thực hiện câu lệnh nên câu lệnhchỉ được thực hiện nhiều nhất một lần

Giáo viên có thể lấy các công việc lặp mà học sinh thường gặp như múc nước

đổ vào bình chứa, chào cờ đầu tuần … Bài toán tìm ước chung lớn nhất của hai sốnguyên dương hoặc hai bài toán tính tổng trong bài 10 (sách giáo khoa tin học 11)

để chỉ ra cho học sinh thấy được câu lệnh lặp và điều kiện lặp

Với các bài toán như tìm ước chung lớn nhất của hai số nguyên dương hay bàitoán tính tổng trong bài 10 (sách giáo khoa tin học 11) … học sinh có thể trình bàyđược thuật toán và từ đó giáo viên có thể mô phỏng thuật toán, giúp các em có thểhiểu rõ thao tác lặp và điều kiện lặp Giáo viên phải làm rõ cấu trúc lặp với số lầnbiết trước cũng cần điều kiện lặp Tuy nhiên, điều kiện lặp ở cấu trúc này có khác

so với điều kiện lặp ở cấu trúc lặp với số lần chưa biết trước ở chỗ điều kiện lặp ởcấu trúc lặp với số lần biết trước được thay đổi tăng hoặc giảm 1 đơn vị

Mô phỏng thuật toán tính tổng trong bài 10 (sách giáo khoa tin học 11)

Bài toán 1 : Với số nguyên a > 2 cho trước, tính: 1100

2

1 1

1 1

a a

1 1

a a

Thuật toán:

Bước 1 S  1/a; Na; N0;

Trang 10

Bước 2 N  N+1;

Bước 3 Nếu N > 100 thì chuyển về bước 5;

Bước 4 S  S + 1/a; N(a+N) rồi quay lại bước 2;

Bước 5 Đưa S ra màn hình, rồi kết thúc.

Dùng phần mềm Crocodile ICT biểu diễn mô phỏng thuật toán tính

2

1 1

1 1

a a

Với bài toán trên ta có thao tác

N a S S

được lặp lại 100 lần với giá trị của

n thay đổi tăng dần N=1; 2; …; 100 Vậy thao tác tính tổng lặp như trên được gọi

là lặp với số lần biết trước;

Bài toán 2 : Với số nguyên a > 2 cho trước, tính: S a a a a N

1 1

1 1

;

- Outpt: Tổng S

Trang 11

Ý tưởng thuật toán: Khởi tạo biến S = a1 ; N=0, trong khi 1  0 0001

N

N a

Thuật toán:

Bước 1 S  1/a; Na; N  0;

Bước 2 Nếu 1/a; N(a+N) < 0.0001 thì chuyển đến bước 5;

Bước 3 N  N+1;

Bước 4 S  S + 1/a; N(a+N) rồi quay lại bước 2;

Bước 5 Đưa S ra màn hình, rồi kết thúc.

Dùng phần mềm Crocodile ICT biểu diễn mô phỏng thuật toán tính

1 1

N a

Với mỗi bài toán đưa ra làm ví dụ mô phỏng, giáo viên cần nhấn mạnh cho

học sinh thấy rõ được điều kiện lặp và câu lệnh lặp.

1 1

Trang 12

điều kiện lặp của bài toán là khi N còn chưa đủ lớn để 1  0 0001

N

lặp của bài toán này là chưa biết trước

Cấu trúc lặp là cấu trúc điều khiển hoạt động trong lập trình, đây là nội dungquan trọng trong chương tình tin hoc 11 ở trường THPT Mục tiêu của bài nhằmgiúp học sinh hiểu ý nghĩa của cấu trúc lặp trong biểu diễn thuật toán, hiểu câulệnh lặp với số lần biết trước và số làn chưa biết trước Sử dụng cấu trúc lặp trong

mô tả thuật toán của một số bài toán đơn giản

Hoạt động sử dụng hữu hiệu cấu trúc lặp trong lập trình tạo điều kiện chohọc sinh khản năng sử phát triển tư duy sáng tạo, rèn luyện tính độc lập cà tính kỹluật Do đó việc sử dụng hữu hiệu cấu trúc lặp chiếm một vị trí đặc biệt quantrọng Tuy nhien nội dung này vẫn chưa hoàn toàn đạt kết quả như mong muốn thểhiện ở chỗ:

- Học sinh chưa có kỹ năng, chưa thành thạo trong việc sử dụng cấu trúc lặp

2

1 1

1 1

a a

N a a

dễ hiểu hơn nhầm nâng cao chất lượng bài học

Bài toán 3 : Tính tổng S của N số nguyên dương đầu tiên S =1 + 2 + 3 + 4 + … +N với N=100 thay thế cho bài toán tính tổng 1100

2

1 1

1 1

a a

Xác định bài toán:

- Input: S =1 + 2 + 3 + 4 + … + N, N=100;

- Output: Tổng S;

Trang 13

Ý tưởng: Khởi tạo biến N = 0, S = 0 trong khi N <= 100 ta thực hiện cộng S

= S+N, việc đó được lặp lại đi cho đến khi N > 100

Thuật toán:

Bước 1 S0; N0;

Bước 2 NN+1;

Bước 3 Nếu N > 100 thì chuyển qua bước 5;

Bước 4 SS+N rồi qua lại bước 2;

Bước 5 Đưa ra S rồi kết thúc.

Dùng phần mềm Crocodile ICT 605 mô phỏng thuật toán tính tổng N số nguyên dương đầu tiên với N = 100

Bài toán 4 : Tính tổng S của N số nguyên dương đầu tiên S =1 + 2 + 3 + 4 +… +

N +… cho đến khi S > 100 thay thế cho bài toán tính tổng với a > 2.

100

1

2

1 1

a

a

N a

Xác định bài toán

- Input: Số nguyên dương N;

- Output: Tổng S;

Trang 14

Bước 3 Nếu S > 100 thì chuyển qua bước 5;

Bước 4 SS+N rồi quay lại bước 2;

Bước 5 Đưa S ra màn hình, rồi kết thúc.

Dùng phần mềm Crocodile ICT 605 mô phỏng thuật toán tính tổng N số nguyên dương đầu tiên

Bài toán 5 : Viết chương trình tìm ước chung lớn nhất (UCLN) của hai số nguyên dương M và N.

Xác định bài toán

- Input: Xác định hai số nguyên dương M và N

- Output: UCLN(M,N)

Ý tưởng:

Trang 15

Bước 2 Nếu M = N thì chuyển sang bước 4;

Bước 3 Nếu M > N thì M M-N ngược lại N N-M;

Bước 4 Thông báo ƯCLN(M,N) = M và kết thúc.

Dùng phần mềm Crocodile ICT biểu diễn mô phỏng thuật toán tìm ước chung lớn nhất của 2 số nguyên bất kì M, N

Với mỗi bài toán đưa ra làm ví dụ mô phỏng, giáo viên cần nhấn mạnh cho

học sinh thấy rõ được điều kiện lặp và câu lệnh lặp.

Bài toán 6 : Tìm giá trị lớn nhất của một dãy số nguyên

Xác định bài toán

Trang 16

- Input: Số nguyên N và dãy số a1, a2, , aN.

- Output : Giá trị lớn nhất Max của dãy số

Ý tưởng: - Khởi tạo giá trị Max = a1

Thuật toán:

Bước 1 Nhập N và dãy số a1, a2, , aN

Bước 2 Max a1, i2;

Bước 3 Nếu i > N thì đưa ra giá trị Max rồi kết thúc;

Bước 4

Bước 4.1 Nếu ai > Max thì Max ai;

Bước 4.2 ii + 1 rồi quay lại bước 3;

Dùng phần mềm Crocodile ICT biểu diễn mô phỏng thuật toán tìm giá trị lớn nhất của một dãy số nguyên:

Lưu ý: Trong ngôn ngữ lập trình Pascal ta thường định nghĩa phần tử đầu

phần tử đầu tiên cho Max) và i1;

Trang 17

Để giúp cho học sinh hiểu rõ hơn việc tổ chức và sử dụng mảng thì giáo viêncần mô phỏng các thuật toán trên với các bộ test tiêu biểu cụ thể để học sinh có thểthấy được cách tổ chức, cách thực hiện và lợi ích của việc sử dụng mảng.

Bài toán 7 : Sắp xếp dãy số nguyên bằng thuật toán tráo đổi – Exchange Sort Cho dãy A gồm N số nguyên khác nhau a 1 a N Cần sắp xếp các số hạng

để dãy A thành dãy tăng dần.

Xác định bài toán

- Output: Dãy A sắp xếp thành dãy tăng dần

Ý tưởng: Với các cặp số hạng đứng liền kề nhau trong dãy, nếu số trước lớn

hơn số sau ta đổi chỗ chúng cho nhau Việc đó được lặp lại, cho đến khi không có

sự đổi chổ nào nữa

Trang 18

Bước 4 MM-1; i0;

Bước 5 ii + 1;

Bước 6 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;

Dùng phần mềm Crocodile ICT 605 mô phỏng thuật toán sắp xếp bằng tráo đổi.

Trang 19

4/ Một số giáo án đề xuất



I Tên bài học: CẤU TRÚC LẶP (t1)

II Thông tin bài dạy:

1 Dạng bài: Giáo án lý thuyết

- Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán

- Hiểu cấu trúc lặp kiểm tra điều kiện trước, cấu trúc lặp với số lần định trước

- Biết cách vận dụng đúng đắn từng loại cấu trúc lặp vào tình huống cụ thể

2 Kỹ năng

- Mô tả được thuật toán của một số bài toán đơn giản có sử dụng lệnh lặp

- Viết đúng các lệnh lặp kiểm tra điều kiện trước, lệnh lặp với số lần định trước

- Viết được thuật toán của một số bài toán đơn giản

3 Thái độ

- Biết khám phá bài tập mới và khó hơn

- Nghiêm túc trong học tập

- Say mê khi lập trình

4 Năng lực hướng tới

- Hình thành tư duy và khả năng giải quyết các vấn đề phức tạp

- Vận dụng kiến thức được học, giải quyết vấn đề

IV Phương pháp, thiết bị dạy học và học liệu:

1 Phương pháp: Thuyết trình, hoạt động nhóm, nêu vấn đề

A Hoạt động 1: Khởi động/mở bài (5 phút)

1 Mục tiêu: - Gây hứng thú cho học sinh với nội dung bài học

2 Nhiệm vụ học tập của học sinh:

Trang 20

+ Nhận biết được các hoạt động lặp

3 Sản phẩm học sinh: Mức độ hoàn thành nhiệm vụ

4 Cách thức tiến hành hoạt động:

- GV chiếu 1 số hình ảnh động: gõ mõ, nhảy

dây, yoyo…

- H: các hoạt động trên có điểm chung gì?

- GV chốt ý, dẫn dắt sang nội dung bài học

- Đ: trả lời & lấy ví dụ

- Đ: Các hoạt động được thực hiện

lặp đi lặp lại nhiều lần

- HS trả lời

B Hoạt động 2: Hình thành kiến thức mới (30 phút)

1 Mục tiêu:

- Học sinh hiểu được như thế nào là cấu trúc lặp;

- Phân biệt được các hoạt động lặp xác định và lặp không xác định trong cuộcsống hàng ngày;

- Lấy được ví dụ về cấu trúc lặp trong thực tiễn;

- Biết được cú pháp câu lệnh FOR - DO và nguyên tắc hoạt động câu lệnh

2 Nhiệm vụ học tập của học sinh: Lắng nghe, tìm hiểu và thực hiện các hoạt động

do giáo viên đưa ra

3 Sản phẩm học sinh:

- Đưa ra được các tình huống thực tiễn dạng cấu trúc lặp

- Viết được câu lệnh FOR - DO

4 Cách thức tiến hành hoạt động:

Hoạt động 2.1: Tìm hiểu về thao tác lặp, cấu trúc lặp (7 phút)

1 Lặp

- lặp là thực hiện đi thựchiện nhiều lần 1 hoặc 1vài công việc nào đó

- Cấu trúc lặp: là dùngcác thao tác để thể hiệnviệc lặp đó trong thuậttoán

Trang 21

- Có 2 loại lặp: lặp với

số lần biết trước và lặpvới số lần không biếttrước

Giáo viên dẵn dắt sang mục 2

Giáo viên dẫn dắt: Mọi ngôn ngữ lập trình đều có các câu lệnh mô tả cấu trúc Trong Pascal để mô tả cấu trúc lặp với số lần biết trước, dùng câu lệnh

“ for – do”

Hoạt động 2.2: Tìm hiểu về bài toán lặp với số lần biết trước và câu lệnh FOR - DO

- Chia lớp thành 4 nhóm

Xét bài toán 1:

Tính S = 1+2+3+… + N (với

N=100);

- Yêu cầu học sinh cho biết

input, output của bài toán trên

- Yêu cầu các nhóm phân tích bài

toán trên với N =100

- Yêu cầu đại diện nhóm 1 trình

bày ý tưởng để giải bài toán trên

- Yêu cầu các viết thuật toán giải

bài toán 1 theo phương pháp liệt

- Input: S =1 + 2 + 3 +

4 + … + N, N=100;

- Output: Tổng S;

- Nhóm 1 suy nghĩ phân tích bài toán, đưa

đi cho đến khi N > 100

Thuật toán giải bài toán 1:

- Thuật toán Tong_1a;Bước 1 S0; N0;Bước 2 NN+1;

Bước 3 Nếu N>100 thìchuyển qua bước 5;

Bước 4 SS+N rồi qua lại bước 2;

Bước 5 Đưa ra S rồi kết thúc

Trang 22

- Mời đại diện nhóm 2 lên trình

bày thuật toán giải bài toán 1

theo cách liệt kê

- Yêu cầu các nhóm còn lại theo

dõi, nhận xét để hoàn thiện thuật

toán;

- Nhận xét, bổ sung, chiếu thuật

toán Tong_1a cho học sinh đối

chiếu;

Hỏi: Ngoài thuật toán trên còn

cách nào khác?

- Yêu cầu các nhóm lên trình bày

thuật toán dạng lùi;

- Nhận xét bổ sung, chiếu thuật

toán Tong_1b để học sinh đối

chiếu;

- Lưu ý: cả hai thuật toán của bài

1 có số lần lặp là biết trước và

như nhau (100 lần)

- Nêu điểm cần lưu ý cho học

sinh Thuyết trình về thuật toán

của bài 1

Thuật toán Tong_1a, giá trị N

bắt đầu tham gia vòng lặp là 1 và

sau mỗi lần lặp N tăng lên 1 cho

Bước 4 SS+N rồi qua lại bước 2;

Bước 5 Đưa ra S rồi kết thúc

+ Thuật toán tong_1b;

đi cho đến khi S > 100

- Thuật toán Tong_1b;Bước 1 S0; N101;Bước 2 NN-1;

Bước 3 Nếu N<1 thì chuyển qua bước 5;

Bước 4 SS+N rồi qua lại bước 2;

Bước 5 Đưa ra S rồi kết thúc

Câu lệnh For – do trong Pascal với hai dạng tiến và lùi:

- Trong đó:

+ Biến đếm là biến đơn,thường có kiểu nguyên.+ Giá trị đầu, giá trị cuối

là các biểu thức cùng kiểu

Trang 23

ban đầu tham gia vòng lặp của N

là 100 và sau mỗi lần lặp N giảm

đi cho đến khi N<1 (N=0) thì kết

thúc lặp (thực hiện 100 lần) Ta

nói cách lặp thuật toán Tong_1a

là dạng tiến, trong thuật toán

Tong_1b là dạng lùi

– Giới thiệu cú pháp câu lệnh

For - Do dạng tiến và dạng lùi

– Yêu cầu HS dựa vào cú pháp

nêu hoạt động của câu lệnh lặp

dạng tiến và dạng lùi

- Nhận xét, bổ sung (nếu cần)

chuyển qua bước 5;

Bước 4 SS+N rồi qua lại bước 2;

Bước 5 Đưa ra S rồi kết thúc

- Lắng nghe giáo viên giảng bài

- Nêu hoạt động câu lệnh lặp

- Lắng nghe, ghi bài

với biến đếm và giá trị đầuphải nhỏ hơn hoặc bằnggiá trị cuối

- Hoạt động của lệnh do

For-+ Dạng lặp tiến: câu lệnhviết sau từ khóa Do đượcthực hiện tuần tự, với biếnđếm lần lượt nhận các giátrị liên tiếp tăng từ giá trịđầu đến giá trị cuối,

+ Dạng lặp lùi: câu lệnhviết sau từ khóa Do đượcthực hiện tuần tự, với biếnđếm lần lượt nhận các giátrị liên tiếp giảm từ giá trịcuối đến giá trị đầu

- Chú ý: Câu lệnh viết sau

Do không được thay đổigiá trị của biến đếm

Hoạt động 2.3: Hoàn thiện chương trình sử dụng câu lệnh For - Do

- Yêu cầu các nhóm vận dụng

kiến thức đã học và câu lệnh For

– Do để viết chương trình cho

bài toán 1

- Yêu cầu nhóm 1, 2 viết chương

trình lặp dạng tiến, nhóm 3,4 viết

chương tình dạng lùi

- Mời đại diện lần lượt 2 nhóm

lên trình bày nội dung đã thảo

- Các nhóm thảo luận đưa ý kiến chung hoàn thiện chương trình trên

Chương trình thuật toán Tong_1a.

Trang 24

- Mời các nhóm còn lại nhận xét,

bổ sung chương trình

- Giáo viên chốt lại vấn đề, sau

đó chiếu nội dung 2 chương trình

dạng tiến và dạng lùi lên màn

hình cho học sinh cùng theo dõi

- Chiếu nội dung 2 chương trình

dạng tiến và dạng lùi của bài

toán 1 bằng phần mềm

Crocodilr ICT 605 để học sinh

quan sát thấy được sự lặp lại của

chương trình

- Điều chỉnh tốc độ chạy chương

trình để cho học sinh thấy được

hoạt động lặp của chương trình

bằng phần mềm

Crocodile ICT 605

- Đại diện các nhóm trình bày bài làm của nhóm

- Nhóm lắng nghe các nhóm nhận xét

- Theo dõi chép bài

- Học sinh quan sátchương trình bài toán 1bằng phần mềm

Writeln('Tong S la: ', S); Readln;

END.

Chương trình thuật toán Tong_1b.

S:=0;

For N:= 100 Downto 1 DoS:= S + N;

Writeln('Tong S la: ', S);

Readln;

END.

Mô phỏng thuật toán tính tổng S = 1+2+3+… + N với N=100 bằng phần mềm Crocodile ICT 605 dạng lặp tiến.

Ngày đăng: 21/05/2021, 22:32

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