Kiến thức

Tìm ước số chung lớn nhất và bội số chung nhỏ nhất của 2 số a,b

Bạn đang xem: Tìm ước số chung lớn nhất và bội số chung nhỏ nhất của 2 số a,b

Tìm ước số chung lớn nhất và bội số chung nhỏ nhất của 2 số a,b

October 30, 2015

VietVH

C/C++

7

Facebook0

Google+0

Twitter0

Yêu cầu:

– Nhập 2 số nguyên a,b.
a. Tìm USC lớn nhất của 2 số đó
b. Tìm bội số chung nhỏ nhất của 2 số đó

Phân tích:

– Dùng thuật toán Euclid để tìm USC lớn nhất

– BSC nhỏ nhất = a*b / USCLN(a, b)

Code:

 /************************************************************ * Author: VNCODING * History * 2014/04/03 first create VNCODING *************************************************************/ #include "stdio.h" #include "conio.h" int uscln(int a, int b); int bscnn(int a, int b); void main() { int a = 6, b = 18; printf("USCLN(%d,%d) = %dn", a, b, uscln(a, b)); printf("BSCNN(%d,%d) = %dn", a, b, bscnn(a, b)); getch(); } // dung thuat toan Euclid int uscln(int a, int b) { if(a == 0 && b == 0) return -1; else return (b == 0)? a : uscln(b, a%b); } int bscnn(int a, int b) { if(a == 0 || b == 0) return -1; else return (a*b/uscln(a, b)); } 

Kết quả:

USCLN(6,18) = 6 BSCNN(6,18) = 18

Chuyên mục: Kiến thức

Related Articles

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Check Also
Close
Back to top button