肥宅钓鱼网
当前位置: 首页 钓鱼百科

C语言求最大公约数代码(C语言求最大公约数)

时间:2023-06-08 作者: 小编 阅读量: 2 栏目名: 钓鱼百科

问题描述求任意两个正整数的最大公约数。公约数中最大的一个公约数,称为这几个自然数的最大公约数。要求任意两个正整数的最大公约数即求出一个不大于其中两者中的任何一个,但又能同时整除两个整数的最大自然数。两个数的最大公约数有可能是其中的小数,所以在按从大到小顺序找寻最大公约数时,循环变量i的初值从小数n开始依次递减,去寻找第一个能同时整除两整数的自然数,并将其输出。

问题描述

求任意两个正整数的最大公约数(GCD)。

问题分析

如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数。几个自然数公有的约数,叫做这几个自然数的公约数。公约数中最大的一个公约数,称为这几个自然数的最大公约数。

根据约数的定义可知,某个数的所有约数必不大于这个数本身,几个自然数的最大公约数必不大于其中任何一个数。要求任意两个正整数的最大公约数即求出一个不大于其中两者中的任何一个,但又能同时整除两个整数的最大自然数。

算法设计

思路有两种:

第一种:采用穷举法按从小到大(初值为1,最大值为两个整数当中较小的数)的顺序将所有满足条件的公约数列出,输出其中最大的一个;

第二种,按照从大(两个整数中较小的数)到小(到最小的整数1)的顺序求出第一个能同时整除两个整数的自然数,即为所求。

我们将对第二种思路进行详细说明。

两个数的最大公约数有可能是其中的小数,所以在按从大到小顺序找寻最大公约数时,循环变量i的初值从小数n开始依次递减,去寻找第一个能同时整除两整数的自然数,并将其输出。

需要注意的是,虽然判定条件是i>0,但在找到第一个满足条件的i值后,循环没必要继续下去;

如,25和15,最大公约数是5,对于后面的4、3、2、1没必要再去执行,但此时判定条件仍然成立,要结束循环只能借助break语句。

程序流程图:下面是完整的代码:

#include<stdio.h>int main(){int m, n, temp, i;printf("Input m & n:");scanf("%d%d", &m, &n);if(m<n) /*比较大小,使得m中存储大数,n中存储小数*/{ /*交换m和n的值*/temp=m;m=n;n=temp;}for(i=n; i>0; i--) /*按照从大到小的顺序寻找满足条件的自然数*/if(m%i==0 && n%i==0){/*输出满足条件的自然数并结束循环*/printf("The GCD of %d and %d is: %d\n", m, n, i);break;}return 0;}

运行结果:

Input m & n:100 125

The GCD of 125 and 100 is: 25

不管你是转行也好,初学也罢,进阶也可,如果你想学编程,进阶程序员~

【值得关注】我~

