chương vi chương vi chương trình con và lập trình có cấu trúc baøi daïy chương trình con và phân loại i mục đích yêu cầu kiến thức nắm được khái niệm chương trình con sự khác biệt cơ bản giữa

8 25 0
chương vi chương vi chương trình con và lập trình có cấu trúc baøi daïy chương trình con và phân loại i mục đích yêu cầu kiến thức nắm được khái niệm chương trình con sự khác biệt cơ bản giữa

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

Thông tin tài liệu

Như vậy đối với bài toán này ta phải tính đến bốn luỹ thừa sau đó cộng lại sẽ được tổng Do đó khi viết chương trình giải các bài toán như thế này hay bài toán phức tạp hơn thường rất d[r]

(1)

Chương VI

CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CĨ CẤU TRÚC

Bài dạy: CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI   

I MỤC ĐÍCH, YÊU CẦU:Kiến thức:

- Nắm khái niệm chương trình - Sự khác biệt hàm thủ tục

- Phân biệt điểm giống khác cấu trúc chương trình chương trình

- Biết quan hệ tham số hình thức tham số thực - Biến cục bộ: cách khai báo phạm vi sử dụng

Kỹ năng:

- Chưa địi hỏi phải có kỹ cụ thể

Thái độ:

- Tiếp tục rèn luyện phẩm chất người lập trình tinh thần hợp tác, sẵn sàng làm việc theo nhóm

II PHƯƠNG PHÁP, PHƯƠNG TIỆN:

- Phương pháp gợi mở nêu vấn đề, phương pháp hỏi – đáp, phương pháp thuyết trình

-Máy chiếu Projector

- Một số chương trình con: Tính_tong, Tinh_tong2 (Co sử dụng chương trình con)

III NỘI DUNG TIẾT DẠY

A. Tổ chức lớp: Ổn định kiểm tra sĩ số.

B. Kiểm tra cũ: Không kiểm tra.

(2)

HOẠT ĐỘNG GIÁO VIÊN HOẠT ĐỘNG HỌC SINH NỘI DUNG

Xét tốn:

Tính tổng bốn luỹ thừa: Tluythua=an+bm+cp+dq

để tính tổng bốn luỹ thừa ta làm nào?

Tính tất luỹ thừa để tổng luỹ thừa?

Như toán ta phải tính đến bốn luỹ thừa sau cộng lại tổng Do viết chương trình giải toán hay toán phức tạp thường dài, dùng nhiều lệnh Khi đọc chương trình dài Khi đọc khó nhân biết chương trình thực cơng việc việc hiệu chỉnh chương trình khó khăn Vậy phải cấu tạo chương trình chương trình dể đọc, dể hiệu chỉnh nâng cấp Trong chương trình ta nghiên cứu vấn đề chương trình Vậy chương trình gì? Cách viết, cách sử dụng chúng nào? Ta tìm hiểu qua 17: CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI

-ghi tựa vài phần I

Hoạt động 1: Khái niệm chương trình Trở lại toán tinh tổng luỹ thừa Chúng ta phải tính kết bốn tốn nhỏ cộng lại có tổng luỹ thừa Có nghĩa chia toán thành bốn tốn con, tốn chia thành toán nhỏ Đây cách thiết kế từ xuống

Để giải toán máy tính phân chia chương trình thành khối (Modul), khối bao gồm lệnh giải tốn Chương trình xây dựng từ chương trình

+ Chương trình gì?

Tình luỹ thừa Tính bốn luỹ thừa

Nghe giảng

HS suy nghĩ trả lời

-Một học sinh trả lời - Một học sinh khác phát biểu lại

Chương VI:Chương Trình

Con vàLập Trình CóCấu

Trúc

Bài 17:CHƯƠNH TRÌNH CONVÀ PHÂN LOẠI

I Khái niệm chương trình con

(3)

-Nhấn mạnh khái niệm Chương trình cho học sinh ghi vào tập

-Nhaéc lại kiến thức cũ cách tính luỹ thừa bên tốn học

a3=a*a*a

a4=a*a*a*a

an=a*a* *a (n lần)

Để hiểu rõ tác dụng chương trình ta tìm hiểu ví dụ sau:

