嘉兴seo网络服务团队为嘉兴地区提供专业的网络服务 !
嘉兴seo_嘉兴网站建设_嘉兴软件开发 - 小猪博客专业提供嘉兴网站建设|嘉兴seo|嘉兴软件开发

求最大公约数、最小公陪数、质数

时间:2012-02-08 19:49来源:未知 作者:admin 点击:
求最大公约数、最小公陪数、质数
嘉兴seo_嘉兴网站建设_嘉兴软件开发 - 小猪博客专业提供嘉兴网站建设|嘉兴seo|嘉兴软件开发
最大公约数(H.C.M. / G.C.D.)
最小公倍数(lcm) gcd(a, b) * lcm(a, b) = ab
1、求两个数之间的最大公约数和最小公陪数
void main()
{
int a,num1,num2,temp;
printf("please input two numbers:\n");
scanf("%d%d",&num1,&num2);
int ji = num1*num2;
if(num1<num2) //保证第一数是较大的值
{
temp=num1;
num1=num2;
num2=temp;
}
while((a=num1%num2)!=0) /*利用辗除法,直到a为0为止*/
{
num1=num2;
num2 = a;
} //此时num2就是最大公约数
printf("the gcd is: %d\n",num2);
printf("the lcm is: %d\n",ji/num2);
}
2、求三个数之间的最大公约数
int main()
{
int x,y,z,a,min;
scanf("%d%d%d",&x,&y,&z);
if(x>=y)
if(y>=z)min=z;
else min=y;
else
if(y<=z)min=x;
else
if(x<=z)min=x;
else min=z;
printf("这三个数中最小的是",min);
for(a=min;a>0;a--)
{
printf("%d",a);
if(x%a==0&&y%a==0&&z%a==0)break;
}
printf("\n这三个数的最大公约数是%d\n",a);
system("pause");
}
3、判断是否是质数
质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。换句话说,只有两个正因数(1和自己)的自然数即为素数。比1大
但不是素数的数称为合数。1和0既非素数也非合数。合数是由若干个质数相乘而得到的。所以,质数是合数的基础,没有质数就没有合数。
bool prime(int x)
{
int n = (int)sqrt((double)x);
int i;
for (i = 2; i <= n; i++)
if (x % i == 0) return false;
return true;
}
(责任编辑:admin)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片