SlideShare a Scribd company logo
1 of 19
CHƯƠNG IV: CHƯƠNG TRÌNH CON
VÀ LẬP TRÌNH CÓ CẤU TRÚC
BÀI 17: CHƯƠNG TRÌNH CON VÀ
PHÂN LOẠI
Nhóm 22:
Trần Nữ Tú Trinh – K33103060
Nguyễn Tiến Dưỡng – K33103008
CHƯƠNG TRÌNH CON
Cho một ngũ giác (như hình vẽ) với các độ dài a, b,
c, d, e, f, g. Hãy tính diện tính hình sau đây?
b
c
a
B
C
A
g
e
d
E
f
D
Để tính diện tích của hình trên thì ta cần phải tính diện
tích của từng tam giác nhỏ. Sau đó cộng diện tích của 3
tam giác đó lại.
2
b
ca
B
C
A
g
e d
E
f
D
writeln('Moi nhap a, b, c: ');
readln(a,b,c);
p1:=(a+b+c)/2;
s1:= sqrt(p1*(p1-a)*(p1-b)*(p1-c));
writeln('Moi nhap g, f: ');
readln(g, f);
p3:=(e+f+g)/2;
s3:= sqrt(p3*(p3-e)*(p3-g)*(p3-f));
writeln('Moi nhap d, e: ');
readln(d, e);
p2:=(c+d+e)/2;
s2:= sqrt(p2*(p2-c)*(p2-d)*(p2-e));
s:=s1+s2+s3;
writeln('Dien tich cua ngu giac la: ', s);
var a, b, c, p, s: real;
Begin
writeln(‘Nhap canh cua tam giac can tinh: ‘);
p:= (a+b+c)/2;
s:= sqrt(p*(p-a)*(p-b)*(p-c);
end;
3
CHƯƠNG TRÌNH CON
 Việc giải quyết 1 bài toán phức tạp có thể phân thành các bài toán con.
 Khi lập trình, để viết chương trình giải các bài toán lớn, phức tạp người
lập trình có thể chia thành nhiều bài toán nhỏ (còn gọi là khối), mỗi bài
toán là một dãy lệnh mô tả một số thao tác nhất định (gọi là chương trình
con). Sau đó ghép nối các chương trình con thành chương trình chính.
Nhóm trưởng
4
CHƯƠNG TRÌNH CON
 Chương trình con là một khối lệnh nhằm giải quyết
một bài toán con để góp phần giải quyết một bài
toán lớn hơn bằng một chương trình.
 Khi phải viết những chương trình dài, phức tạp,
việc sử dụng chương trình con là hết sức cần thiết.
5
CHƯƠNG TRÌNH CON
program Phep_tinh_so_hoc;
var x, y: integer;
phep_tinh: char;
FUNCTION Cong(a, b: integer): integer;
begin
cong:=a + b;
end;
FUNCTION Tru(a, b: integer): integer;
begin
tru:=a - b;
end;
FUNCTION Nhan(a, b: integer): integer;
begin
nhan:=a * b;
end;
FUNCTION Chia(a, b: integer): integer;
begin
chia:=a DIV b;
end;
begin
writeln('Nhap so thu nhat: ');
readln(x);
writeln('Nhap so thu hai: ');
readln(y);
writeln('Nhap phep tinh (+, -, *, /): ');
readln(phep_tinh);
case phep_tinh of
'+':writeln('So ', x, ' + ', y, ' = ', cong(x,y));
'-':writeln('So ', x, ' - ', y, ' = ', tru(x, y));
'*':writeln('So ', x, ' * ', y, ' = ', nhan(x, y));
'/':writeln('So ', x, ' / ', y, ' = ', chia(x, y));
end;
readln;
end.
CHƯƠNG TRÌNH CON
(HAY KHỐI LỆNH)
6
LỢI ÍCH KHI SỬ DỤNG CHƯƠNG
TRÌNH CON
o Tránh được việc phải viết lặp đi lặp lại cùng
một dãy lệnh.
o Hỗ trợ việc thực hiện các chương trình lớn.
o Phục vụ cho quá trình trừu tượng hóa.
o Mở rộng khả năng ngôn ngữ.
o Thuận tiện cho phát triển, nâng cấp chương
trình.
7
THỦ TỤCHÀM
Là chương trình con thực hiện
các thao tác nhất định nào đó,
nhưng không trả về giá trị nào
qua tên của nó.
Là chương trình con thực hiện
một số thao tác nào đó, và trả
về một giá trị qua tên của nó.
- Nhập vào một dãy các số
nguyên dương.
- Xuất ra dãy số nguyên
dương.
- Vẽ các hình chữ nhật.
- Hàm tính n!
- Hàm tìm UCLN của hai số
nguyên dương.
- Hàm tìm giá trị lớn nhất (nhỏ
nhất) của hai hay nhiều số
nguyên.
PHÂN LOẠI CHƯƠNG TRÌNH CON
CHƯƠNG TRÌNH CON
8
PHÂN LOẠI CHƯƠNG TRÌNH CON
THỦ TỤC VẼ KÝ TỰHÀM TÍNH TỔNG 2 SỐ
PROCEDURE Ve(k: integer,
ky_tu:char);
Var i: integer;
Begin
For i:=1 to k do
Write(ky_tu);
End;
FUNCTION Cong(a, b:
integer): integer;
begin
cong:=a + b;
end;
CHƯƠNG TRÌNH CON
9
SO SÁNH HÀM VÀ THỦ TỤC
THỦ TỤC VẼ KÝ TỰHÀM TÍNH TỔNG 2 SỐ
PROCEDURE Ve(k: integer,
ky_tu:char);
Var i: integer;
Begin
For i:=1 to k do
Write(ky_tu);
End;
FUNCTION Cong(a, b:
integer): integer;
begin
cong:=a + b;
end;
- Từ khóa Procedure.
- Kết quả trả về không phải là
một giá trị.
- Từ khóa Function.
- Có kết quả trả về là một số
nguyên.
10
CẤU TRÚC CHƯƠNG TRÌNH CON
<phần đầu>
[<phần khai báo>]
<phần thân>
 Phần đầu: khai báo tên của chương trình con, nếu
là hàm phải khai báo kiểu dữ liệu trả về của hàm.
 Phần khai báo: khai báo biến cho dữ liệu vào và ra,
các hằng và biến dùng trong chương trình con.
 Phần thân: dãy câu lệnh.
11
SO SÁNH CẤU TRÚC CHƯƠNG TRÌNH
CHÍNH VÀ CHƯƠNG TRÌNH CON
CHƯƠNG TRÌNH CONCHƯƠNG TRÌNH CHÍNH
[<phần khai báo>]
<phần thân>
<phần đầu>
[<phần khai báo>]
<phần thân>
Chương trình con nhất thiết phải có tên và phần
đầu để khai báo tên, nếu là hàm thì phải khai
báo kiểu dữ liệu cho giá trị trả về của hàm
12
Tham số
hình thức
THAM SỐ HÌNH THỨC VÀ THAM SỐ
THỰC SỰ
THAM SỐ HÌNH THỨC THAM SỐ THỰC SỰ
Các biến được khai báo
cho dữ liệu vào/ ra được
gọi là tham số hình thức
của chương trình con.
Khi gọi 1 chương trình con,
ta cần phải có lệnh gọi nó
bao gồm tên chương trình
con với tham số đặt trong
dấu ngoặc ( ). Các tham số
này được gọi là tham số
thực sự.
Cong (2, 5)Cong (a, b)
Tên chương
trình con
Tên chương
trình con
Tham số
thực sự
13
TRUYỀN THAM SỐ
Cong (12, 4)Cong (a, b)
THAM SỐ HÌNH THỨC THAM SỐ THỰC SỰ
Cong (x, y)Cong (a, b)
THAM TRỊ
THAM BIẾN
14
BIẾN TOÀN CỤC VÀ BIẾN CỤC BỘ
BIẾN TOÀN CỤC BIẾN CỤC BỘ
Là biến được khai báo ở
đầu chương trình chính,
chúng tồn tại trong suốt
thời gian chạy của chương
trình. Biến toàn cục ảnh
hưởng toàn bộ chương
trình, cả chương trình
chính lẫn chương trình
con.
Là biến được khai báo
trong mỗi chương trình
con. Chúng được hình
thành khi chương trình con
được gọi và sẽ tự biến mất
khi chương trình con kết
thúc.
15
VÍ DỤ
Var a, b, c, d, m, n, p, q : integer;
i : integer;
TLuythua : real;
Function Luythua( x,k :integer) : real;
var j : integer;
Tich: = 1.0;
For j:=1 to k do
Tich: = Tich * x;
Luythua: = Tich;
BEGIN
Writeln(‘Nhap so can tinh luy thua: ’); Readln(a,b,c,d,n,m,p,q);
TLuythua:=Luythua(a,m) + Luythua(b,n) + Luythua(c,p) + Luythua(d,q);
Writeln(‘Tong luy thua la:’,TLuythua);
Readln;
END.
Biến toàn cục
Tham số hình thức
Biến cục bộ
Tham số thực sự
16
BÀI TẬP
Bài toán : Lập chương trình tối giản phân số
Ví dụ: nhập 6/10 => ra 3/5
 INPUT :
 OUTPUT :
 - Yêu cầu: viết chương trình con thực hiện tìm UCLN(a,b)
và gọi nó khi tính c,d trong chương trình chính.
Nhập phân số a/b;
?Phân số c/d - Trong đó:
c = a/UCLN (a,b);
d = b/UCLN(a,b);
?
17
Program Toi_gian_phan_so;
Uses crt;
Var tu, mau, c, d : integer;
Function UCLN( a,b :integer) : integer;
Begin
While a<> b do
if a>b then a := a-b else b:=b-a;
UCLN := a;
end;
BEGIN
Write(‘ Nhap vao tu so va mau so:’); readln(tu,mau);
c := tu div UCLN(tu,mau) ; d := mau div UCLN(tu,mau) ;
Writeln(‘ Phan so toi gian = ’, c, ‘ / ’, d);
Readln;
END.
Write(‘Nhap vao tu so va mau so:’)
c := 6 div d := 10 divUCLN(6,10) UCLN(6,10)
Writeln(‘ Phan so toi gian = ’, c, ‘ / ’, d);
Readln;
END.
BEGIN
readln(tu,mau);
USCLN=2;USCLN=2;
Nhap vao tu so va mau so: 6 10
Phan so toi gian= 3/5
18
NHẬN XÉT
 Các chương trình con thường được đặt sau
phần khai báo của chương trình chính.
 Chương trình con chỉ được thực hiện khi có lời
gọi nó.
19

More Related Content

What's hot

Lap trinh c++ có lời giải 1
Lap trinh c++ có lời giải 1Lap trinh c++ có lời giải 1
Lap trinh c++ có lời giải 1
Minh Ngoc Tran
 
Phần 12: Hàm (Nâng cao)
Phần 12: Hàm (Nâng cao)Phần 12: Hàm (Nâng cao)
Phần 12: Hàm (Nâng cao)
Huy Rùa
 
Bài tập nhập môn lập trình
Bài tập nhập môn lập trìnhBài tập nhập môn lập trình
Bài tập nhập môn lập trình
Huy Rùa
 
Bai tap lap trinh c
Bai tap lap trinh  cBai tap lap trinh  c
Bai tap lap trinh c
tiểu minh
 
Phần 7: Mảng một chiều
Phần 7: Mảng một chiềuPhần 7: Mảng một chiều
Phần 7: Mảng một chiều
Huy Rùa
 
đồ Thị hàm số chứa giá trị tuyệt đối
đồ Thị hàm số chứa giá trị tuyệt đốiđồ Thị hàm số chứa giá trị tuyệt đối
đồ Thị hàm số chứa giá trị tuyệt đối
Hướng Trần Minh
 

What's hot (20)

Lap trinh c++ có lời giải 1
Lap trinh c++ có lời giải 1Lap trinh c++ có lời giải 1
Lap trinh c++ có lời giải 1
 
Bài tập xâu cơ bản-nâng cao
Bài tập xâu cơ bản-nâng caoBài tập xâu cơ bản-nâng cao
Bài tập xâu cơ bản-nâng cao
 
Phần 12: Hàm (Nâng cao)
Phần 12: Hàm (Nâng cao)Phần 12: Hàm (Nâng cao)
Phần 12: Hàm (Nâng cao)
 
Các cấu trúc lệnh trong C
Các cấu trúc lệnh trong CCác cấu trúc lệnh trong C
Các cấu trúc lệnh trong C
 
Đề thi Kỹ thuật lập trình có lời giải
Đề thi Kỹ thuật lập trình có lời giảiĐề thi Kỹ thuật lập trình có lời giải
Đề thi Kỹ thuật lập trình có lời giải
 
30 bài toán phương pháp tính
30 bài toán phương pháp tính30 bài toán phương pháp tính
30 bài toán phương pháp tính
 
Bài tập nhập môn lập trình
Bài tập nhập môn lập trìnhBài tập nhập môn lập trình
Bài tập nhập môn lập trình
 
Bài tập kế toán tài chính doanh nghiệp có đáp án
Bài tập kế toán tài chính doanh nghiệp có đáp ánBài tập kế toán tài chính doanh nghiệp có đáp án
Bài tập kế toán tài chính doanh nghiệp có đáp án
 
Bài tập và đáp án môn nguyên lý thống kê
Bài tập và đáp án môn nguyên lý thống kêBài tập và đáp án môn nguyên lý thống kê
Bài tập và đáp án môn nguyên lý thống kê
 
biến đổi ma trận ( Transformation matrix)
biến đổi ma trận ( Transformation matrix)biến đổi ma trận ( Transformation matrix)
biến đổi ma trận ( Transformation matrix)
 
Bai tap lap trinh c
Bai tap lap trinh  cBai tap lap trinh  c
Bai tap lap trinh c
 
Giáo trình MSWLOGO Lớp 5
Giáo trình MSWLOGO Lớp 5Giáo trình MSWLOGO Lớp 5
Giáo trình MSWLOGO Lớp 5
 
Lập trình hướng đối tượng - p3
Lập trình hướng đối tượng - p3Lập trình hướng đối tượng - p3
Lập trình hướng đối tượng - p3
 
Phần 7: Mảng một chiều
Phần 7: Mảng một chiềuPhần 7: Mảng một chiều
Phần 7: Mảng một chiều
 
Hướng dẫn giải bài tập Đại Số Tuyến Tính
Hướng dẫn giải bài tập Đại Số Tuyến TínhHướng dẫn giải bài tập Đại Số Tuyến Tính
Hướng dẫn giải bài tập Đại Số Tuyến Tính
 
Bài giảng ngôn ngữ lập trình C cơ bản trường đại học công nghiệp thực phẩm TP...
Bài giảng ngôn ngữ lập trình C cơ bản trường đại học công nghiệp thực phẩm TP...Bài giảng ngôn ngữ lập trình C cơ bản trường đại học công nghiệp thực phẩm TP...
Bài giảng ngôn ngữ lập trình C cơ bản trường đại học công nghiệp thực phẩm TP...
 
Chuong 2
Chuong 2Chuong 2
Chuong 2
 
tác động của biến đổi khí hậu đến việt nam và một số giải pháp gợi ý
tác động của biến đổi khí hậu đến việt nam và một số giải pháp gợi ýtác động của biến đổi khí hậu đến việt nam và một số giải pháp gợi ý
tác động của biến đổi khí hậu đến việt nam và một số giải pháp gợi ý
 
đồ Thị hàm số chứa giá trị tuyệt đối
đồ Thị hàm số chứa giá trị tuyệt đốiđồ Thị hàm số chứa giá trị tuyệt đối
đồ Thị hàm số chứa giá trị tuyệt đối
 
Bài tập kế toán quản trị chi phí
Bài tập kế toán quản trị chi phíBài tập kế toán quản trị chi phí
Bài tập kế toán quản trị chi phí
 

Viewers also liked (12)

Bài 17 Chương trình con và phân loại
Bài 17 Chương trình con và phân loạiBài 17 Chương trình con và phân loại
Bài 17 Chương trình con và phân loại
 
Bài 17 tin học 11
Bài 17 tin học 11Bài 17 tin học 11
Bài 17 tin học 11
 
Các ví dụ về cách viết và sử dụng chương trình con
Các ví dụ về cách viết và sử dụng chương trình conCác ví dụ về cách viết và sử dụng chương trình con
Các ví dụ về cách viết và sử dụng chương trình con
 
Bài 18. Ví dụ về cách viết và sử dụng chương trình con.
Bài 18. Ví dụ về cách viết và sử dụng chương trình con.Bài 18. Ví dụ về cách viết và sử dụng chương trình con.
Bài 18. Ví dụ về cách viết và sử dụng chương trình con.
 
Kbdh bai17 lop11_chuong_trinhconvaphanloai
Kbdh bai17 lop11_chuong_trinhconvaphanloaiKbdh bai17 lop11_chuong_trinhconvaphanloai
Kbdh bai17 lop11_chuong_trinhconvaphanloai
 
Bai 17_ Tin Học 11
Bai 17_ Tin Học 11Bai 17_ Tin Học 11
Bai 17_ Tin Học 11
 
xuan17
xuan17xuan17
xuan17
 
KBDH-Trần Ký Lịnh - Bài 17 - CVI-Lớp 11
KBDH-Trần Ký Lịnh - Bài 17 - CVI-Lớp 11KBDH-Trần Ký Lịnh - Bài 17 - CVI-Lớp 11
KBDH-Trần Ký Lịnh - Bài 17 - CVI-Lớp 11
 
Vi du ve cach viet va dung chuong trinh con
Vi du ve cach viet va dung chuong trinh conVi du ve cach viet va dung chuong trinh con
Vi du ve cach viet va dung chuong trinh con
 
Bài 18 tin hoc 11
Bài 18 tin hoc 11Bài 18 tin hoc 11
Bài 18 tin hoc 11
 
Bai tap mau pascal
Bai tap mau pascalBai tap mau pascal
Bai tap mau pascal
 
In-bai tap logo_02 -thu tuc (gv)
  In-bai tap logo_02 -thu tuc (gv)  In-bai tap logo_02 -thu tuc (gv)
In-bai tap logo_02 -thu tuc (gv)
 

Similar to Chuong trinh con

Similar to Chuong trinh con (20)

Chương Trình Con
Chương Trình Con Chương Trình Con
Chương Trình Con
 
Bai 18
Bai 18Bai 18
Bai 18
 
Powerpoint dạy hoc
Powerpoint dạy hocPowerpoint dạy hoc
Powerpoint dạy hoc
 
Tai lieu boi duong tin 8
Tai lieu boi duong tin 8Tai lieu boi duong tin 8
Tai lieu boi duong tin 8
 
Bai19 chuong trinh con (thu tuc va ham) - tin 11
Bai19  chuong trinh con (thu tuc va ham) - tin 11Bai19  chuong trinh con (thu tuc va ham) - tin 11
Bai19 chuong trinh con (thu tuc va ham) - tin 11
 
Bai19 chuong trinh con (thu tuc va ham) - tin 11
Bai19  chuong trinh con (thu tuc va ham) - tin 11Bai19  chuong trinh con (thu tuc va ham) - tin 11
Bai19 chuong trinh con (thu tuc va ham) - tin 11
 
Bài tập CTDL và GT 4
Bài tập CTDL và GT 4Bài tập CTDL và GT 4
Bài tập CTDL và GT 4
 
K33103350 tran doankimnhu_bai17_tin11
K33103350 tran doankimnhu_bai17_tin11K33103350 tran doankimnhu_bai17_tin11
K33103350 tran doankimnhu_bai17_tin11
 
Thdc 07
Thdc 07Thdc 07
Thdc 07
 
Ontap ltc
Ontap ltcOntap ltc
Ontap ltc
 
Nmlt c06 ham
Nmlt c06 hamNmlt c06 ham
Nmlt c06 ham
 
Tin11
Tin11Tin11
Tin11
 
Simpson
SimpsonSimpson
Simpson
 
Bài tập ôn lập trình
Bài tập ôn lập trìnhBài tập ôn lập trình
Bài tập ôn lập trình
 
Nmlt c06 ham_in
Nmlt c06 ham_inNmlt c06 ham_in
Nmlt c06 ham_in
 
Bai tap thuc hanh nhap mon tin hoc
Bai tap thuc hanh nhap mon tin hocBai tap thuc hanh nhap mon tin hoc
Bai tap thuc hanh nhap mon tin hoc
 
Homework - C programming language
Homework - C programming languageHomework - C programming language
Homework - C programming language
 
Bai giang bai19
Bai giang bai19Bai giang bai19
Bai giang bai19
 
Giao trinh bai tap c va c++
Giao trinh bai tap c va c++Giao trinh bai tap c va c++
Giao trinh bai tap c va c++
 
Giao trinh bai tap c va c++
Giao trinh bai tap c va c++Giao trinh bai tap c va c++
Giao trinh bai tap c va c++
 

Recently uploaded

26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
ltbdieu
 
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptxBài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
DungxPeach
 
bài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhbài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hành
dangdinhkien2k4
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
Xem Số Mệnh
 

Recently uploaded (20)

30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
 
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng TạoĐề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
 
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptxBài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
Bài tập nhóm Kỹ Năng Gỉai Quyết Tranh Chấp Lao Động (1).pptx
 
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdfxemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
xemsomenh.com-Vòng Lộc Tồn - Vòng Bác Sĩ và Cách An Trong Vòng Lộc Tồn.pdf
 
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgspowerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
powerpoint mẫu họp phụ huynh cuối kì 2 học sinh lớp 7 bgs
 
bài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhbài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hành
 
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng ĐồngGiới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
Giới thiệu Dự án Sản Phụ Khoa - Y Học Cộng Đồng
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
 
bài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docxbài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docx
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
 
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdfBỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
BỘ LUYỆN NGHE VÀO 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ LỜI - CÓ FILE NGHE.pdf
 
Access: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptAccess: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.ppt
 
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
 
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfxemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
 
Bài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiệnBài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiện
 
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
1.DOANNGOCPHUONGTHAO-APDUNGSTEMTHIETKEBTHHHGIUPHSHOCHIEUQUA (1).docx
 
Giáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình PhươngGiáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình Phương
 

Chuong trinh con

  • 1. CHƯƠNG IV: CHƯƠNG TRÌNH CON VÀ LẬP TRÌNH CÓ CẤU TRÚC BÀI 17: CHƯƠNG TRÌNH CON VÀ PHÂN LOẠI Nhóm 22: Trần Nữ Tú Trinh – K33103060 Nguyễn Tiến Dưỡng – K33103008
  • 2. CHƯƠNG TRÌNH CON Cho một ngũ giác (như hình vẽ) với các độ dài a, b, c, d, e, f, g. Hãy tính diện tính hình sau đây? b c a B C A g e d E f D Để tính diện tích của hình trên thì ta cần phải tính diện tích của từng tam giác nhỏ. Sau đó cộng diện tích của 3 tam giác đó lại. 2
  • 3. b ca B C A g e d E f D writeln('Moi nhap a, b, c: '); readln(a,b,c); p1:=(a+b+c)/2; s1:= sqrt(p1*(p1-a)*(p1-b)*(p1-c)); writeln('Moi nhap g, f: '); readln(g, f); p3:=(e+f+g)/2; s3:= sqrt(p3*(p3-e)*(p3-g)*(p3-f)); writeln('Moi nhap d, e: '); readln(d, e); p2:=(c+d+e)/2; s2:= sqrt(p2*(p2-c)*(p2-d)*(p2-e)); s:=s1+s2+s3; writeln('Dien tich cua ngu giac la: ', s); var a, b, c, p, s: real; Begin writeln(‘Nhap canh cua tam giac can tinh: ‘); p:= (a+b+c)/2; s:= sqrt(p*(p-a)*(p-b)*(p-c); end; 3
  • 4. CHƯƠNG TRÌNH CON  Việc giải quyết 1 bài toán phức tạp có thể phân thành các bài toán con.  Khi lập trình, để viết chương trình giải các bài toán lớn, phức tạp người lập trình có thể chia thành nhiều bài toán nhỏ (còn gọi là khối), mỗi bài toán là một dãy lệnh mô tả một số thao tác nhất định (gọi là chương trình con). Sau đó ghép nối các chương trình con thành chương trình chính. Nhóm trưởng 4
  • 5. CHƯƠNG TRÌNH CON  Chương trình con là một khối lệnh nhằm giải quyết một bài toán con để góp phần giải quyết một bài toán lớn hơn bằng một chương trình.  Khi phải viết những chương trình dài, phức tạp, việc sử dụng chương trình con là hết sức cần thiết. 5
  • 6. CHƯƠNG TRÌNH CON program Phep_tinh_so_hoc; var x, y: integer; phep_tinh: char; FUNCTION Cong(a, b: integer): integer; begin cong:=a + b; end; FUNCTION Tru(a, b: integer): integer; begin tru:=a - b; end; FUNCTION Nhan(a, b: integer): integer; begin nhan:=a * b; end; FUNCTION Chia(a, b: integer): integer; begin chia:=a DIV b; end; begin writeln('Nhap so thu nhat: '); readln(x); writeln('Nhap so thu hai: '); readln(y); writeln('Nhap phep tinh (+, -, *, /): '); readln(phep_tinh); case phep_tinh of '+':writeln('So ', x, ' + ', y, ' = ', cong(x,y)); '-':writeln('So ', x, ' - ', y, ' = ', tru(x, y)); '*':writeln('So ', x, ' * ', y, ' = ', nhan(x, y)); '/':writeln('So ', x, ' / ', y, ' = ', chia(x, y)); end; readln; end. CHƯƠNG TRÌNH CON (HAY KHỐI LỆNH) 6
  • 7. LỢI ÍCH KHI SỬ DỤNG CHƯƠNG TRÌNH CON o Tránh được việc phải viết lặp đi lặp lại cùng một dãy lệnh. o Hỗ trợ việc thực hiện các chương trình lớn. o Phục vụ cho quá trình trừu tượng hóa. o Mở rộng khả năng ngôn ngữ. o Thuận tiện cho phát triển, nâng cấp chương trình. 7
  • 8. THỦ TỤCHÀM Là chương trình con thực hiện các thao tác nhất định nào đó, nhưng không trả về giá trị nào qua tên của nó. Là chương trình con thực hiện một số thao tác nào đó, và trả về một giá trị qua tên của nó. - Nhập vào một dãy các số nguyên dương. - Xuất ra dãy số nguyên dương. - Vẽ các hình chữ nhật. - Hàm tính n! - Hàm tìm UCLN của hai số nguyên dương. - Hàm tìm giá trị lớn nhất (nhỏ nhất) của hai hay nhiều số nguyên. PHÂN LOẠI CHƯƠNG TRÌNH CON CHƯƠNG TRÌNH CON 8
  • 9. PHÂN LOẠI CHƯƠNG TRÌNH CON THỦ TỤC VẼ KÝ TỰHÀM TÍNH TỔNG 2 SỐ PROCEDURE Ve(k: integer, ky_tu:char); Var i: integer; Begin For i:=1 to k do Write(ky_tu); End; FUNCTION Cong(a, b: integer): integer; begin cong:=a + b; end; CHƯƠNG TRÌNH CON 9
  • 10. SO SÁNH HÀM VÀ THỦ TỤC THỦ TỤC VẼ KÝ TỰHÀM TÍNH TỔNG 2 SỐ PROCEDURE Ve(k: integer, ky_tu:char); Var i: integer; Begin For i:=1 to k do Write(ky_tu); End; FUNCTION Cong(a, b: integer): integer; begin cong:=a + b; end; - Từ khóa Procedure. - Kết quả trả về không phải là một giá trị. - Từ khóa Function. - Có kết quả trả về là một số nguyên. 10
  • 11. CẤU TRÚC CHƯƠNG TRÌNH CON <phần đầu> [<phần khai báo>] <phần thân>  Phần đầu: khai báo tên của chương trình con, nếu là hàm phải khai báo kiểu dữ liệu trả về của hàm.  Phần khai báo: khai báo biến cho dữ liệu vào và ra, các hằng và biến dùng trong chương trình con.  Phần thân: dãy câu lệnh. 11
  • 12. SO SÁNH CẤU TRÚC CHƯƠNG TRÌNH CHÍNH VÀ CHƯƠNG TRÌNH CON CHƯƠNG TRÌNH CONCHƯƠNG TRÌNH CHÍNH [<phần khai báo>] <phần thân> <phần đầu> [<phần khai báo>] <phần thân> Chương trình con nhất thiết phải có tên và phần đầu để khai báo tên, nếu là hàm thì phải khai báo kiểu dữ liệu cho giá trị trả về của hàm 12
  • 13. Tham số hình thức THAM SỐ HÌNH THỨC VÀ THAM SỐ THỰC SỰ THAM SỐ HÌNH THỨC THAM SỐ THỰC SỰ Các biến được khai báo cho dữ liệu vào/ ra được gọi là tham số hình thức của chương trình con. Khi gọi 1 chương trình con, ta cần phải có lệnh gọi nó bao gồm tên chương trình con với tham số đặt trong dấu ngoặc ( ). Các tham số này được gọi là tham số thực sự. Cong (2, 5)Cong (a, b) Tên chương trình con Tên chương trình con Tham số thực sự 13
  • 14. TRUYỀN THAM SỐ Cong (12, 4)Cong (a, b) THAM SỐ HÌNH THỨC THAM SỐ THỰC SỰ Cong (x, y)Cong (a, b) THAM TRỊ THAM BIẾN 14
  • 15. BIẾN TOÀN CỤC VÀ BIẾN CỤC BỘ BIẾN TOÀN CỤC BIẾN CỤC BỘ Là biến được khai báo ở đầu chương trình chính, chúng tồn tại trong suốt thời gian chạy của chương trình. Biến toàn cục ảnh hưởng toàn bộ chương trình, cả chương trình chính lẫn chương trình con. Là biến được khai báo trong mỗi chương trình con. Chúng được hình thành khi chương trình con được gọi và sẽ tự biến mất khi chương trình con kết thúc. 15
  • 16. VÍ DỤ Var a, b, c, d, m, n, p, q : integer; i : integer; TLuythua : real; Function Luythua( x,k :integer) : real; var j : integer; Tich: = 1.0; For j:=1 to k do Tich: = Tich * x; Luythua: = Tich; BEGIN Writeln(‘Nhap so can tinh luy thua: ’); Readln(a,b,c,d,n,m,p,q); TLuythua:=Luythua(a,m) + Luythua(b,n) + Luythua(c,p) + Luythua(d,q); Writeln(‘Tong luy thua la:’,TLuythua); Readln; END. Biến toàn cục Tham số hình thức Biến cục bộ Tham số thực sự 16
  • 17. BÀI TẬP Bài toán : Lập chương trình tối giản phân số Ví dụ: nhập 6/10 => ra 3/5  INPUT :  OUTPUT :  - Yêu cầu: viết chương trình con thực hiện tìm UCLN(a,b) và gọi nó khi tính c,d trong chương trình chính. Nhập phân số a/b; ?Phân số c/d - Trong đó: c = a/UCLN (a,b); d = b/UCLN(a,b); ? 17
  • 18. Program Toi_gian_phan_so; Uses crt; Var tu, mau, c, d : integer; Function UCLN( a,b :integer) : integer; Begin While a<> b do if a>b then a := a-b else b:=b-a; UCLN := a; end; BEGIN Write(‘ Nhap vao tu so va mau so:’); readln(tu,mau); c := tu div UCLN(tu,mau) ; d := mau div UCLN(tu,mau) ; Writeln(‘ Phan so toi gian = ’, c, ‘ / ’, d); Readln; END. Write(‘Nhap vao tu so va mau so:’) c := 6 div d := 10 divUCLN(6,10) UCLN(6,10) Writeln(‘ Phan so toi gian = ’, c, ‘ / ’, d); Readln; END. BEGIN readln(tu,mau); USCLN=2;USCLN=2; Nhap vao tu so va mau so: 6 10 Phan so toi gian= 3/5 18
  • 19. NHẬN XÉT  Các chương trình con thường được đặt sau phần khai báo của chương trình chính.  Chương trình con chỉ được thực hiện khi có lời gọi nó. 19

Editor's Notes

  1. Mở rộng khả năng ngôn ngữ?
  2. Hết tiết 1