Chương trình nhập liệu từ bàn phím tính đưa hình giá trị Tluythua mô tả với a,b,c,d kiểu thực m,n,p,q có kiểu nguyên có thề viết Pascal sau

Program tinh_tong;

Var Tluythừa, luythua1, luythua2, luythua3, luythua4:real;

a, b, c, d:real; i,n,m,p,q:integer; Begin

Write(‘Hãy nhập liệu theo thứ tự a,b,c,d,m,n,p,q’);

Readln(a,b,c,d,m,n,p,q);

Luythua1:=1.0 For i:=1 to n

Luythua1:=luythua1*a;

Luythua2:=1.0 For i:=1 to m

Luythua2:=luythua2*b; Luythua3:=1.0

For i:=1 to p

Luythua3:=luythua3*c;

Luythua4:=1.0 For i:=1 to q

Luythua4:=luythua4*d;

Tluythua:=luythua1+luythua2+luythua3+luy thua4;

Writeln(‘Tong luy thua= ‘,Tluythua 8:4); readln

end

Hãy nêu nhận xét đoạn chương trình đổi màu

Mỗi HS tự đọc đoạn chương trình đđổi màu nêu nhận xét đoạn chương trình

Nghe giảng

(4)

-Nhấn mạnh:trong đoạn có bốn đoạn lệnh tương tự dẫn đến chương trình dài khó theo dõi

-Để xử lí vấn đề ngơn ngữ lập trình bậc cao cung cấp khả xây dựng chương trình dạng tổng quát “đại diện” cho nhiều đoạn lệnh tương tự

- Thay phải gõ nhiều đoạn lệnh ta cần gõ đoạn gọi chương trình nhiều lần

Ví dụ: tính luythua=xk , Trong đó:

Luythua,x:real k:integer

Var j:integer; Tich:=1.0; For j:=1 to k Tich:=Tich*x;

Khi ta đặt tên cho chương trình luythua tên biến chứa liệu vào x k

Khi cần tính luythua giá trị cụ thể cần viết tên gọi chương trình thay thế( x, k) giá trị cụ thể tương ứng

Ví dụ để tính an,bm,cp,dq ta viết

Luythua(a,n),Luythua(b,m),Luythua(c,p),Lu ythua(d,q)

Hoạt động :Lợi ích việc sử dụng chương trình

Khi sử dụng CTC có lợi ích ?

Giới thiệu lợi ích lấy ví dụ minh hoạ

-Ví dụ:bài luỹ thừa

-Ví dụ:quản lí điểm HS

-Ví dụ:khi sử dụng hàm tốn học ta khơng cần xem xây dựng

-Ví dụ:trong tốn luỹ thừa ta xây dựng thêm chương trình luỹ thừa

Chú ý lắng nghe ghi

Chú ý lắng nghe

*Lợi ích iệc sử dụng chươngtrình con

-Tránh việc phải viết lặp lặp lại dãy lệnh

-Hổ trợ việc thực chương trình lớn

-Phục vụ cho trình trừu tượng hố

-Mở rộng khả ngơn ngữ

-Thuận tiện cho phát triển , nâng cấp chương trình

II Phân loại cấu trúc chương trình

1.Phân loại

(5)

Hoạt động :Để xây dựng chương trình có hiệu ta tìm hiểu sang phần II: Phân loại vàïù cấu trúc chương trình

Trong nhiều ngơn ngữ lập trình, chương trình thường gồm hai loại: hàm thủ tục

Vậy hàm gì? Thủ tục gì? Giới thiệu hàm thủ tục

Hãy nêu khác hàm thủ tục? Chốt lại

Cho ví dụ minh họa hàm thủ tục

Một chương trình có cấu trúc tìm hiểu sang phần

Chương trình có cấu trúc tương tự chương trình chính.Hãy nêu cấu trúc chương trình chính?

-Giới thiệu cấu trúc chương trình -Giảng phần đầu, phần khai báo , phần thân +Phần đầu phần sử dụng chương trình loại hàm thủ tục

+Phần khai báo có khai báo biến cho liệu vào ra, biếndùng chương trình

