Bài tập và thực hành 7

Chia sẻ bởi Dương Huyền Sâm | Ngày 10/05/2019 | 54

Chia sẻ tài liệu: Bài tập và thực hành 7 thuộc Tin học 11

Nội dung tài liệu:

Chào mừng
Các thầy cô giáo về dự giờ lớp 11A1














Kiểm tra bài cũ
TRƯỜNG THPT NGUYỄN THÁI BÌNH
SGK TIN HỌC 11
1. Viết cấu trúc chương trình chính và cấu trúc của thủ tục ?
2. Viết cấu trúc của hàm ? Nêu đặc điểm giống và khác nhau cơ bản giữa hàm và thủ tục ?
1. Cấu trúc chương trình
[< Phầnkhai báo >]


KIỂM TRA BÀI CŨ
FUNCTION []:;
[]
BEGIN
[]
:=;
END;
PROCEDURE [];
[]
BEGIN
[]

END;
Sử dụng khi cần thực hiện một số thao tác xử lí nhằm giải quyết một công việc cụ thể.
Sử dụng khi cần thực hiện một số thao tác xử lí nhằm đưa ra một giá trị kết quả cụ thể.
Muốn lưu kết quả phải dùng tham biến.
Lời gọi thủ tục sử dụng như một câu lệnh trong chương trình chính
Luôn dùng (với vai trò là biến) để lưu kết quả.
Lời gọi hàm sử dụng trong biểu thức, trong lời gọi hàm/thủ tục khác.
Tiết 45: BÀI TẬP VÀ THỰC HÀNH 7
1. Hàm
2. Thủ tục
3. Áp dụng
Củng cố
Tiết 45: BÀI TẬP VÀ THỰC HÀNH 7
SGK TIN HỌC 11
Tiết 45: BÀI TẬP VÀ THỰC HÀNH 7
Bài 1: Viết chương trình con để kiểm tra ba số a, b, c có là ba cạnh của một tam giác hay không ?
Bài 2: Với ba số a, b, c là độ dài ba cạnh tam giác nhập từ bàn phím.Viết chương trình con tính chu vi và diện tích của tam giác đó ?
Program TAMGIAC;
Var a, b, c: interger;
Fucntion Chuvi(a, b, c: integer): integer;
Begin
Chuvi:= c + b+c;
End;
Fucntion Dientich(a, b, c: integer): real;
var p: real;
Begin
p:= chuvi(a, b, c) /2;
dientich:= sqrt(p * (p - a) * (p – b ) * (p - c));
End;
BEGIN
Write(‘Nhap 3 so a, b, c: ’); readln (a, b, c);
Write(‘ chu vi tam giac la: ’, chuvi(a, b, c));
Write(‘Dien tich tam giac la: ’, dientich(a, b, c));
END.;
Tham số hình thức
Tham số thực
Biến cục bộ
Biến toàn cục
Xin chân thành cảm ơn quí thầy cô
SGK TIN HỌC 11
Tiết 45: BÀI TẬP VÀ THỰC HÀNH 7
BÀI TẬP VÀ THỰC HÀNH
SGK TIN HỌC 11
Ví dụ 1: Viết chương trình con kiểm tra số nguyên a là số chẵn hay số lẻ.
Procedure KT(a:integer);
Begin
IF a mod 2 = 0 Then
Write(‘ La so chan’)
Else Write(‘La so le);
End;
BÀI TẬP VÀ THỰC HÀNH
SGK TIN HỌC 11
Ví dụ 2: Viết chương trình tìm số lớn nhất trong 3 số nhập từ bàn phím , trong đó sử dụng chương trình con tìm số lớn nhất trong 2 số.
BÀI TẬP VÀ THỰC HÀNH
SGK TIN HỌC 11
Program Maxbaso;
var a, b, c: Integer;





Begin
Write(‘ Nhap vao ba so’); Readln(a,b,c);
Write(‘ So lon nhat trong 3 so la: ’,
Max(Max(a, b), c));
Readln
End.
Function Min (x, y: Integer): Integer;
Begin
if x > y then Max := x
else Max := y;
End;
SGK TIN HỌC 11
BÀI TẬP VÀ THỰC HÀNH
Ví dụ 1: Viết chương trình con kiểm tra số nguyên a là số chẵn hay số lẻ.
Chương trình tìm số nhỏ nhất trong 3 số
Program Minbaso;
var a, b, c: real;





Begin
Write(‘ Nhap vao ba so’); Readln(a,b,c);
Writeln(‘So nho nhat trong 3 so la:’,Min(Min(a,b),c));
Readln
End.
Function Min(x,y:real):real;
Begin
if x>y then Min:=y
else Min:=x;
End;
Chương trình tìm số nhỏ nhất trong 3 số
Ví dụ 2: Viết chương trình tìm số nhỏ nhất trong 3 số.
(xây dựng hàm tính giá trị nhỏ nhất của 2 số)
Giả sử x = 3, y = 7
=> số nhỏ nhất là x = 3.
Làm thế nào để biết được số nhỏ nhất?
 So sánh giá trị của 2 số. Nếu x>y thì số nhỏ nhất là y, ngược lại số nhỏ nhất là x.
