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?

  1. Tác giả: LTTK CTV
    Đánh giá: ✪ ✪ ✪ ✪ ✪

    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?
    Trả lời:

    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:
    PHP:
    1. function ucln (a, b: integer): integer;
    2. var r: integer;
    3. begin
    4. while b>0 do begin
    5. r: = a mod b ,a : = b ; b:= r; end; ucln:= a; and;
    6. - Hàm tình bội chung nhỏ nhất của hai số nguyên dương a, b:
    7. lunction bcnn(a, b: integer): integer;
    8. begin
    9. bcnn:= a*b div ucln(a, b);
    10. 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:
    11. program bai4_chuong6;
    12. use crt ;
    13. vai
    14. X y: integer;
    15. function ucln(a, b: integer): integer;
    16. var r: integer;
    17. begin
    18. while b>0 do begin
    19. r:= a mod b; a: = b ,b:= r;
    20. end; ucln:= a;
    21. txnction bcnn(a, b: integer): integer;
    22. begin
    23. bcnn:= a*b div ucln(a, b);
    24. Begin
    25. clrscr;
    26. writeln('Nhap vao hai so can tim BCNN');
    27. write ('x=') , readln(x); write ('y=') , readln(y);
    28. writeln('bcnn cua hai so',x:4,'va',y:4,'la',bcnn(a,b)
    29. readln
    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:
    01.jpg
    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.