Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

định hướng bài toán Ước chung lớn nhất

15:30 04-02-2023 728 lượt xem 3 bình luận 14:48 07-02-2023

Ước chung lớn nhất
Cho hai số tự nhiên N và M, viết chương trình tìm ước chung lớn nhất của N và M.
- Dữ liệu vào: lấy từ file UCLN.INP : hai số N và M trên 1 dòng, cách nhau một khoảng
trắng.
- Dữ liệu ra: ghi ra tệp văn bản UCLN.OUT: ước chung lớn nhất của hai số.
- Ví dụ:

UCLN.INP UCLN.OUT
2 4 2
11 17 1

 

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
TomyKun đã bình luận 14:50 19-02-2023

Bạn có thể dùng đệ quy để tìm.                                                                                                                                                static int UCLN(int a,int b)                                                                                                                                                                 { 

             int r = a % b;                                                                                                                                                                                   if(r==0) { return b; }                                                                                                                                                                       else { a = b; b = r; return UCLN(a, b); }

}

Vo Tan Duc đã bình luận 07:40 09-02-2023

- Tỉm max, min của a,b, nếu max chia hết cho min thì UCLN=min

- Ngược lại (max/min) thì chạy vòng lặp for từ i=min/2 về 1, nếu max chia hết cho i thì UCLN=i rồi thoát

mt1234 đã bình luận 22:58 06-02-2023

Mình chỉ hướng dẫn bạn chỗ while loop thôi nhé
Nếu a và b đều lớn hơn 0

{

    nếu a lớn hơn b

        a = a chia lấy dư b

    ngược lại

        b = b chia lấy dư cho a

}

Kết quả là tổng của a và b

Câu hỏi mới nhất