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

Cấu trúc rẽ nhánh – Tin học lớp 11

18 290 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 18
Dung lượng 77,67 KB

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

Nội dung

Để máy tính có thể giải được các bài toán xuất phát từ thực tế cuộc sống thì con người cần phải học cách giao tiếp với máy tính.Việc giao tiếp đó được thực hiện thông qua ngôn ngữ lập trình. Trong chương trình tin học lớp 11 học sinh được làm quen với ngôn ngữ lập trình và lập trình giải quyết các bài toán đơn giản. Tuy nhiên để có thể sử dụng đúng cấu trúc cú pháp câu lệnh vào các trường hợp cụ thể trong từng bài toán đòi hỏi học sinh phải sử dụng các cấu trúc câu lệnh phù hợp. Một trong những cấu trúc được sử dụng để giải quyết những công việc chỉ được thực hiện khi thoả mãn một điều kiện cho trước là cấu trúc rẽ nhánh.

Trang 1

- Tác giả: ………

- Chức vụ: Giáo viên Tin học

- Đơn vị công tác: Trường THPT ……….

CHUYÊN ĐỀ: CẤU TRÚC RẼ NHÁNH

(Bài 9 Cấu trúc rẽ nhánh – Tin học lớp 11) PHẦN 1: GIỚI THIỆU CHUYÊN ĐỀ

1 Lý do chọn chuyên đề:

Để máy tính có thể giải được các bài toán xuất phát từ thực tế cuộc sống thì con người cần phải học cách giao tiếp với máy tính.Việc giao tiếp

đó được thực hiện thông qua ngôn ngữ lập trình Trong chương trình tin học lớp 11 học sinh được làm quen với ngôn ngữ lập trình và lập trình giải quyết các bài toán đơn giản Tuy nhiên để có thể sử dụng đúng cấu trúc cú pháp câu lệnh vào các trường hợp cụ thể trong từng bài toán đòi hỏi học sinh phải

sử dụng các cấu trúc câu lệnh phù hợp Một trong những cấu trúc được sử dụng để giải quyết những công việc chỉ được thực hiện khi thoả mãn một điều kiện cho trước là cấu trúc rẽ nhánh

2 Đối tượng dạy học

- Học sinh khối 11 trường THPT Tam Dương II

3 Thiết bị dạy học và học liệu bổ trợ

- Máy tính, máy chiếu, giấy A3, bút dạ

- SGK, sách giáo viên, tài liệu liên quan về cấu trúc rẽ nhánh của ngôn ngữ lập trình Pascal

4 Nội dung chuyên đề

4.1 Rẽ nhánh

- Cấu trúc Nếu… thì… được gọi là rẽ nhánh dạng thiếu

- Cấu trúc Nếu… thì…, nếu không thì… gọi là rẽ nhánh dạng đủ

Trang 2

4.2 Câu lệnh IF – THEN

a Dạng thiếu

if <điều kiện> then <câu lệnh>;

b Dạng đủ

if <điều kiện> then <câu lệnh 1> else <câu lệnh 2>;

4.3 Câu lệnh ghép

- Chức năng của lệnh ghép: Ghép hai hay nhiều câu lệnh thành một nhóm lệnh

- Cấu trúc:

Begin

End;

PHẦN 2 KẾ HOẠCH DẠY HỌC CHUYÊN ĐỀ

1 Thời lượng (2 tiết)

2 Giáo án

Tiết 11 CÂU LỆNH RẼ NHÁNH

I Mục tiêu bài học:

1 Kiến thức:

- Giới thiệu tổ chức rẽ nhánh, cú pháp và chức năng các câu lệnh rẽ nhánh

(dạnh thiếu và dạng đầy đủ)

2 Kỹ năng:

- Rèn luyện kỹ năng sử dụng câu lệnh rẽ nhánh để viết các chương trình

có sử dụng các câu lệnh này

3 Thái độ:

- Học tập tích cực, nghiêm túc, yêu thích môn học đặc biệt là lập trình

II Chuẩn bị

1 Giáo viên

- Phiếu trả lời, chương trình mẫu

- Giáo án

Trang 3

2 Học sinh

- Sách vở

III Tiến trình lên lớp

1 Khởi động

- Nghe bài hát Tự nguyện và tình huống xuất phát từ thực tế để tìm hiểu về rẽ nhánh

- Thực hiện chương trình giải phương trình bậc hai với các bộ dữ liệu khác nhau

2 Hình thành kiến thức - Rẽ nhánh: dạng thiếu và dạng đủ

- Câu lệnh if – then: cấu trúc, hoạt động

3 Luyện tập - Áp dụng câu lệnh if – then vào thể hiện rẽ

