1694 - C语言程序设计教程(第三版)课后习题6.1
输入两个正整数m和n,求其最大公约数和最小公倍数。
题目输入
两个整数
题目输出
最大公约数,最小公倍数
输入/输出样例
题目输入
5 7
题目输出
1 35
C语言解答
#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int a,b,m,q,w; scanf("%d%d",&a,&b); q=a; w=b; if(a>b) { m=b; b=a; a=m; } while(a) { m=b%a; b=a; a=m; } printf("%d %d\n",b,q*w/b); return 0; }
C++解答
#include<iostream> using namespace std; int main() { int m,n; cin>>m>>n; int r=m%n,t=m*n; while (r) //辗转相除法 { m=n; n=r; r=m%n; } cout<<n<<" "<<t/n<<endl; return 0; }