求两个数的 最大公约数 和最小公倍数
最大公约数
思路:
- 假设有两个数a,b,求a,b的最大公约数
- 令a%b,得到的结果用tmp记录
- 再将b的值给a,tmp的值给b
- 此时a的值变成了b,b的值变成了tmp,循环进行a%b
- 直至a%b的结果为0时,循环结束,此时b的值即为最小公约数
举例分析:
a=14,b=8,求a,b的最大公约数
令:14%8=6 ; 8%6=2; 6%2=0;此时b=2
所以:14 ,8 的最大公约数是2
最小公倍数
思路:两个数的乘积除以最大公约数,即为最小公倍数
例题分析:
如上题,求得 14 ,8的最大公约数是2,那么最小公倍数为 56(14*8/2=56)
代码分析:
#include <stdio.h>
#include<stdlib.h>int max_divisor(int a, int b)
{while (a%b){int tmp = a%b;a = b;b = tmp;}return b;
}int main()
{Test();system("pause");return 0;
}//测试用例——任写几个数进行测试
void Test()
{int a[] = {6,32,48,55,96,256,1048,4096};int len = sizeof(a) / sizeof(a[0]);for (int i = 0; i < len-1; i++){int num1 = max_divisor(a[i], a[i+1]);printf("%d ,%d", a[i], a[i + 1]);printf("最大公约数是:%d\n", num1);printf("最小共倍数是:%d\n", a[i]*a[i + 1] / num1);printf("\n");}
}
打印结果:
求两个数的 最大公约数 和最小公倍数相关推荐
- 百度web前端面试题之求两个数的最大公约数和最小公倍数
求两个数的最大公约数和最小公倍数,好像是第三题, 找到如下简洁写法: <1> 用辗转相除法求最大公约数 算法描述: m对n求余传给自己,再次求余, 若余数等于0 则 n 为最大公约数 &l ...
- 求两个数的最小公约数和最小公倍数
题目: 求两个数的最小公约数和最小公倍数 思路: 求最大公约数: 欧几里得在其<几何原本>中提出的欧几里得算法,有称辗转相除法, 具体做法是如果q和r分别是m除以n的商及玉树,m=nq+ ...
- 编写两个函数分别求两个数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果,两个数由键盘输入。 输入输出格式示例: 输入:24 16 输出:zdgys=8,zxgbs=48
编写两个函数分别求两个数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果,两个数由键盘输入. 输入输出格式示例: 输入:24 16 输出:zdgys=8,zxgbs=48 #include ...
- php怎么求最小公倍数,C++_详解C语言求两个数的最大公约数及最小公倍数的方法,求两个正整数的最大公约数nbs - phpStudy...
详解C语言求两个数的最大公约数及最小公倍数的方法 求两个正整数的最大公约数 思路:这是一个很基本的问题,最常见的就是两种方法,辗转相除法和辗转相减法.通式分别为 f(x, y) = f(y, x%y) ...
- c语言用迭代法求最大公约数,用迭代法求两个数的最大公约数和最小公倍数
c语言论文 用迭代法求两个数的最大公约数和最小公倍数 化工09110605 摘要:迭代法是一种循环控制语句和循环结构程序的设计方法.在计算机解决问 题的时候,总希望从复杂的问题中找到规律,并归结为简单 ...
- 【经典100题】 题目16 求两个数的最大公约数和最小公倍数
题目 求两个数的最大公约数和最小公倍数. 最大公约数:指两个或多个整数共有约数中最大的一个 最小公倍数:指两个或多个整数共有倍数中最小的一个 说明:自己没有搞清楚最大公约数和最小公倍数的定义,结果走了 ...
- python编写函数、计算三个数的最大公约数_python 函数求两个数的最大公约数和最小公倍数...
1. 求最小公倍数的算法: 最小公倍数 = 两个整数的乘积 / 最大公约数 所以我们首先要求出两个整数的最大公约数, 求两个数的最大公约数思路如下: 2. 求最大公约数算法: 1. 整数A对整数B进行 ...
- Java求两个数的最大公约数及最小公倍数、求多个数的最大公约数及最小公倍数
今天参加腾讯笔试,做编程题时在最小公倍数.最大公约数这些这么简单的知识点上卡壳了,自信心受到强烈的打击,下来后猛复习了这方面的相关编程知识. 有以下几个关键点: 1.任意正整数的最大公约数.最小公倍数 ...
- 算法:求两个数的最大公约数与最小公倍数的方法
1.计算两个整数的最大公约数方法有两种 第一种是使用<九章算术>中的更相减损术方法,"以少减多,更相减损,求其等也,以等数约之,等数约之,即除也,其所以相减者皆等数之重叠,故以等 ...
- html 计算两数之和,百度web前端面试题之求两个数的最大公约数和最小公倍数
求两览页些求时是过解些这确如目前例总站回广随个数的最大公约数和最小公倍数,好是能览调不页新代些事几求事都时学下是事功过发,解像是第三题, 找到如下简洁遇新是直朋能到分览写法: <1> 用辗 ...
最新文章
- Win8Metro(C#)数字图像处理--2.12Sobel边缘检测
- Virtual Box6.1配置CentOS6.5版本的网络连接(静态IP设定)——虚拟机和宿主机互相ping通以及ping通连接外网
- 华三交换机VLAN 篇
- python实现var模型_copula函数及其Var计算的Python实现
- 【原创】我所理解的自动更新-外网web服务器配置
- 数据结构-排序基础代码
- 没钱也创业——教你空手道白手创业
- Tomcat启动与关闭事件监听
- 开车十几年了,一些心得和大家分享、探讨
- Vue项目在nginx下的部署实践(个人学习总结)
- 林锐高质量编程中的几道面试题
- vue源码解析-实现
- flash图片如何镜像翻转_Flash制作跳动的文字镜像效果
- java 微信卡券开发 --创建微信卡券
- ccy测试dlx 模块化与全局变量
- Matlab 齐次线性方程组求解举例
- Excel冻结窗格纪要
- ios MultipeerConnectivity蓝牙通讯
- Soul一声响,你的意中人就来了
- 中国小微企业调查数据CMES:小型微型家庭作坊式企业收支工商税收营商情况
热门文章
- UIAccelerometer 加速计(iOS5之前)
- 2D Conforming Triangulations
- redis集群拓扑_Redis拓扑
- 计算机控制系统刘恩沧课后题答案,第八章2 提高计算机控制系统可靠性的技术措施_内蒙古农业大学:计算机控制技术_ppt_大学课件预览_高等教育资讯网...
- vscode 使用code runner配置c++11
- onenote正在与服务器联系以获取信息,随时记录重要信息 – OneNote
- Intel D435深度相机“No Frames Received!“问题
- shell softech 面料_MAMMUT猛犸象的黑科技大军(服装篇)
- C库源码中的移位函数
- 什么是照度 照度的标准值介绍