Tin học 11 Bài 18: Ví dụ về cách viết và sử dụng chương trình con
Tin học 11 Bài 18: Ví dụ về cách viết và sử dụng chương trình con
Để học tốt Tin học lớp 11, nội dung bài học là trả lời câu hỏi, giải bài tập Tin học 11 Bài 18: Ví dụ về cách viết và sử dụng chương trình con hay nhất, ngắn gọn. Bên cạnh đó là tóm tắt lý thuyết ngắn gọn và bộ câu hỏi trắc nghiệm Tin 11 Bài 18 có đáp án.
1. Cách viết và sử dụng thủ tục
a) Cấu trúc của thủ tục
procedure <tên thủ tục> [(danh sách tham số)]; [<phần khai báo>] Begin [<dãy các lệh>] End;
Phần đầu thủ tục: Gồm tên dành riêng procedure, tiếp theo là tên thủ tục. Danh sách tham số có thể có hoặc không có.
Phần khai báo : Dùng để xác định các hằng, kiểu, biến và cũng có thể xác định các chương trình con khác được sử dụng trong thủ tục.
Dãy câu lệnh : Đực viết giữa cặp tên dành riêng begin và end tạo thành thân của thủ tục.
b) Ví dụ về thủ tục
Ví dụ 1: Viết thủ tục vẽ hình chữ nhật có dạng như sau
******* * * *******
Chiều dài là 7 chiều rộng là 3.
Procedure Ve_Hcn; Begin Writeln(‘*******’); Writeln(‘* *’); Writeln(‘*******’); End;
Để sử dụng thủ tục này ta gọi Ve_Hcn;
Ví dụ 2: Viết thủ tục vẻ hình chữ nhật với chiều dài và chiều rộng được tùy chỉnh.
Procedure Ve_Hcn(chdai,chrong:integer); Var I,j:integer; Begin For i:=1 to chdai do write(‘*’); Writeln; For j:=1 to chrong-2 do Begin Write(‘*’); For i:=1 to chdai-2 do write(‘ ’); Writeln(‘*’); End; For i:=1 to chdai do write(‘*’); End;
Để sử dụng thủ tục này ta gọi Ve_Hcn(a,b);
Khi gọi thủ tục, các tham số hình thức được thay bằng các tham số thực sự tương ứng là các giá trị cụ thể gọi là các tham số giá trị (tham trị) (Ví dụ: chdai,chrong được gọi là tham trị).
Khi gọi thủ tục Ve_Hcn(a,b) tham số chdai được thay bằng giá trị hiện thời của biến a,tham số chrong được thay bởi giá trị hiện thời của biến b. Trong lệnh gọi thủ tục, các tham số hình thức được thay bằng các tham số thực sự tương ứng là tên biến chứa dữ liệu ra được gọi là tham số biến (hay tham biến).
Để phân biệt tham biến và tham trị, Pascal sử dụng từ khóa var để khai báo những tham biến.
Ví dụ :
Nếu không sử dụng tham biến:
program dientro; uses crt; var a,b:integer; procedure hoandoi(x,y:integer); var TG:integer; begin TG:=x; x:=y; y:=TG; end; begin clrscr; a:=5; b:=10; writeln(a:6,b:6); hoandoi(a,b); writeln(a:6,b:6); readkey; end.
Kết quả:
Hai số không hề hoán đổi cho nhau
Sử dụng tham biến :
program dientro; uses crt; var a,b:integer; procedure hoandoi(var x,y:integer); var TG:integer; begin TG:=x; x:=y; y:=TG; end; begin clrscr; a:=5; b:=10; writeln(a:6,b:6); hoandoi(a,b); writeln(a:6,b:6); readkey; end.
Kết quả:
Khi nào dùng tham biến: Khi ta muốn thay đổi giá trị các tham số truyền vào thì tra sẽ sử dụng tham biến.
2. Cách viết và sử dụng hàm
Điểm khác nhau cơ bản giữa thủ tục và hàm là việc thực hiện luôn trả về giá trị kết quả thuộc kiểu xác định và giá trị đó được gán cho tên hàm.
Hàm có cấu trúc tương tự như thủ tục, tuy nhiên chỉ khác nhau phần đầu.
Function <tên hàm>[<danh sách tham số>]:<kiểu dữ liệu>;
Trong đó kiểu dữ liệu chỉ có thể là integer, real, char, Boolean, string.
Khác với thủ tục, trong thân hàm phải có lệnh gán giá trị cho tên hàm:
<tên hàm>:=<biểu thức>;
Ví dụ 1:
Viết chưng tình thực hiện việc rút gọn một phân số , trong đó có sử dụng hàm tính ước chung lớn nhất của hai số nguyên.
program rutgon; uses crt; var TuSo,MauSo,a:integer; function UCLN(x,y:integer):integer; var sodu:integer; begin while y<>0 do begin sodu:=x mod y; x:=y; y:=sodu; end; UCLN:=x; end; begin clrscr; write('Nhap vao tu so va mau so '); readln(TuSo,MauSo); a:=UCLN(TuSo,MauSo); if a>1 then begin TuSo:=TuSo div a; MauSo:=MauSo div a; end; writeln(TuSo:5,MauSo:5); readkey; end.
Kết quả:
Trong chương trình này, các biến TuSo, MauSo và a là các biến toàn cục, còn biến sodu là biến cục bộ.
Sử dụng hàm
Việc sử dụng hàm tương tự với việc sử dụng các hàm chuẩn, khi viết lệnh gọi 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.
Lệnh gọi hàm có thể tham gia vào biểu thức như một toán hạng và thậm chí là tham số của lời gọi hàm, thủ tục khác.
Ví dụ:
A:=6*UCLN(TuSo,MauSo)+1;
Ví dụ 2. Viết chương trình tìm giá trị nhỏ nhất trong ba số có sử dụng hàm tìm số nhỏ nhất trong hai số.
Phân tích:
Do chỉ được sử dụng hàm tìm giá trị nhỏ nhất trong hai số. Nên ta sẽ làm như sau:
Đầu tiên sẽ tìm giá trị nhỏ nhất trong 2 số, Sau đó dùng kết quả này làm tham số cho hàm tìm giá trị nhỏ nhất với giá trị này và số còn lại.
program vdu2; uses crt; var a,b,c:real; function Min(a,b:real):real; begin if a<b then Min:=a else Min:=b; end; begin write('Nhap vao 3 so '); readln(a,b,c); writeln('So nho nhat trong ba so la ', Min(Min(a,b),c)); readln end.
Xem thêm các bài giải bài tập Tin học lớp 11 hay, chi tiết khác:
- Bài 17: Chương trình con và phân loại
- Bài tập và thực hành 6
- Bài tập và thực hành 7
- Bài 19: Thư viện chương trình con chuẩn
- Bài tập và thực hành 8
- Giải bài tập Tin học 11 trang 117
Giới thiệu kênh Youtube VietJack
Ngân hàng trắc nghiệm lớp 11 tại khoahoc.vietjack.com
- Hơn 75.000 câu trắc nghiệm Toán 11 có đáp án
- Hơn 50.000 câu trắc nghiệm Hóa 11 có đáp án chi tiết
- Gần 40.000 câu trắc nghiệm Vật lý 11 có đáp án
- Kho trắc nghiệm các môn khác
Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.
Nhóm học tập facebook miễn phí cho teen 2k5: fb.com/groups/hoctap2k5/
Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.
- Soạn Văn 11
- Soạn Văn 11 (bản ngắn nhất)
- Văn mẫu lớp 11
- Giải bài tập Toán 11
- Giải bài tập Toán 11 nâng cao
- Bài tập trắc nghiệm Đại số và Giải tích 11 (100 đề)
- Bài tập trắc nghiệm Hình học 11
- Đề kiểm tra Toán lớp 11 (40 đề)
- Giải bài tập Vật lý 11
- Giải bài tập Vật lý 11 nâng cao
- Bài tập trắc nghiệm Vật Lí 11 (70 đề)
- Giải bài tập Hóa học 11
- Giải bài tập Hóa học 11 nâng cao
- Chuyên đề Hóa học 11
- Bài tập trắc nghiệm Hóa 11 (70 đề)
- Giải bài tập Sinh học 11
- Bài tập trắc nghiệm Sinh học 11 (45 đề)
- Chuyên đề Sinh học 11
- Giải bài tập Địa Lí 11
- Giải bài tập Địa Lí 11 (ngắn nhất)
- Giải Tập bản đồ và bài tập thực hành Địa Lí 11
- Bài tập trắc nghiệm Địa Lí 11 (30 đề)
- Đề kiểm tra Địa Lí 11 (72 đề)
- Giải bài tập Tiếng anh 11
- Giải sách bài tập Tiếng Anh 11
- Giải bài tập Tiếng anh 11 thí điểm
- Giải bài tập Lịch sử 11
- Giải bài tập Lịch sử 11 (ngắn nhất)
- Giải tập bản đồ Lịch sử 11
- Bài tập trắc nghiệm Lịch Sử 11 (50 đề)
- Giải bài tập GDCD 11
- Giải bài tập GDCD 11 (ngắn nhất)
- Bài tập trắc nghiệm GDCD 11 (38 đề)
- Giải bài tập Tin học 11
- Giải bài tập Công nghệ 11