nhánh với ví dụ giải phương trình bậc hai

4 Mở rộng - Áp dụng câu lệnh if – then vào viết chương

trình tìm số lớn nhất trong ba số

IV Hướng dẫn cụ thể tiến trình dạy học

1 Tình huống xuất phát

(1) Mục tiêu:

- Tạo tinh thần thỏa mái, môi trường thân thiện cho học sinh trước khi vào bài học

- Tạo động cơ để học sinh có nhu cầu quan tâm, tìm hiểu về câu lệnh

rẽ nhánh

(2) Phương pháp/ kỹ thuật dạy học: hoạt động cá nhân, hoạt động nhóm

(3) Phương tiện dạy học: Máy tính, máy chiếu

(4) Sản phẩm: Học sinh có nhu cầu tìm hiểu về câu lệnh rẽ nhánh

Trang 4

Nội dung hoạt động

Hoạt động của giáo viên Hoạt động của học sinh

GV chia lớp thành 4 nhóm

GV cho Hs nghe một đoạn nhạc bài hát “Tự

nguyện”

GV dẫn dắt trong cuộc sống có rất nhiều

công việc muốn thực hiện được thì phải thoả

mãn một điều kiện cho trước nào đó

GV Đưa tình huống xuất phát trong thực tế

là đoạn hội thoại của hai bạn mèo và chó

? yêu cầu mỗi nhóm lấy một ví dụ có sử

dụng cấu trúc Nếu thì… và Nếu…

thì….Nếu không thì…

GV chốt lại

1 Rẽ nhánh

- Cấu trúc Nếu thì được gọi là rẽ nhánh

dạng thiếu

- Cấu trúc Nếu… thì nếu không thì… gọi là

rẽ nhánh dạng đủ

GV: Chiếu chương trình giải phương trình

bậc hai (Phụ lục 1) đã làm ở tiết trước gọi

hs lên bảng và thử với các bộ dữ liệu

TH1: 1 -5 6 (x1 = 2.00 x2 = 3.00)

TH2: 2 4 2 (x1= x2)

TH3: 1 1 1 chương trình báo lỗi

(? ) Tại sao chương trình báo lỗi

Các nhóm cử đại diện phát biểu

Học sinh ghi bài

HS thực hiện trên máy tính

Câu trả lời mong đợi

Do Delta < 0 nên không thực hiện tính căn bậc hai của delta được Giáo viên: Như vậy để có thể xử lý cho

những trường hợp chỉ xảy ra khi thoả mãn

một điều kiện cho trước thì ngôn ngữ lập

trình cung cấp cho chúng ta câu lệnh if –

then để mô tả cấu trúc rẽ nhánh

Hs nghe giảng

Trang 5

2 Hình thành kiến thức

(1) Mục tiêu:

- Học sinh hiểu được cấu trúc rẽ nhánh dạng thiếu và dạng đủ

- Hiểu được cấu trúc, hoạt động của câu lệnh IF – THEN dạng thiếu và dạng đủ

(2) Phương pháp/ kỹ thuật dạy học: Thuyết trình, Hoạt động nhóm (3) Phương tiện dạy học: Máy tính, máy chiếu, máy ảnh

(4) Sản phẩm: Học sinh hiểu được cấu trúc, hoạt động cẩu câu lệnh IF

- THEN

Hoạt động của giáo viên Hoạt động của học sinh

Giáo viên trình bày về câu lệnh if - then

2 Câu lệnh if – then

a Dạng thiếu

if <điều kiện> then <câu lệnh>;

b Dạng đủ

if <điều kiện> then <câu lệnh 1> else <câu

lệnh 2>;

Trong đó:

- điều kiện: là biểu thức logic

- câu lệnh, câu lệnh 1, câu lệnh 2 là một câu

lệnh của Pascal

Hoạt động:

- Dạng thiếu: Nếu điều kiện đúng thì câu

lệnh được thực hiện nếu điều kiện sai câu

lệnh bị bỏ qua

- Dạng đủ: Nếu điều kiện đúng thì câu lệnh

1 được thực hiện nếu điều kiện sai thì câu

lệnh 2 được thực hiện

Sơ đồ hoạt động:

Hs ghi chép

Hs ghi chép

Hs ghi chép

Trang 6

Hs ghi chép

Hs ghi chép

3 Luyện tập vận dụng

(1) Mục tiêu: Học sinh vận dụng được câu lệnh IF – Then viết được đoạn lệnh cho bài toán cụ thể

(2) Phương pháp/ kỹ thuật dạy học: Hoạt động nhóm, hoạt động cá nhân (3) Phương tiện: Máy tính, máy chiếu, giấy A3

