求最大公因数、最小公倍数、以及数的因式分解
利用辗转相除法求最大公因数,而又由最大公因数×最小公倍数 = 两数的乘积,所以实际上求最大公因数和最小公倍数是同一件事
**而数的因式分解:用小于所求数的数作除数,去除以所求数
**
求最大公因数和最小公倍数
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <ctime>
#define N 20
using namespace std;
//求最大公因数和最小公倍数
int main()
{
int a,b,r,s;
cout<<"请输入两个数:";
cin>>a>>b;
s = a*b;
while(b!=0)
{
r = a%b;
a = b; //被除数变成除数
b = r; //余数变成被除数
}
cout<<"最大公因数:"<<a<<endl;
cout<<"最小公倍数:"<<s/a<<endl;
return 0;
}
因式分解
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <ctime>
#define N 20
using namespace std;
//因式分解,第一种方法
int main()
{
int a;
cout<<"请输入要求的数:";
cin>>a;
for(int i=2;i*i<=a;)
{
if(a%i == 0)
{
cout<<i<<"×";
a /=i;
}
else
i++;
}
cout<<a;
return 0;
}
**用最清晰的思想写最简洁的代码,欢迎留言**