全栈程序员正在等你加入~

    推荐阅读
  • 和平精英怎么获得玛莎拉蒂(和平精英怎么拥有玛莎拉蒂)

    和平精英怎么获得玛莎拉蒂?和平精英怎么获得玛莎拉蒂和平精英玛莎拉蒂是需要玩家们参加五曜赐福活动获取玛莎拉蒂徽章,使用徽章兑换车,钥匙就可以拥有玛莎拉蒂了,玛莎拉蒂分别为金色、粉色和蓝色三款。一款颜色只可兑换一次,其中金色的需要3个玛莎拉蒂徽章才能兑换。《和平精英》是由腾讯光子工作室群自研打造的军事竞赛体验手游,该作于2019年5月8日正式公测。

  • 241种鸟类名单(华东地区鸟类大全)

    它们栖息在我们的周围,有的林荫中高歌,有的街边漫步,有的却少为人知,但它们已成为了一道靓丽的自然风景线!为了让大家熟悉它们,了解它们,更为了保护它们,我找来这些鸟图,以供朋友们鉴赏!

  • 怎么刷公交健康码(乘公交核验健康码或将由)

    怎么刷公交健康码广州日报讯 近日,一张公交核验健康码提示图片受到网友关注,根据图片可以得知,查验健康码将由公交车的终端机上进行核验而不是由公交司机进行查验。图片显示的流程为,市民乘坐公交时,需要把手机放置在终端扫码区进行核验,终端播音绿码显示健康码正常后,市民方可刷卡乘车。广州市交通运输局表示,目前该功能仍在开发测试中,后续将视测试情况及疫情防控需要决定是否实施,暂无时间表。

  • 吃蜂蜜不能吃什么食物(吃蜂蜜不能吃哪些食物)

    以下内容希望对你有帮助!吃蜂蜜不能吃什么食物吃了蜂蜜之后不可以吃大米、豆腐、韭菜、牛肉、鲫鱼、油炸类的食物,这些食物和蜂蜜混合食用之后,可能会存在腹泻现象蜂蜜具有滋润养颜、润肺止咳的特殊作用,在服用时也要注意,千万不要空腹服用,蜂蜜的含糖量比较丰富,空腹服用之后,很可能会导致胃酸分泌过多现象,容易影响肠道的消化功能。

  • 田螺清理方法(田螺的营养价值有哪些)

    下面内容希望能帮助到你,我们来一起看看吧!田螺清理方法想要清洗田螺的话,就要先把它放入清水中搓洗再用盐水浸泡一两天,并注意在浸泡田螺的过程中定期给它换水。田螺肉含有丰富的维生素A、蛋白质以及钙、铁等元素,是常见的美味食物。田螺肉丰腴细腻,味道鲜美,是典型的高蛋白、低脂肪的天然保健食品。田螺富含铜元素,铜是人体健康不可缺少的微量营养素,对于血液、中枢神经和免疫系统的发育以及功能有重要影响。

  • 宋徽柔历史结局(最终郁郁而终)

    接下来我们就一起去了解一下吧!宋徽柔历史结局历史上的徽柔也有一段非常坎坷的感情之路,而她也因此付出了惨痛的代价,最终郁郁而终。赵徽柔是宋仁宗第一个孩子,也是地位尊贵的皇长女,她从出生起待遇就能比拟皇太子,集万千宠爱于一身,赵祯对她有求必应,只要赵徽柔想要的,赵祯都会满足她,可以说赵徽柔是后宫最受宠的一个人,皇后妃嫔都无法超越赵徽柔在赵祯心里的地位,可惜赵徽柔最后还是被宋仁宗嫁给了她不爱的人。

  • 员工年终奖如何交税(给员工发不同的)

    企业外购礼品作为春节福利发给员工,属于外购货物用于集体福利或个人消费。因此企业自产产品用于给员工发福利,与正常的商品销售相同,需要正常缴纳增值税。根据《个人所得税法实施条例》规定,工资、薪金所得,是指个人因任职或者受雇而取得的工资、薪金、奖金、年终加薪、劳动分红、津贴、补贴以及与任职或者受雇有关的其他所得。因此,员工在年会上抽到了现金红包,应当按照“工资、薪金所得”缴纳个税。

  • 锅贴饺子怎样才能不粘锅 锅贴饺子如何不粘锅

    4、步骤:先放少量的油,将锅上火加热到有点冒油烟的样子,加点冷油到出来,然后再把饺子放进去,在放进去的时候一定要轻轻晃动几下锅。

  • 燕云十六州对辽国的重要性(燕云十六州有多重要)

    海上之盟的签订时常为人所诟病,的确,北宋的灭亡与其联金灭辽的政策不无关系,北宋对金辽两国国力的误判也导致了一系列战略失误。而枢密院执政邓洵武更是直言,辽国国力已然衰弱,一旦金人吞辽做大,那么北宋边防岂不是更加危急。而另一方面,“收复燕云十六州”这一故愿同样是诱因之一。燕云十六州所在,大致包括北京、天津海河以北地区以及河北北部、山西北部的部分地区。

  • 养鱼有什么风水说法(养鱼的风水说法解说)

    养鱼有什么风水说法风水上认为,锦鲤就是一种好的风水鱼种,又风为红白锦、三色锦、丹顶、黄金、乌鲤、金银鳞等几个品类。其中,丹顶最受欢迎,其头顶正中有一红色圆斑,是官运亨通的标志,有鸿运当头的美称。锦鲤长寿,均龄在七十岁左右,是一种长寿鱼。因而将锦鲤饲养在家中可使家运蓬勃发展。另外,红色在五行中属火,水货不相容,因而不宜养红色的鱼。