ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

求最小公倍数的三种方法以及对求最大公因数的补充 C语言从入门到入土(入门篇)(算法篇p4)

2021-11-30 10:03:14  阅读:190  来源: 互联网

标签:return p4 公倍数 d% int main 公因数


目录

求最小公倍数的三种方法

求最大公因数的补充:


谁都不能阻挡你成为更优秀的人。

废话不多说,直接上代码。

求最小公倍数的三种方法

//法一:暴力(定义)求解
//最小公倍数的本质是一个最小的能同时被两整数整除的自然数
int main()
{
	int m = 0;
	int n = 0;
	scanf("%d%d", &m, &n);
	int a = 0;

	a = ((m) > (n)) ? (m) : (n);

	while (1)
	{
		if ((a % m == 0) && (a % n == 0))
		{
			break;
		}
		a++;
	}
	printf("%d", a);
	return 0;
}
//法二:

int main()
{
	int m = 0;
	int n = 0;
	int i = 1;
	scanf("%d%d", &m, &n);		 //当然这里也可以是
	while (((m * i) % n) != 0)   // m*i%n
	{
		i++;
	}
	printf("%d", m*i);  //注意这里
	return 0;
}
//法三:最大公因数求解
//如求 3 12  最小公倍数 就是  3*12/3(最大公因数),
//     3  5  最小公倍数 就是  3*5/1 。

int main()
{
	int m = 0;
	int n = 0;
	int c = 0;
	int a = 0;
	int b = 0;
	scanf("%d%d", &m, &n);
	a = m;
	b = n;
	while (c=a%b)
	{
		a = b;
		b = c;
	}
	//注意这里只有b才是最大公因数,这是辗转相除法规定的,
	//当然你也可以说是欧几里得法更帅不是嘛哈哈。
	printf("%d",m*n/b);
	return 0;
}

求最大公因数的补充:

//求最大公因数的两个补充,上面已经说到了辗转相除,
//这里就不过多赘述了。
//法一:更相减损法
//简单说:大的减小的,直到减数和差相等
int main()
{
	int m = 0;
	int n = 0;
	scanf("%d%d", &m, &n);
	
	while ((m - n) != 0)
	{
		if (m > n)
		{
			m=m - n;
		}
		else
		{
			n=n - m;
		}
	}
	printf("%d", m);//n也行
	return 0;
}
//法二:穷举法
//从两个数较小的数开始减,直到都能除尽。
int main()
{
	int m = 0;
	int n = 0;
	scanf("%d%d", &m, &n);
	int c = 0;

	c = ((m) < (n)) ? (m) : (n);
	for (c; c >= 1; c--)
	{
		if ((m % c == 0) && (n % c == 0))
		{
			printf("%d", c);
			break;
		}

	}
	return 0;
}

最后:感谢您的观看!

           感谢您的支持!

如果没有关注的话就来个关注吧!你的支持是作者写作的最大动力!

谢谢!!!

标签:return,p4,公倍数,d%,int,main,公因数
来源: https://blog.csdn.net/weixin_62700590/article/details/121617961

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有