(4) Sản phẩm: Báo cáo kết quả hoạt động của nhóm mình

Hoạt động của giáo viên Hoạt động của học sinh

Giáo viên cho các nhóm viết câu lệnh if –

then thể hiện ví dụ:

- Nếu delta >= 0 thì thông báo phương trình

có nghiệm

- Nếu delta<0 thì thông báo phương trình vô

nghiệm

- Nếu delta <0 thì thông báo phương trình

vô nghiệm nếu không thì thông báo phương

trình có nghiệm

GV yêu cầu một nhóm trình bày còn nhóm

còn lại nhận xét

Ví dụ 2: Viết câu lệnh if – then tìm giá trị

Hs làm việc theo nhóm để hoàn thiện

Nhóm cử đại diện trình bày ví dụ

Trang 7

nhỏ nhất của hai số nguyên a, b

GV: yêu cầu hai nhóm thực hiện viết câu

lệnh if – then dạng thiếu, và hai nhóm viết

câu lệnh if then dạng đủ

Hs làm việc theo nhóm để hoàn thiện

Nhóm cử đại diện trình bày ví dụ nhóm còn lại nghe và nhận xét

Câu trả lời mong đợi:

Dạng thiếu

If a<b then min:=a;

If a>b then min:=b;

Dạng đủ

If a<b then min:=a Else min:=b;

4 Hoạt động mở rộng

(1) Mục tiêu: Giúp những học sinh khá giỏi được luyện tập sâu hơn về câu lệnh IF - THEN

(2) Phương pháp/ kỹ thuật dạy học: Hoạt động cá nhân tại nhà

(3) Phương tiện: SGK

(4) Sản phẩm: học sinh sử dụng được câu lệnh IF – THEN để giải bài toán

Hoạt động của giáo viên Hoạt động của học sinh

Giáo viên cho hs các nhóm điền thực hiện ví

dụ: Viết câu lệnh if – then tìm giá trị lớn

nhất của ba số nguyên a, b, c

(?) Đưa ra thuật toán cho bài toán trên Câu trả lời mong đợi:

Cách 1

Nếu a>=b và a>= c thì a là lớn nhất

Nếu a=<b và c =< b thì b là lớn

Trang 8

GV: yêu cầu nhóm 1 và 3 viết câu lệnh if

-then theo cách 1

Nhóm 2, 4 viết theo cách 2

GV yêu cầu viết chương trình nếu còn thời

gian

Chương trình:

program tim_max;

uses crt;

var a,b,c: integer;

begin

writeln('Nhap a, b,c: ');

readln(a, b, c);

if (a >= b) and (a>=c) then max:=a;

if (b>=a) and (b>=c) then max:=b;

if (c>=a) and (c>=b) then max:=c;

writeln('Gia tri lon nhat la ', max);

readln

end

nhất Nếu c>=b và c>=a thì c là lớn nhất

Cách 2: dùng biến Max Max:=a;

Nếu max <= b thì max := b;

Nếu max<= c thì max:= c;

Hs làm việc theo nhóm để hoàn thiện

Nhóm cử đại diện trình bày ví dụ nhóm còn lại nghe và nhận xét

Câu trả lời mong đợi

Cách 1

If (a>=b) and (a>=c) then max:=a;

If (b>=a) and (b>=c) then max:=b;

If (c>=a) and (c>=b) then max:=c; Cách 2

Max:=a;

if max <= b then max := b;

if max<= c then max:= c;

V Củng cố dặn dò.

Trang 9

- Câu lệnh rẽ nhánh dạng thiếu dạng đủ,

- BTVN: HS hoàn thiện chương trình tìm Max của ba số;

Làm bài tập 4 SGK tr51

Tiết 12 CÂU LỆNH RẼ NHÁNH

I Mục tiêu bài học:

1 Kiến thức:

- Giới thiệu cú pháp và chức năng câu lệnh ghép

2 Kỹ năng:

- Rèn luyện kỹ năng sử dụng câu lệnh rẽ nhánh và câu lệnh ghép để viết

các chương trình có sử dụng các câu lệnh này

3 Thái độ:

- Học tập tích cực, nghiêm túc

II Chuẩn bị

1 Giáo viên

- Phiếu học tập

- Giáo án

2 Học sinh

- Sách vở

III Tiến trình lên lớp

1 Khởi động

- Đưa ra ví dụ trong trường hợp delta >0 và trường hợp delta = 0 thì cần tính các giá trị nghiệm và phải thực hiện nhiều hơn một lệnh sau từ khoá then của câu lệnh if - then

