哪个网站有利于做课件,网站开发文档管理工具,wordpress顶部是什么,wordpress添加一个tag页面目录
何为最小公倍数
题目要求
代码实现
方法一#xff1a;暴力求解法#xff08;不推荐#xff09;
方法二#xff1a;递乘试摸法#xff08;推荐#xff09; 何为最小公倍数
最小公倍数是指两个或者多个正整数#xff08;除了0以外#xff09;的最小的公共倍数…目录
何为最小公倍数
题目要求
代码实现
方法一暴力求解法不推荐
方法二递乘试摸法推荐 何为最小公倍数
最小公倍数是指两个或者多个正整数除了0以外的最小的公共倍数 题目要求
输入两个正整数 如输入5 7
输入最小公倍数 如输出35 代码实现
方法一暴力求解法不推荐 #includestdio.h
int main()
{//输入int a 0;int b 0;scanf(%d %d, a, b);//计算最小公倍数int m a b ? a : b;while (1){if (m % a 0 m % b 0)break;elsem;}//输出printf(m %d, m);return 0;
} 代码解析
解析int m a b ? a : b;
求出 变量a、b 的较大值存储到 变量m 并将 变量m 假设为 变量a、b 的最小公倍数
解析while循环
如果 变量m 取模 变量a、b 的结果同时为 0 时那么此时的 变量m 就是 变量a、b 的最小公倍数
如果取模结果不为 0 时那么 变量m 就自增1直到能同时取模为 0 为止
代码验证
代码缺点 当输入的两个正整数接近了整型能表示的最大范围时那么这两个正整数的最小公倍数一定会超出整型能表示的最大范围 方法二递乘试摸法推荐 #includestdio.h
int main()
{//输入int a 0;int b 0;scanf(%d %d, a, b);//计算最小公倍数int i 1;while ((a * i) % b)i;//输出printf(%d\n, i * a);return 0;
} 代码解析
解析int i 1;
解析while ((a * i) % b) 举例说明 35 / 5 7 35 / 7 5 创建一个 整型变量i 用来递乘 变量a 或者 变量b 当 变量a 乘以 整型变量i 后再取模 变量b如果结果为 0 那就说明 a*i 就是 变量a、b的最小公倍数变量b同样如此 如果结果不为 0 时递增 变量i直到取模结果为0 代码验证