Câu 4 trang 117 SGK Tin học 11
Đề bài
Viết chương trình con (làm, thủ tục) tính bội số chung nhỏ nhất của hai số nguyên dương a, b. Hãy cho biết trong trường hợp này viết chương trình con dưới dạng hàm hay thủ tục là thuận tiện hơn. Vì sao?
Lời giải chi tiết
Viết chương trình con (hàm, thủ tục) tính bội số chung nhỏ nhất của hai số nguyên dương a, b.
Ta nhận thấy rằng, bội số chung nhỏ nhất của hai số nguyên dương a, b có thể được tính theo công thức:
ab/d
trong đó d là ước chung lớn nhất của a và b.
Bởi vậy:
Nên viết hàm để tính bội chung nhỏ nhất của hai số nguyên dương vì chương trình con cần trả ra một giá trị;
- Hàm tính bội chung nhỏ nhất của hai số nguyên dương a, b cần sử dụng hàm tính ước chung lớn nhất của a và b.
- Hàm tính ước chung lớn nhất của hai số nguyên dương a, b:
function ucln (a, b: integer): integer;
var r: integer;
begin
while b>0 do begin
r: = a mod b ,a : = b ; b:= r; end; ucln:= a; and;
- Hàm tính bội chung nhỏ nhất của hai số nguyên dương a, b:
lunction bcnn(a, b: integer): integer;
begin
bcnn:= a*b div ucln(a, b);
end;
Khi đó, chương trình con tính bội số chung nhỏ nhất của hai số nguyên dương a, b như sau:
program bai4_chuong6;
use crt ;
vai
X y: integer;
function ucln(a, b: integer): integer;
var r: integer;
begin
while b>0 do begin
r:= a mod b; a: = b ,b:= r;
end; ucln:= a;
end;
txnction bcnn(a, b: integer): integer;
begin
bcnn:= a*b div ucln(a, b);
end;
Begin
clrscr;
writeln('Nhap vao hai so can tim BCNN');
write ('x=') , readln(x); write ('y=') , readln(y);
writeln('bcnn cua hai so',x:4,'va',y:4,'la',bcnn(a,b)
readln
End.
Khi chạy chương trình, giả sử nhập x= 5, y- 4 thì bội chung nhỏ nhất của X và y là 20. Kết quả chương trình như hình 82 dưới đây:
Như vậy, trong trường hợp này ta viết chương trình con dưới dạng hàm là thuận tiện hơn so với viết chương trình con dưới dạng thủ tục. Vì ít khi chúng ta chỉ tính riêng bội chung nhỏ nhất mà bội chung nhỏ nhất chỉ để phục vụ một việc nào đó tiếp theo. Nếu sử dụng hàm thì ta có thể dùng lời gọi hàm để tham gia vào các biểu thức toán học khác. Còn sử dụng thủ tục thì chúng ta không thể làm được như vậy.
Xemloigiai.com
SGK Tin học lớp 11
Giải bài tập tin học lớp 11 đầy đủ kiến thức và bài tập thực hành tin học 11 giúp để học tốt môn tin 11
Chương 1: Một số khái niệm về lập trình và ngôn ngữ lập trình
Chương 2: Chương trình đơn giản
- Bài 3: Cấu trúc chương trình
- Bài 4: Một số kiểu dữ liệu chuẩn
- Bài 5: Khai báo biến
- Bài 6: Phép toán, biểu thức, câu lệnh gán
- Bài 7: Các thủ tục chuẩn vào/ra đơn giản
- Bài 8: Soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình
- Bài tập và thực hành 1
Chương 3: Cấu trúc rẽ nhánh và lặp
Chương 4: Kiểu dữ liệu có cấu trúc
- Bài 11: Kiểu mảng
- Bài tập và thực hành 3
- Bài tập và thực hành 4
- Bài 12: Kiểu xâu
- Bài tập và thực hành 5
- Bài 13: Kiểu bản ghi
- Tóm tắt chương IV
Chương 5: Tệp và thao tác với tệp
Chương 6: Chương trình con và lập trình có cấu trúc
Lớp 11 | Các môn học Lớp 11 | Giải bài tập, đề kiểm tra, đề thi Lớp 11 chọn lọc
Danh sách các môn học Lớp 11 được biên soạn theo sách giáo khoa mới của bộ giáo dục đào tạo. Kèm theo lời giải sách bài tập, sách giáo khoa, đề kiểm tra 15 phút, 45 phút (1 tiết), đề thi học kì 1 và học kì 2 năm học 2025 ngắn gọn, chi tiết dễ hiểu.
Toán Học
Vật Lý
Hóa Học
Ngữ Văn
- Soạn văn 11
- SBT Ngữ văn lớp 11
- Văn mẫu 11
- Soạn văn 11 chi tiết
- Soạn văn ngắn gọn lớp 11
- Soạn văn 11 siêu ngắn
Sinh Học
GDCD
Tin Học
Tiếng Anh
Công Nghệ
Lịch Sử & Địa Lý
- Tập bản đồ Địa lí lớp 11
- SBT Địa lí lớp 11
- SGK Địa lí lớp 11
- Tập bản đồ Lịch sử lớp 11
- SBT Lịch sử lớp 11
- SGK Lịch sử lớp 11