Ví du 4: Chương trình kiểm tra 1 số nguyên nhập vào từ bàn phím là số chẳn hay lẻ.
Program Kiem_tra;
Var a:integer;





Begin
Writeln(‘Nhap vao 1 so:’); readln(a);
KT(a);
Readln
End.
Procedure KT(x:integer);
Begin
IF x mod 2 = 0 Then
Write(‘ La so chan’)
Else Write(‘La so le’);
End;
THUTUC
HAM
Procedure BinhPhuong(X: real;
var X2 : Real);
Begin
X2: = X*X ;
End;
Function BinhPhuong( X: Real): Real;
Begin
BinhPhuong:=X*X ;
End;
Ví dụ: Viết chương trình con tính bình phương của một số thực.
Ví dụ: Viết chương trình con tính bình phương của một số thực.
BinhPhuong (X: Real): Real;

Begin
BinhPhuong:=X*X ;
End;
Ta dùng hàm hay dung thủ tục?
Function




{Phần khai báo}
Phần thân chương trình
2. Cách viết và sử dụng hàm:
FUNCTION []:;
[]
BEGIN
[]
:=;
END;
2. Cách viết và sử dụng hàm
a. Cấu trúc hàm:
VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON
- Phần đầu: gồm Function, tên hàm, các tham số hình thức
và kiểu dữ liệu (integer, real, char, boolean, string)
- Phần khai báo: các hằng, kiểu, biến và cũng có thể các chương trình con.
- Phần thân: dãy các lệnh viết giữa Begin và end;
Sự giống nhau giữa Thủ Tục và Hàm:
1.Cả thủ tục và hàm đều là chương trình con, có cấu tạo giống như một chương trình trừ dòng đầu tiên và kết thúc bằng END;

2. Cả thủ tục và hàm đều có thể chứa các tham số ( tham số giá trị và tham số biến), cùng tuân theo các qui định về khai báo và sử dụng các lọai tham số này

PROCEDURE
[(< Danh sách tham số>)];
[]
BEGIN

(…Dãy các lệnh ( thân của thủ tục )…)

END;
FUNCTION ( [ Danh sách tham số >] ): ;
[< Phần khai báo> ]
BEGIN

(…Dãy các lệnh ( thân của hàm )…)
: =

END;
VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON
b. Sử dụng hàm:
- Lời gọi hàm:
[(Danh sách tham số thực sự)]
Hàm được khai báo ở của chương trình chính, sau khai báo biến (với từ khóa Var)
Lời gọi hàm được thực hiện trong của chương trình chính
Lời gọi hàm có thể tham gia vào biểu thức như một toán hạng hoặc là tham số của lời gọi hàm/thủ tục khác
Sử dụng hàm:
Program TinhBinhPhuong;
Var s: real;
Function BP( X: Real) : Real;
Begin
BP:=X*X ;
End;
Begin
S:= BP(9) + BP(10) + 100;
Writeln(‘Giá trị của biểu thức = ’, s);
readln
End.


Sự khác giữa việc sử dụng Thủ tục và việc sử dụng Hàm:
VE_HCN(25,10);
S: = BP(9) +BP(10);
Lời gọi thủ tục:
Tên_thủ_tục(Các tham số truyền vào nếu có)
Lời gọi hàm: Tương tự như sử dụng các hàm chuẩn của Pascal như SIN(x), SQRT(x), …Viết tên của hàm cần gọi và truyền các tham số thực sự cho hàm.
VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON
c. Tham số hình thức (tương tự thủ tục)
* Ví dụ:
Tham số biến
Khai báo:
VAR
DS tham số hình thức:kiểu dữ liệu
Trong lệnh gọi thủ tục: các tham số thực sự là tên các biến chứa dữ liệu ra.
Giá trị có thể bị thay đổi sau khi thực hiện xong thủ tục.
Tham số giá trị
Khai báo:
:
Giá trị không thay đổi khi thực hiện xong thủ tục.
Trong lệnh gọi thủ tục: các tham số thực sự là các giá trị cụ thể
VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON
d. Các ví dụ
VD2: Hãy xây dựng hàm tính tổng hai số rồi viết chương trình tính tổng của ba số và ghi kết quả ra màn hình
Var x,y,z:integer;
Function Tong2so(a,b:real):real;
Begin
Tong2so:=a+b;
End;
BEGIN
Write(`nhap x,y,z: `); Readln(x,y,z);
Write(‘Tong 3 so la: `, Tong2so(Tong2so(x,y),z));
Readln;
END.
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Dương Huyền Sâm
Dung lượng: | Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)