Bài 18. Ví dụ về cách viết và sử dụng chương trình con
Chia sẻ bởi Nguyễn Thị Thuận |
Ngày 10/05/2019 |
70
Chia sẻ tài liệu: Bài 18. Ví dụ về cách viết và sử dụng chương trình con thuộc Tin học 11
Nội dung tài liệu:
Kính chào tất cả các thầy cô giáo.
Cùng tất cả các em học sinh lớp 11T2.
Bài cũ!
Hãy lên bảng viết cấu trúc của thủ tục
Procedure [():
];
[< Phần khai báo>];
Begin
[];
End;
BÀI 18: VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON
(TIẾP THEO)
Tiết 43: Ví dụ về cách viết và sử dụng hàm
1. CẤU TRÚC CỦA CHƯƠNG TRÌNH CON
[]
< Phần thân>
Function
[():]
:ki?u c?a hm;
[< Ph?n khai bỏo>];
Begin
[];
Tờn hm := giỏ tr?;
End;
Procedure [():];
[< Phần khai báo>];
Begin
[];
End;
Hàm (Function)
Thủ tục (Procedure)
Kiểu dữ liệu của giá trị mà hàm trả về
Trong thân hàm có lệnh gán giá trị cho tên hàm
Nêu điểm khác nhau cơ bản giữa thủ tục và hàm
Kiểu dữ liệu của hàm:
Là kiểu dữ liệu của giá trị mà hàm trả về.
Chỉ có thể là: integer, real, char, boolean, string.
Chú ý: Hàm không có tham số hình thức thì không cần danh sách tham số.
2. MỘT SỐ VÍ DỤ:
Bài toán 1: Lập chương trình tối giản phân số trong đó có sử dụng hàm tính ước chung lớn nhất(UCLN) của hai số nguyên.
Vớ d?: nh?p 6/10 => ra 3/5
* INPUT : Nhập vào phân số: a/b;
* OUTPUT : Phân số c/d - Trong đó: c = a/UCLN (a,b);
d = b/UCLN(a,b);
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.
Hãy xác định INPUT và OUTPUT của bài toán trên
Program tgps;
Var tu,mau,c,d,m : 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 và mau so:`); readln(tu,mau);
m:= UCLN(tu,mau);
C := tu div m ; d := mau div m;
Writeln(` Phan so toi gian = `, c, ` / `, d);
Readln;
END.
Write(`Nhap vao tu so va mau so:`);
C := 6 div 2;
d := 10 div 2;
UCLN(6,10)
Writeln(` Phan so toi gian = `, 3, ` / `, 5);
Readln;
END.
BEGIN
Readln(tu,mau);
2;
Nhap vao tu so va mau so:
6 10
Phan so toi gian= 3/5
Hãy xác định chương trình con bắt đầu từ đâu và kết thúc ở đâu?
Dựa vào chương trình:
Biến toàn cục:
tu,mau,c,d,m.
Biến cục bộ:
a,b.
Hãy xác định Biến toàn cục biến cục bộ của bài toán trên
Cách sử dụng hàm:
Lệnh gọi hàm gồm tên hàm và tham số thực sự tương ứng với các tham số hình thức.
< tên hàm>( tham số thực sự);
Lệnh gọi hàm có thể tham gia vào biểu thức như một toán hạng
Ví dụ: a:=5*ucln(tuso,mauso)+1;
Bài toán 2: Tìm giá trị nhỏ nhất trong ba số nhập từ bàn phím trong đó có sử dụng hàm tìm số nhỏ nhất trong hai số a,b
Input: Nhập ba số a,b,c
Output: Số nhỏ nhất trong ba số
Sử dụng hàm tìm số nhỏ nhất trong hai số a,b
Hãy xác định INPUT và OUTPUT của bài toán trên
Program minbaso;
var a,b,c,d:real;
Function min(a,b:real): real;
begin
if a else min:=b;
end;
Begin
write(‘nhap vao ba so: ’);
readln(a,b,c); d:=min(a,b);
writeln(‘so nho nhat trong ba so:’,min(d,c);
readln;
End.
Nhap vao ba so:
8 3 12
Begin
Write(‘nhap vao ba so:’ );
Readln(a,b,c);
min(8,3);
3;
min(3,12);
min:=3;
Writeln(‘so nho nhat trong ba so:’
So nho nhat trong ba so: 3
Readln;
End.
Củng cố:
Câu 1: Khẳng định nào sau đây là đúng?
A. Một chương trình con nhất thiết phải có tham số hình thức.
B. Một chương trình con nhất thiết phải có biến cục bộ.
C. Một chương trình con nhất thiết phải có tham số hình thức, không nhất thiết phải có biến cục bộ.
D. Một chương trình con có thể không có tham số hình thức và cũng có thể không có biến cục bộ.
D. Một chương trình con có thể không có
tham số hình thức và cũng có thể không có
biến cục bộ.
Câu 2: Kiểu dữ liệu của hàm
A. Chỉ có thể là kiểu integer.
B. Chỉ có thể là kiểu real
C. Có thể là các kiểu integer, real, char, boolean, string.
D. Có thể là integer, real, char, boolean, string, record, kiểu mảng.
C. Có thể là các kiểu integer, real, char, boolean, string
Hãy chọn câu trả lời đúng
Hãy điền từ còn thiếu vào chỗ trống
Câu 3: Trong hai chương trình con thì …………………. trả về một giá trị qua tên của nó còn ………………….. không trả về một giá trị nào qua tên của nó. Do vậy, lời gọi……………….. …không thể tham gia vào biểu thức tính toán còn lời gọi………………. có thể tham gia vào biểu thức tính toán như một toán hạng
Hàm(function)
Thủ tục(procedure)
Thủ tục(procedure)
Hàm(function)
Câu 4: Cấu trúc của một chương trình con gồm 3 phần: phần đầu, phần khai báo và phần thân. Trong đó phần ………..nhất thiết phải có và dùng để khai báo tên chương trình con; phần ………… ..có thể có hoặc không có tuỳ thuộc vào từng chương trình con cụ thể.
Đầu
Khai báo
Hãy điền từ còn thiếu vào chỗ trống
Xin chân thành cảm ơn
Câu 5: Các biến được khai báo để dùng riêng trong chương trình con chứa nó gọi là ………………., các biến được khai báo trong chương trình chính gọi là ………………
Biến toàn cục
Biến cục bộ
Hãy điền từ còn thiếu vào chỗ trống
Câu 6: Các tham số được đặt trong dấu ngoặc tròn sau tên của chương trình con khi khai báo được gọi là …………………….., còn tham số trong lời gọi chương trình con gọi là ………………
Tham số hình thức
Tham số thực sự
Hãy điền từ còn thiếu vào chỗ trống
Cùng tất cả các em học sinh lớp 11T2.
Bài cũ!
Hãy lên bảng viết cấu trúc của thủ tục
Procedure
[< Phần khai báo>];
Begin
[
End;
BÀI 18: VÍ DỤ VỀ CÁCH VIẾT VÀ SỬ DỤNG CHƯƠNG TRÌNH CON
(TIẾP THEO)
Tiết 43: Ví dụ về cách viết và sử dụng hàm
1. CẤU TRÚC CỦA CHƯƠNG TRÌNH CON
[
< Phần thân>
Function
[(
:ki?u c?a hm;
[< Ph?n khai bỏo>];
Begin
[
Tờn hm := giỏ tr?;
End;
Procedure
[< Phần khai báo>];
Begin
[
End;
Hàm (Function)
Thủ tục (Procedure)
Kiểu dữ liệu của giá trị mà hàm trả về
Trong thân hàm có lệnh gán giá trị cho tên hàm
Nêu điểm khác nhau cơ bản giữa thủ tục và hàm
Kiểu dữ liệu của hàm:
Là kiểu dữ liệu của giá trị mà hàm trả về.
Chỉ có thể là: integer, real, char, boolean, string.
Chú ý: Hàm không có tham số hình thức thì không cần danh sách tham số.
2. MỘT SỐ VÍ DỤ:
Bài toán 1: Lập chương trình tối giản phân số trong đó có sử dụng hàm tính ước chung lớn nhất(UCLN) của hai số nguyên.
Vớ d?: nh?p 6/10 => ra 3/5
* INPUT : Nhập vào phân số: a/b;
* OUTPUT : Phân số c/d - Trong đó: c = a/UCLN (a,b);
d = b/UCLN(a,b);
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.
Hãy xác định INPUT và OUTPUT của bài toán trên
Program tgps;
Var tu,mau,c,d,m : 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 và mau so:`); readln(tu,mau);
m:= UCLN(tu,mau);
C := tu div m ; d := mau div m;
Writeln(` Phan so toi gian = `, c, ` / `, d);
Readln;
END.
Write(`Nhap vao tu so va mau so:`);
C := 6 div 2;
d := 10 div 2;
UCLN(6,10)
Writeln(` Phan so toi gian = `, 3, ` / `, 5);
Readln;
END.
BEGIN
Readln(tu,mau);
2;
Nhap vao tu so va mau so:
6 10
Phan so toi gian= 3/5
Hãy xác định chương trình con bắt đầu từ đâu và kết thúc ở đâu?
Dựa vào chương trình:
Biến toàn cục:
tu,mau,c,d,m.
Biến cục bộ:
a,b.
Hãy xác định Biến toàn cục biến cục bộ của bài toán trên
Cách sử dụng hàm:
Lệnh gọi hàm gồm tên hàm và tham số thực sự tương ứng với các tham số hình thức.
< tên hàm>( tham số thực sự);
Lệnh gọi hàm có thể tham gia vào biểu thức như một toán hạng
Ví dụ: a:=5*ucln(tuso,mauso)+1;
Bài toán 2: Tìm giá trị nhỏ nhất trong ba số nhập từ bàn phím trong đó có sử dụng hàm tìm số nhỏ nhất trong hai số a,b
Input: Nhập ba số a,b,c
Output: Số nhỏ nhất trong ba số
Sử dụng hàm tìm số nhỏ nhất trong hai số a,b
Hãy xác định INPUT và OUTPUT của bài toán trên
Program minbaso;
var a,b,c,d:real;
Function min(a,b:real): real;
begin
if a else min:=b;
end;
Begin
write(‘nhap vao ba so: ’);
readln(a,b,c); d:=min(a,b);
writeln(‘so nho nhat trong ba so:’,min(d,c);
readln;
End.
Nhap vao ba so:
8 3 12
Begin
Write(‘nhap vao ba so:’ );
Readln(a,b,c);
min(8,3);
3;
min(3,12);
min:=3;
Writeln(‘so nho nhat trong ba so:’
So nho nhat trong ba so: 3
Readln;
End.
Củng cố:
Câu 1: Khẳng định nào sau đây là đúng?
A. Một chương trình con nhất thiết phải có tham số hình thức.
B. Một chương trình con nhất thiết phải có biến cục bộ.
C. Một chương trình con nhất thiết phải có tham số hình thức, không nhất thiết phải có biến cục bộ.
D. Một chương trình con có thể không có tham số hình thức và cũng có thể không có biến cục bộ.
D. Một chương trình con có thể không có
tham số hình thức và cũng có thể không có
biến cục bộ.
Câu 2: Kiểu dữ liệu của hàm
A. Chỉ có thể là kiểu integer.
B. Chỉ có thể là kiểu real
C. Có thể là các kiểu integer, real, char, boolean, string.
D. Có thể là integer, real, char, boolean, string, record, kiểu mảng.
C. Có thể là các kiểu integer, real, char, boolean, string
Hãy chọn câu trả lời đúng
Hãy điền từ còn thiếu vào chỗ trống
Câu 3: Trong hai chương trình con thì …………………. trả về một giá trị qua tên của nó còn ………………….. không trả về một giá trị nào qua tên của nó. Do vậy, lời gọi……………….. …không thể tham gia vào biểu thức tính toán còn lời gọi………………. có thể tham gia vào biểu thức tính toán như một toán hạng
Hàm(function)
Thủ tục(procedure)
Thủ tục(procedure)
Hàm(function)
Câu 4: Cấu trúc của một chương trình con gồm 3 phần: phần đầu, phần khai báo và phần thân. Trong đó phần ………..nhất thiết phải có và dùng để khai báo tên chương trình con; phần ………… ..có thể có hoặc không có tuỳ thuộc vào từng chương trình con cụ thể.
Đầu
Khai báo
Hãy điền từ còn thiếu vào chỗ trống
Xin chân thành cảm ơn
Câu 5: Các biến được khai báo để dùng riêng trong chương trình con chứa nó gọi là ………………., các biến được khai báo trong chương trình chính gọi là ………………
Biến toàn cục
Biến cục bộ
Hãy điền từ còn thiếu vào chỗ trống
Câu 6: Các tham số được đặt trong dấu ngoặc tròn sau tên của chương trình con khi khai báo được gọi là …………………….., còn tham số trong lời gọi chương trình con gọi là ………………
Tham số hình thức
Tham số thực sự
Hãy điền từ còn thiếu vào chỗ trống
* 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ẻ: Nguyễn Thị Thuận
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)