40.公约数和公倍数
生活随笔
收集整理的這篇文章主要介紹了
40.公约数和公倍数
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
描述小明被一個(gè)問題給難住了,現(xiàn)在需要你幫幫忙。問題是:給出兩個(gè)正整數(shù),求出它們的最大公約數(shù)和最小公倍數(shù)。 輸入第一行輸入一個(gè)整數(shù)n(0<n<=10000),表示有n組測(cè)試數(shù)據(jù);
隨后的n行輸入兩個(gè)整數(shù)i,j(0<i,j<=32767)。 輸出輸出每組測(cè)試數(shù)據(jù)的最大公約數(shù)和最小公倍數(shù) 樣例輸入 3
6 6
12 11
33 22
樣例輸出 6 6
1 132
11 66 1 /*
2 求最小公倍數(shù)算法:
3 最小公倍數(shù)=兩整數(shù)的乘積÷最大公約數(shù)
4 求最大公約數(shù)算法:
5 (1)歐幾里得算法:輾轉(zhuǎn)相除法
6 有兩整數(shù)a和b:
7 ① a%b得余數(shù)c
8 ② 若c=0,則b即為兩數(shù)的最大公約數(shù)
9 ③ 若c≠0,則a=b,b=c,再回去執(zhí)行①*/
10
11 #include<stdio.h>
12 int main( ) {
13 int n, i, j, k, t;
14 scanf("%d", &n);
15 while(n--) {
16 scanf("%d%d", &i, &j);
17 k = i * j;
18 while(j != 0) {
19 t = i % j;
20 i = j;
21 j = t;
22 }
23 printf("%d %d\n", i, k / i);
24 }
25 return 0;
26 } View Code
隨后的n行輸入兩個(gè)整數(shù)i,j(0<i,j<=32767)。
?
轉(zhuǎn)載于:https://www.cnblogs.com/tong69/p/5779205.html
總結(jié)
以上是生活随笔為你收集整理的40.公约数和公倍数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android—TableLayout自
- 下一篇: SDO_GEOMETRY结构说明