Bài giảng Tin học Lớp 11 - Bài 17: Chương trình con và phân loại - Trường THPT Bắc Đông Quan
KHÁI NIỆM CHƯƠNG TRÌNH CON
a. Bài toán đặt vấn đề
Viết chương trình tính tổng :
S = an + bm + cp +dq
Nhận xét:
Có thể chia bài toán thành các bài toán nhỏ
- Bài toán 1 tính an
- Bài toán 2 tính bm
- Bài toán 3 tính cp
- Bài toán 4 tính dq
S = an + bm + cp + dq
CHÀO MỪNG CÁC THẦY CÔ GIÁO VÀ CÁC EM HỌC SINHVỀ DỰ HỘI GIẢNGBÀI 17: CHƯƠNG TRÌNH CON VÀ PHÂN LOẠIGiáo viên: Môn Tin học lớp 11Trêng THPT B¾c §«ng QuanKIỂM TRA BÀI CŨHãy viết đoạn chương trình tính xn Đoạn chương trình tính xn:Var LuyThua, x: real; n, i: integer;Begin LuyThua:= 1.0; For i:=1 to n do LuyThua:= LuyThua*x;End;Viết chương trình tính tổng : S = an + bm + cp +dqNhận xét về cách thực hiện bài toánNhận xét: Có thể chia bài toán thành các bài toán nhỏ- Bài toán 1 tính an- Bài toán 2 tính bm - Bài toán 3 tính cp - Bài toán 4 tính dq S = an + bm + cp + dq BµI 17: CH¦¥NG TR×NH CON Vµ PH¢N LO¹INhóm trưởngTính anTính cpTính bmTính dq1. KHÁI NIỆM CHƯƠNG TRÌNH CONa. Bài toán đặt vấn đềBµI 17: CH¦¥NG TR×NH CON Vµ PH¢N LO¹I1. KHÁI NIỆM CHƯƠNG TRÌNH CONa. Bài toán đặt vấn đề: Viết chương trình tính tổng: S = an + bm + cp +dqLuythua1:=1.0;For i:=1 to n Do Luythua1:=Luythua1*a;Program Tinh_tong;Var TLuythua, Luythua1, Luythua2,Luythua3,Luythua4:real; a,b,c,d:real; i,n,m,p,q:Integer;Begin Write(‘Hay nhap du lieu theo thu tu a,b,c,d,n,m,p,q: ’); Readln(a,b,c,d,n,m,p,q);Luythua2:=1.0;For i:=1 to m Do Luythua2:=Luythua2*b;Luythua3:=1.0;For i:=1 to p Do Luythua3:=luythua3*c;Luythua4:=1.0;For i:=1 to q Do Luythua4:=Luythua4*d; TLuythua:=Luythua1+ Luythua2+ Luythua3+ Luythua4; Writeln(‘Tong Luy thua =‘, TLuythua:8:4); Readln;End. Em nhận xét gì về bốn đoạn chương trình này?Function Luythua(x: real; k: integer): real;Var i: Integer;Begin Tich:=1.0; For i:=1 to k Do Tich:=Tich*x; Luythua:=Tich;End;BµI 17: CH¦¥NG TR×NH CON Vµ PH¢N LO¹IProgram Tinh_tong;Var TLuythua : real; a,b,c,d : real; i,n,m,p,q : Integer;Begin Write(‘Hay nhap du lieu theo thu tu a,b,c,d,n,m,p,q: ’); Readln(a,b,c,d,n,m,p,q); TLuythua:= Writeln(‘Ket qua la = ‘, TLuythua:8:4);Readln;End.Chương trình conThực hiện (gọi) chương trình conChương trình chính1. KHÁI NIỆM CHƯƠNG TRÌNH CONa. Bài toán đặt vấn đề: Viết chương trình tính tổng: S = an + bm + cp +dqCHƯƠNG TRÌNH CON LÀ GÌ?Với x = a và k = n thì:an = Với x = b và k = m thìbm =Với x = c và k = p thìcp =Với x = d và k = q thìdq =Luythua(a,n)Luythua(b,m)Luythua(c,p)Luythua(d,q)+Tính xk++BµI 17: CH¦¥NG TR×NH CON Vµ PH¢N LO¹I1. KHÁI NIỆM CHƯƠNG TRÌNH CONa. Bài toán đặt vấn đề: Viết chương trình tính tổng: S = an + bm + cp +dqb. Khái niệm chương trình con:Chương trình conMột dãy lệnh mô tả một số thao tác nhất địnhCó thể được thực hiện (được gọi) từ nhiều vị trí trong chương trìnhNhận xét:- Có thể chia một bài toán lớn (chương trình chính) thành các bài toán nhỏ. Mỗi bài toán sẽ được xây dựng thành một chương trình con.- Chương trình chính được xây dựng từ các chương trình con và chương trình con cũng có thể được xây dựng từ những chương trình con khác. Cách lập trình trên gọi là lập trình có cấu trúc và chương trình xây dựng dược gọi là chương trình có cấu trúc.BµI 17: CH¦¥NG TR×NH CON Vµ PH¢N LO¹ILợi ích?Tránh phải viết lặp đi lặp lại một đoạn lệnh nào đó.Hỗ trợ việc thực hiện các chương trình lớn. Phục vụ cho quá trình trừu tượng hoá.Mở rộng khả năng ngôn ngữ.Thuận tiện cho phát triển, nâng cấp chương trình.1. KHÁI NIỆM CHƯƠNG TRÌNH CONa. Bài toán đặt vấn đề: Viết chương trình tính tổng: S = an + bm + cp +dqKhái niệm chương trình con:Lợi ích của việc sử dụng chương trình conÔn tập và củng cốCâu 1: CTC dùng để làm gì?Trong tiết này, chúng ta đã tìm hiểu khái niệm chương trình con và tác dụng của nó. Về nhà, các em nghiên cứu lại nội dung bài và tìm hiểu trước “phân loại và cấu trúc của chương trình con”.Lập trình viên trưởng CTC 3CTC 1CTC 2CTC 4Phân chia công việc cho nhiều ngườiLuythua1:=1.0;For i:=1 to n Do Luythua1:=Luythua1*a;Program Tinh_tong;Var TLuythua, Luythua1, Luythua2,Luythua3, Luythua4: real; a,b,c,d:real; i,n,m,p,q:Integer;Begin Write(‘Hay nhap du lieu theo thu tu a,b,c,d,n,m,p,q: ’); Readln(a,b,c,d,n,m,p,q);Luythua2:=1.0;For i:=1 to m Do Luythua2:=Luythua2*b;Luythua3:=1.0;For i:=1 to p Do Luythua3:=luythua3*c;Luythua4:=1.0;For i:=1 to q Do Luythua4:=Luythua4*d; TLuythua:=Luythua1+ Luythua2+ Luythua3+ Luythua4; Writeln(‘Tong Luy thua =‘, TLuythua:8:4); Readln;End. Function Luythua(x: real; k: integer): real;Var i: Integer;Begin Tich:=1.0; For i:=1 to k Do Tich:=Tich*x; Luythua:=Tich;End;Program Tinh_tong;Var TLuythua : real; a,b,c,d : real; i,n,m,p,q : Integer;Begin Write(‘Hay nhap du lieu theo thu tu a,b,c,d,n,m,p,q: ’); Readln(a,b,c,d,n,m,p,q); TLuythua:= Luythua(a, n)+ Luythua(b, m) + Luythua(c, p) + Luythua(d, q);Writeln(‘Ket qua la = ‘, TLuythua:8:4);Readln;End.Em hãy so sánh hai chương trình sau và rút ra nhận xét.
File đính kèm:
- Giao an chuong trinh con.ppt