Suy nghĩ trả lời

suy nghĩ trả lời [(phần khai báo)] <phần thân> HS khác nhận xét

HS ghi baøi

HS ý lắng nghe

con thực số thao tác trả giá trị qua tên

*Thủ tục (procedure) chương trình thực thao tác định khơng trả giá trị qua tên

2.Cấu trúc chương trình con

<phần đầu> [<phần khai báo>]

<phần thân>

Tham số hình thức

-Tham số hình thức chương trình biến khai Là chương trình

Thực số thao tác Trả giá trị qua tên hàm

Hàm

Là chươngtrình

Thực số thao tác

Thủ tục

(6)

+Phần thân chương trình dãy câu lệnh thực để từ nhungữ liệu vào ta nhận liệu hay kết mong muốn GV giới thiệu tham số hình thức

Cho ví dụ :trong chương trình

luythua(x,k) x,k tham số hình thức j biến cục

Chú ý:

-Chương trình sử dụng biến tồn cục chương trình khơng sử dụng biến cục

-Một chương trình thường có khơng có tham số hình thức biến cục

Để gọi chương trình ta làm nhụ tìm hiểu sang phần

Yêu cầu HS trả lời câu hỏi +Cách gọi chương trình gì? +Tham số thực gì?

Gọi HS trả lời

GV nhận xét cho HS ghi GV đưa ví dụ

Luythua(x,k) Tên CTC TS hình thức

Luythua(a,n) Tên CTC TS thực

-Yêu cầu HS nắm khái niệm chương trình

Nhấn mạnh: Một chương trình nên xây dựng từ chương trình nhằm đạt hiểu quảcao giải vấn đề

Tóm lại : Qua học hơm ta cần nắm kiến thức nào?

GV trình chiếu khái quát nội dung

HS ghi vào

HS ý lắng nghe ghi

HS trả lời

báo cho liệu vào chương trình

-Biến cục biến khai báo chương trình -Biến tồn cuc biến khai báo chương trình

3.Thực chương trình con

-Cách gọi chương trình phải có lệnh gọi bao gồm tên chương trình với tham số -Các biến chứa liệu vào tương ứng với tham số hình thức đặt cặp

(7)

học

+khái niệm chương trình lợi ích chương trình

+Phân loại: hàm thủ tục +Cấu trúc chương trình

+Tham số hình thức, tham số thực cách gọi chương trình

+Biến tồn cục, biến cục

D.Củng cố:

Vận dụng kiến thức học trả lời câu hỏi qua tập sau GV đưa tập yêu cầu HS thảo luận theo nhóm trả lời

Bài tập1: Hãy chọn câu trả lời

1)Sự giống cấu trúc chương trình chương trình A/ [<phần khai báo>] B/ <phần đầu > C/ <phần đầu> <phần thân> [<phần khai báo>] <phần thân> 2)Sự khác cấu trúc chương tình chương trình A/ [<phần khai báo>] B/ <phần đầu> C/ <phần thân>

Bài tập 2:Chương trình Tinh_tong có sử dụng chương trình Program tinh_tịng;

Var Tluythua, a, b, c, d:real; i,n,m,p,q:integer;

function luythua(a:real; k:integer):real; var j:integer;

tich:real; begin

tich:=1.0; for j:=1 to k tich:=tich*a; luythua:=tich; end;

begin

Writeln(‘Hay nhap du lieu theo thu tu a,b,c,d,m,n,p,q ‘); Readln(a,b,c,d,m,n,p,q);

Tluythua:=luythua(a,n) + luythua(b,m) +luythua(c,p) + luythua(d,q) ; Writeln(‘Tong luy thua=’,tluythua:8:4);

Readln End

a) Hãy cho biết dãy lệnh thể chương trình chương trình

(8)

c) Nêu biến toàn cục, biến cục phạm vi ảnh hưởng chúng chương trình Nêu khác biến tồn biến cục

E.Dặn dò:

- Về nhà học xem lại tập giải

-Tiết học hôm ta biết khái niệm chương trình cịn cách viết sử dụng chương trình ta tìm hiểu qua 18

Ngày đăng: 18/04/2021, 04:28

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan