Tìm kiếm theo tiêu đề

Tin tức cộng đồng

5 điều đơn giản cha mẹ nên làm mỗi ngày để con hạnh phúc hơn

Tìm kiếm hạnh phúc là một nhu cầu lớn và xuất hiện xuyên suốt cuộc đời mỗi con người. Tác giả người Mỹ Stephanie Harrison đã dành ra hơn 10 năm để nghiên cứu về cảm nhận hạnh phúc, bà đã hệ thống các kiến thức ấy trong cuốn New Happy. Bà Harrison khẳng định có những thói quen đơn...
Xem tiếp

Tin tức thư viện

Chức năng Dừng xem quảng cáo trên violet.vn

12087057 Kính chào các thầy, cô! Hiện tại, kinh phí duy trì hệ thống dựa chủ yếu vào việc đặt quảng cáo trên hệ thống. Tuy nhiên, đôi khi có gây một số trở ngại đối với thầy, cô khi truy cập. Vì vậy, để thuận tiện trong việc sử dụng thư viện hệ thống đã cung cấp chức năng...
Xem tiếp

Hỗ trợ kĩ thuật

  • (024) 62 930 536
  • 0919 124 899
  • hotro@violet.vn

Liên hệ quảng cáo

  • (024) 66 745 632
  • 096 181 2005
  • contact@bachkim.vn

CHƯƠNG TRÌNH CON

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Hien Thanh
Ngày gửi: 16h:27' 11-06-2012
Dung lượng: 300.1 KB
Số lượt tải: 422
Số lượt thích: 0 người
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?
Để 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.
1
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,e, f: `);
readln(g,e, f);
p3:=(e+f+g)/2;
s3:= sqrt(p3*(p3-e)*(p3-g)*(p3-f));
writeln(`Moi nhap d, c,e: `);
readln(d, c,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);
2
















3
Code không sử dụng chương trình con
Code sử dụng chương trình con
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
Công việc A
Công việc B
Kết quả A
Kết quả B
4
FUNCTION Tru(a, b: integer): integer;
begin
tru:=a - b;
end;
FUNCTION Cong(a, b: integer): integer;
begin
cong:=a + b;
end;
FUNCTION Chia(a, b: integer): integer;
begin
chia:=a DIV b;
end;
FUNCTION Nhan(a, b: integer): integer;
begin
nhan:=a * b;
end;
CHƯƠNG TRÌNH CON (HAY KHỐI LỆNH)
5
program Phep_tinh_so_hoc;
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.
6
LỢI ÍCH KHI SỬ DỤNG CHƯƠNG TRÌNH CON
Tránh được việc phải viết lặp đi lặp lại cùng một dãy lệnh.

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á

Thuận tiện cho phát triển, nâng cấp chương trình.
7
THỦ TỤC(procedure)
HÀM(function)
Là chương trình con thực hiện các thao tác lệnh nhất định nào đó, nhưng không trả về giá trị nào qua tên của của thủ tục.
Là chương trình con thực hiện một số thao tác lệnh nào đó, và trả về một giá trị qua tên của hàm.
Writeln();

Readln();




- Sqr();
Sqrt();
Abs();
Exp();
……
PHÂN LOẠI CHƯƠNG TRÌNH CON
CHƯƠNG TRÌNH CON
8
CẤU TRÚC VÀ VỊ TRÍ CHƯƠNG TRÌNH CON
[ Phần khai báo chương trình chính ]

[]

Begin
{Loi goi chuong trinh con }
End.

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.
9
10
1. Cách viết và sử dụng thủ tục:
Xét ví dụ vẽ hình chữ nhật có dạng sau:
* * * * * * *
*
*
* * * * * * *
Ta có thể vẽ hình chữ nhật trên
với ba câu lệnh:
Writeln(‘* * * * * * *’);
Writeln(‘* * * * * * *’);
Writeln(‘* *’);

Program vd1;
Begin
Writeln(‘* * * * * * *’);
Writeln(‘* *’);
Writeln(‘* * * * * * *’);
Readln;
End.



Theo em để vẽ hình
chữ nhật trên ta phải viết những lệnh nào trong chương trình
11
1. Cách viết và sử dụng thủ tục:
Xét ví dụ vẽ 3 hình chữ nhật có dạng sau:
Ta có thể vẽ 3 hình chữ nhật trên với 9 câu lệnh
Writeln(‘* * * * * * *’);
Writeln(‘* * * * * **’);
Writeln(‘* * * * * * *’);
Writeln(‘* * * * * * *’);
Writeln(‘* * * * * * *’);
Writeln(‘* * * * * * *’);
Writeln(‘* *’);
Writeln(‘* *’);
Writeln(‘* *’);
Program vd1;
Procedure Ve_HCN;
Begin
Writeln(‘* * * * * * *’);
Writeln(‘* *’);
Writeln(‘* * * * * * *’);
Readln;
End;
BEGIN
Ve_HCN;
writeln; writeln;
Ve_HCN;
writeln; writeln;
Ve_HCN;
END.
Theo em, để vẽ 3 hình chữ nhật trên ta phải viết bao nhiêu lệnh trong chương trình?
12
1. Cách viết và sử dụng thủ tục:
a. Cấu trúc của thủ tục:
Procedure [];
[]
begin
[]
end;
program VD_thutuc1;
{************************}
procedure Ve_Hcn;
begin
writeln(‘* * * * * * *’);
writeln(‘* * * * * * *’);
writeln(‘* *’);
end;
{************************}
begin
Ve_Hcn;
writeln; writeln;
Ve_Hcn;
writeln; writeln;
Ve_Hcn;
End.
13
2. Cách viết và sử dụng hàm
function [()]:;
[]
begin
[]
end;
Trong đó:

Kiểu dữ liệu là kiểu dữ liệu của giá trị mà hàm trả về như các kiểu integer, real, char, boolean, string…
Trong thân hàm (dãy các lệnh) bắt buộc có lệnh gán giá trị cho tên hàm:
:= ;

14
Chương trình tính tổng 2 số
Program TongHaiSo;
var a, b: real;
function Tong(a,b: real): real;
begin
Tong: =a+b;
end;
begin
write(‘Nhap vao hai so:’);
readln(a,b);
writeln(‘Tong 2 so ban dau la: ‘, Tong(a,b));
readln;
end.
15
L ưu ý về việc sử dụng chương trình con:
Sử dụng chương trình con là hàm (function) khi đáp ứng đồng thời các yêu cầu sau:

Nếu ta muốn nhận lại một và chỉ một kết quả mà thôi.
-Có cần dùng tên của chương trình con trong các biểu thức tính toán không?

Nếu không thoả mãn các tính chất trên thì chương trình con là thủ tục (procedure)


16
V Í D Ụ
Đối vói hàm (function) sqrt();
-Hàm sqrt(9) trả về một giá trị duy nhất là 3
-Có thể sử dụng trong các biểu thức tính toán
A:= sqrt(9) + sqrt(16);
Writeln(‘Giá trị căn bâc 2 của 9 là : ‘, sqrt(9));

Đối với thủ tục (procedure) Writeln();
-Không thể gán cho biến A:= Writeln();
-Không thể sử dụng A:= Writeln(‘a’) + Writeln(‘b’);
-Không thể sử dụng Writeln(Write(‘a’));





PHÂN LOẠI CHƯƠNG TRÌNH CON
Vẽ một dãy n kí tự bất kì
Tính tổng hai số
CHƯƠNG TRÌNH CON
17
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;
- Kết quả trả về không phải là một giá trị qua tên hàm
- Có kết quả trả về là một số nguyên thông qua tên hàm
18
SO SÁNH CẤU TRÚC CHƯƠNG TRÌNH CHÍNH VÀ CHƯƠNG TRÌNH CON
CHƯƠNG TRÌNH CON
CHƯƠNG TRÌNH CHÍNH
[phần đầu có hoặc không]
[]

bắt buộc phải có
[]

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
19
HẾT TIẾT 1

20
 
Gửi ý kiến