最小公倍数和最大公约数

1.描述

1-2.概念

1、倍数与约数:如果 a 能被 b 整除,a 就叫做 b 的倍数,b 就叫做 a 的约数。
约数和倍数都表示一个整数与另一个整数的关系,不能单独存在。

2、最大公约数:几个整数中公有的约数,叫做这几个数的公约数;其中最大的一个,叫做这几个数的最大公约数。举例:12、16 的公约数有 1、2、4,
其中最大的一个是 4,所以 4 是 12 与 16 的最大公约数。

3、最小公倍数:几个自然数公有的倍数,叫做这几个数的公倍数,其中最小的一个,叫做这几个数的最小公倍数。举例:4的倍数有4、8、12、16,……,
6 的倍数有 6、12、18、24,……,4 和 6 的公倍数有 12、24,……,其中最小的是 12,所以 4 和 6 最小公倍数为 12。

1-3.控制

分别输入两个正整数(1<正整数<201),输出这两个正整数的最大公约数 M及最小公倍数 N(注:M 和 N 输出到一行,之间以一个英文逗号隔开)。

输入描述:

第一行输入第一个正整数;第二行输入第二个正整数。
输出描述:输出这两个正整数的最大公约数 M 及最小公倍数 N(M 和 N 输出
到一行,之间以一个英文逗号隔开)。

输入描述

第一行输入第一个正整数;第二行输入第二个正整数。

输出描述

输出这两个正整数的最大公约数 M 及最小公倍数 N(M 和 N 输出
到一行,之间以一个英文逗号隔开)。

用例输入 1 

4
6

用例输出 1 

2,12

咋办?凉拌炒鸡蛋,好吃又好看(数学不好的多去补补)

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int a,b,max,min,c;
	cin>>a>>b;
	if(a>b) min=b,max=a;//保证MAX和MIN永远都是最大和最小
	else min=a,max=b;
	for(int i=min;i>=1;i--)//判断公约数
	{
		if(a%i==0&&b%i==0)
		{
			cout<<i<<',';
			break;
		}
	}
	for(int j=1;;j++)//判断公倍数
	{
		c=max*j;
		if(c%a==0&&c%b==0)
		{
			cout<<c;
			break;
		}
	}
	return 0;
}

公约数部分通过遍历来找到可以同时整除A,B的数字

公倍数也是遍历来找到第一个符合条件的数字

如果有更简便的方法,欢迎评论区留言,谢谢

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值