C语言最大公约数和最小公倍数(辗转相除法)
从键盘输入两个正整数 a 和 b,求其最大公约数和最小公倍数。
算法思想
利用格式输入语句将输入的两个数分别赋给 a 和 b,然后判断 a 和 b 的关系,如果 a 小于 b,则利用中间变量 t 将其互换。再利用辗转相除法求出最大公约数,进而求出最小公倍数。最后用格式输出语句将其输出。
程序代码
#include <stdio.h>
int main()
{int a,b,c,m,t;printf("请输入两个数:\n");scanf("%d%d",&a,&b);if(a<b){t=a;a=b;b=t;}m=a*b;c=a%b;while(c!=0){a=b;b=c;c=a%b;}printf("最大公约数是:\n%d\n",b);printf("最小公倍数是:\n%d\n",m/b);
}
调试运行结果
当输入的两个数为 15 和 65 时,打印出的结果如下所示:
请输入两个数:
15 65
最大公约数是:
5
最小公倍数是:
195
当输入的两个数为 16 和 72 时,打印出的结果如下所示:
请输入两个数:
16 72
最大公约数是:
8
最小公倍数是:
144
总结
实例中用到了辗转相除法来求最大公约数。在求最小公倍数时要清楚最大公约数和最小公倍数的关系,即两数相乘的积除以这两个数的最大公约数就是最小公倍数。
C语言最大公约数和最小公倍数(辗转相除法)相关推荐
- C语言最大公约数和最小公倍数
首先我们应该知道最大公约数和最小公倍数的基本概念 最大公约数:指两个或多个整数共有约数中最大的一个 最小公倍数:俩数相乘除以最大公约数 一.最大公约数 方法一:穷举法 先令最大公约数max为1,当俩个 ...
- c语言最大公约数和最小公倍数_五年级数学最大公因数最小公倍数 练习
五年级数学最大公因数最小公倍数-练习 一.填空. 1.把36分解质因数是( ),把60分解质因数是( ). 2.自然数a除以自然数b,商是15,那么a和b的最大公因 ...
- c语言最大公约数和最小公倍数_五年级奥数课堂之七:公因数和公倍数
乘积尾0的个数 公因数和公倍数的基本概念 公因数的释义 给定若干个整数,如果有一个(些)数是它们共同的因数,那么这个(些)数就叫做它们的公因数.而全部公因数中最大的那个,称为这些整数的最大公因数. 公 ...
- 求最大公约数和最小公倍数——辗转相除法(欧几里得算法)、更相减损术、stein算法
辗转相除法-- 辗转相除法求最大公约数的原理: 两个整数其中较小的数 和 两数相除(较大数除较小数)的余数(使用递归)的最大公约数. 辗转相除法求最小公倍数的原理: 两个整数分别除以最大公约数的结果相 ...
- C语言最大公约数,最小公倍数。
#include<stdio.h>int fas(int x,int y){int a,t;if(x<y){t=x;x=y;y=t;}do{a=x%y;x=y;y=a;}while( ...
- C语言 最大公约数和最小公倍数计算
#include<stdio.h>int maxFactor(int,int); int minMultiple(int,int);void main(){//程序入口int a=0,b= ...
- 经典编程习题,用Java实现:矩阵转置、最大公约数和最小公倍数、计算自然对数的底e的值、输出1000以内的回文素数、判断两个年份之间的平闰年情况。
经典编程习题,用Java实现 1.矩阵转置 2.最大公约数和最小公倍数 3.计算自然对数的底e的值 4.输出1000以内的回文素数 5.判断两个年份之间的平闰年情况 1.矩阵转置 public cla ...
- c语言求两个数的最小公倍数辗转相除法,C语言辗转相除法求2个数的最小公约数...
辗转相除法最大的用途就是用来求两个数的最大公约数. 用(a,b)来表示a和b的最大公约数. 有定理: 已知a,b,c为正整数,若a除以b余c,则(a,b)=(b,c). (证明过程请参考其它资料) 例 ...
- c语言辗转相除法约分分数,更相损减法和辗转相除法 求最大公约数和最小公倍数(C语言)...
假设有两个数a和b,求a,b的最大公约数和最小公倍数实际上是一个问题,得出这两个数的最大公约数就可以算出它们的最小公倍数. 最小公倍数的公式是 a*b/m m为最大公约数 因为 a=m*i; b=m* ...
最新文章
- numpy如何生成随机数
- 测试start backup和ndb_restore
- js测试网络连通情况
- win 修改jvm时间_Windows 下修改Tomcat jvm参数
- 七种在BIM实施过程中减少浪费的方法
- pycharm奇技淫巧 直接通过代码输出函数 refactor —— extract method
- python学习高级篇(part7)--特殊属性和特殊方法
- linux硬盘保护卡,保护卡下安装Linux
- Word2Vec学习笔记(二)
- 【clickhouse】创建物化视图数据来源是两张表该怎么写创建语句呢?
- WPF界面设计技巧(11)-认知流文档 小议WPF的野心
- 20191013:快速排序1.1
- CVSNT Manual
- java工程师要懂哪些东西_Java工程师都需要懂哪些知识?学实用知识得高薪
- HDU2569 彼岸【打表+记忆化递归】
- Linux跨平台编译安卓版本protobuf库——趟坑记录
- 国产三维CAD/CAM软件SINOVATION10.2版本发布,亮点功能抢先看!
- 干货文:企业 IT 基础架构|(精华篇)
- java-家庭作业4
- python中将字符变为大写_python3 数字转人民币大写
热门文章
- 每日一句:I'm afraid I have to remind you that time is up
- android ratingbar 点击事件,Android RatingBar基本使用:
- Catboost自定义损失函数初探
- 聚焦机器人集成应用,看未来工厂“智”变!
- 泰罗凹凸曼主题曲谐音
- 社会工程学软件_信息工程学院大学生心理健康教育讲座
- 过滤器Filter中得到各种路径
- 故障转移之starwind共享存储篇
- 《零基础学机器学习》笔记-第2课-数学和Python知识
- php 腾讯短信接口api,关于腾讯云短信 API 成功调用的分享