2 Hình thành kiến thức - Cấu trúc câu lệnh ghép

3 Luyện tập

- Áp dụng câu lệnh if – then, câu lệnh ghép vào thể hiện rẽ nhánh với ví dụ giải phương trình bậc hai

4 Mở rộng - Áp dụng câu lệnh if – then, câu lệnh ghép

Trang 10

vào viết đoạn chương trình kiểm tra ba số có tạo thành số đo ba cạnh của tam giác hay không?

IV Hướng dẫn cụ thể tiến trình dạy học

1 Tình huống xuất phát

(1) Mục tiêu: Tạo mâu thuẫn dẫn đến việc cần có câu lệnh ghép Tạo nhu cầu cần tìm hiểu kiến thức mới của học sinh

(2) Phương pháp/ kỹ thuật dạy học: Thuyết trình, nêu và giải quyết vấn đề (3) Phương tiện: máy tính, máy chiếu

(4) Sản phẩm: Học sinh có nhu cầu tìm hiểu kiến thức mới để giải quyến vấn đề gặp phải

Hoạt động của giáo viên Hoạt động của học sinh

Sau khi học sinh đã tìm hiểu về cấu

trúc if-then GV chia lớp thành bốn

nhóm với yêu cầu sau

Nhóm 1,3

Yêu cầu: viết đoạn lệnh thực hiện

yêu câu sau

Nếu delta > 0 thì

- Thông báo phương trình có hai

nghiệm

- Tính nghiệm x1

- Tính nghiệm x2

- Thông báo giá trị của x1,x2 ra

màn hình

Nhóm 2,4

Yêu cầu: viết đoạn lệnh thực hiện

yêu câu sau

Nếu delta = 0 thì

phương trình có nghiệm kép

Câu trả lời mong đợi:

Nhóm 1:

If delta>0 then writeIn(‘Phuong trinh co hai Nghiem’);

x1:= (-b+sqrt(delta))/(2*a); x2:= (-b-sqrt(delta))/(2*a); write(‘x1=‘,x1,’x2=‘,x2);

Nhóm 2:

If delta=0 then writeIn(‘Phuong trinh co Nghiem kep’);

x:= -b+/(2*a);

write(‘x=‘,x);

Trang 11

- Tính nghiệm x

của x ra màn hình

Giáo viên đặt câu hỏi: trong cấu trúc

của câu lệnh if- then thì câu lệnh ở

đây được hiểu là một câu lệnh

Nhưng thực tế với yêu cầu trên

chúng ta phải xử lý nhiều hơn một

câu lệnh Vậy làm thế nào để không

bị lỗi về cú pháp và vẫn đảm bảo

tính đúng đắn

Hs có thể có câu trả lời tuỳ ý

2 HÌNH THÀNH KIẾN THỨC

(1) Mục tiêu: Học sinh nắm được chức năng, cấu trúc của câu lệnh ghép

(2) Phương pháp/ kỹ thuật dạy học: thuyết trình, phát vấn

(3) Phương tiện: máy tính, máy chiếu

(4) Sản phẩm: học sinh hiểu được chức năng của câu lệnh ghép

Hoạt động của giáo viên Hoạt động của học sinh

Giáo viên trình bày về câu lệnh ghép

1 Câu lệnh ghép

- Chức năng của lệnh ghép:

Ghép hai hay nhiều câu lệnh

thành một nhóm lệnh

- Cấu trúc:

Begin <Dãy các lệnh>

Hs ghi chép

Trang 12

3 LUYỆN TẬP VẬN DỤNG

(1) Mục tiêu: Học sinh vận dụng được cấu trúc rẽ nhánh, câu lệnh ghép để viết chương trình cho một số bài toán đơn giản

(2) Phương pháp/ kỹ thuật dạy học: hoạt động nhóm/ cá nhân

(3) Phương tiện: máy tính, máy chiếu, máy ảnh

(4) Sản phẩm: Các chương trình là sản phẩm hoạt động nhóm của học sinh

Hoạt động của giáo viên Hoạt động của học sinh

- Giáo viên cho hs hai nhóm điền begin

end vào đúng vị trí trong ví dụ đã tìm

hiểu ở hoạt động 1

Nhóm 1,3:

If delta>0 then

Begin

writeIn(‘Phuong trinh co hai

Nghiem’);

x1:= (-b+sqrt(delta))/(2*a);

x2:= (-b-sqrt(delta))/(2*a);

write(‘x1=‘,x1,’x2=‘,x2);

End;

Nhóm 2, 4:

If delta=0 then

Begin

writeIn(‘Phuong trinh co

Hs làm việc theo nhóm để hoàn thiện

Nhóm cử đại diện báo cáo kết quả, nhóm còn lại nghe và nhận xét

Nhóm cử đại diện báo cáo kết quả, nhóm còn lại nghe và nhận xét

Trang 13

Nghiem kep’);

x:= -b+/(2*a);

write(‘x=‘,x);

End;

- Giáo viên chiếu chương trình giải

phương trình bậc hai (Phụ lục 2)

ax2 + bx +c = 0 (a<>0) với các bộ

dữ liệu

TH1 1 5 -6

TH2 2 4 2

TH3 1 1 1

Với từng trường hợp hs quan sát kết

quả và nhận biết quá trình rẽ nhánh của

câu lệnh

HS quan sát quá trình thực hiện của chương trình và đặc biệt là quá trình

rẽ nhánh của thuật toán

4 HOẠT ĐỘNG MỞ RỘNG

(1) Mục tiêu: Giúp những học sinh khá giỏi được luyện tập sâu hơn về câu lệnh IF – THEN, câu lệnh ghép

(2) Phương pháp/ kỹ thuật dạy học: Hoạt động cá nhân tại nhà

(3) Phương tiện: SGK

(4) Sản phẩm: học sinh sử dụng được câu lệnh IF – THEN để giải bài toán

Hoạt động của giáo viên Hoạt động của học sinh

Giáo viên cho hs hai nhóm thực hiện ví

dụ:

Với a, b, c là ba số nguyên dương được

Hs làm việc theo nhóm để hoàn thiện

Trang 14

nhập vào từ bàn phím Kiểm tra xem

ba số theo thứ tự nhập vào có tạo thành

số đo ba cạnh của tam giác không?

Nếu là tam giác thì tính chu vi tam

giác và hông báo kết quả ra màn hình

Viết đoạn chương trình thực hiện yêu

cầu trên

(?) Xác định bài toán

(?) Ý tưởng giải quyết bài toán

Chương trình

program tamgiac;

uses crt;

var a, b, c: real;

cv : real;

begin

clrscr;

write('Nhap canh A: ');

readln(a);

write('Nhap canh B: ');

readln(b);

write('Nhap canh C: ');

Câu trả lời mong đợi

- Input: a, b, c

- Output: là số đo ba cạnh của tam giác và giá trị chu vi hoặc không là số

đo ba cạnh của tam giác

Trả lời:

Nếu a < b + c và b< a + c và c < a + b thì thông báo tạo thành số đo ba cạnh của tam giác và tình chu vi, nếu không thì thông báo không tạo thành

số đo ba cạnh của tam giác

Hs làm việc theo nhóm để hoàn thiện

Trang 15

if (a<(c+b)) and (c<(a+b))

and (b<(c+a)) then

begin

writeln(' la so do cac

canh tam giac ');

cv:= a+b+c;

writeln(' chu vi = ',cv);

end

else writeln(' khong la so

do cac canh tam giac ');

readln;

end.

Hs làm việc theo nhóm để hoàn thiện

Hs làm việc theo nhóm để hoàn thiện

cử đại diện báo cáo

5 Củng cố và hướng dẫn về nhà

* Cấu trúc rẽ nhánh

- Dạng thiếu : if <điều kiện> then <câu lệnh>;

- Dạng đủ: if <điều kiện> then <câu lệnh 1> else <câu lệnh 2>;

* Câu lệnh ghép

Begin

<Dãy lệnh>

End;

BTVN: học sinh tiếp tục hoàn thiện chương trình kiểm tra ba số có tạo thành cấp số cộng hay không

6 Kiểm tra đánh giá mức độ tiếp thu của học sinh cuối chuyên đề (Phụ lục 3)

Trang 16

Phụ lục 1

Chương trình giải phương trình bậc 2 chưa sử dụng câu lệnh if - then

var a,b,c,delta:real;

x1,x2:real;

begin

write('Nhap a, b, c : ');

readln(a,b,c);

delta:= sqr(b) - 4*a*c;

x1:= (-b-sqrt(delta))/(2*a);

x2:= (-b+sqrt(delta))/(2*a);

writeln('x1= ',x1:4:2);

writeln('x2= ',x2:4:2);

readln;

end.

Phụ lục 2

Chương trình giải phương trình bậc 2 hoàn chỉnh

program giai_ptb2;

uses crt;

var a,b,c,d: real;

x1, x2 ,x: real;

begin

clrscr;

write('Nhap a, b,c: ');

readln(a,b,c);

d:=b*b-4*a*c;

if d<0 then writeln('phuong trinh vo nghiem')

else

if d>0 then

Ngày đăng: 16/03/2019, 16:21

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