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

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

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

【值得关注】我~

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

    推荐阅读
  • 飞猪店铺入驻申请(飞猪上线全新店铺体系)

    半年内上线12场“飞猪超级品牌日”,精准触达用户累计超1亿,多个参与商家单日成交额超越双11。飞猪会员体系与25家全球旅行品牌达成长期合作,半年内为商家店铺增粉超400万。商家从飞猪收获的不仅仅是订单,优质用户的积累开始显现巨大价值。目前,万豪、首旅如家、澳门金沙、长隆、中青旅、众信国旅等商家已率先认领飞猪新店铺,预计将在双11前后上线。今年天猫双11期间,新店铺体系也将对飞猪平台上所有商家全面开放认领。

  • 冬天旅游哪里好国内(冬季适合去哪里旅游)

    昼夜温差很大,在此地徒步,需要备齐完整的徒步装备和服装,白天速干衣或者T恤,晚上加冲锋衣或抓绒衣。气罐可以在布尔津购买。喀纳斯湖边的森林都是原始森林,情况复杂,有时遇到起雾或下大雪,即使是当地牧民也会迷失方向。徒步路线上野生动物很少,最好不要远离徒步路线。石卡雪山冬季的云南,以香格里拉为核心的雪山王国风光最为迷人。

  • 谭木匠最好看的梳子(谭木匠是假爱心企业)

    规定要求,如果企业用人中,残障员工的比例达不到规定要求,则需要按照比例缴纳相应的残保金。该退款占公司净利润的近20%。2009年,谭木匠在港股上市,上市当天企业创始人成功达到2亿身家。谭木匠也是全球唯一一家只靠做梳子上市的企业。由此也造成了谭木匠在线下业务的失利。未来线上业务也会是谭木匠的发展重点。所以目前谭木匠开始由传统消费品转向工艺品、收藏品发展。

  • 肉苁蓉一个月能吃几次 吃肉苁蓉一个月就可以见效吗

    因为每个人的体质以及疾病严重程度都有所不同,所以对于肉苁蓉一个月能吃几次需要根据具体情况而定,而且肉苁蓉属于一种中药材,需要对症才能服用。吃肉苁蓉几天身体有反应因人而异。而且肉苁蓉每次用来服用的量也比较小,所能起到的作用也有限,建议患者最好是坚持饮用,这样服用一段时间后才能对疾病起到一定的改善作用。

  • 瓷砖上铁锈怎么去除(发现瓷砖上的铁锈去不掉怎么办)

    而除开白醋,其实用草酸也是可以清除的,而且这种方法去铁锈的能力会更加好,但由于酸性比较强,所以也容易出现损伤瓷砖,所以家里还是尽量不要摆放容易生锈的东西,如果有,最好找东西垫一下,这样才能确保家里更加美观干净!

  • 北京颐和园荷花最佳观赏期是什么时候?

    荷花大约的花期在6-9月份左右,但开花时间并不是固定的,可能会根据当年的气候有所改变,颐和园荷花今年预计6月20日前后开,想要去游玩的小伙伴可以安排啦。

  • 白手起家成为亿万富翁的秘诀(一个人白手起家成千万富翁的难度有多大)

    考虑后就做出这样的一个想法:想试试卖些快消品,因为当时又是夏天,首先就想到西瓜、哈密瓜,最终决定以哈密瓜来练手。如果超市的哈密瓜又贵又不新鲜,还不如跟小贩买。这个时候超市负责人不信就对了,就跟他讲合作原因:1、五百个哈密瓜你提供,其它成本我出。牙刷直接阿里巴巴进货,300只以上就是4毛钱,一人的营销成本是1.6元。

  • 广州海珠1000万元消费券领取入口 如何领取珠海消费券

    消费券领取和使用时间:领取时间:2022年7月22日——8月20日每天上午11:00使用时间:领取后7天有效,超过有效期客户未核销的优惠券将视为放弃使用,逾期未使用不再补发。市民可通过抢券形式获得消费券,以先到先得和抢完即止的原则派发。活动期间每种消费券同一用户最多领取一次。

  • 是的英语怎么读(是的英语如何读)

    下面内容希望能帮助到你,我们来一起看看吧!是的英语怎么读是-翻译yes英[jes]美[jes]词典:are;am;yes;is;right。

  • 华为matepadpro11值得买吗(缺货状态下依旧销量第一)

    但近日某东发布的10月平板电脑销量排行榜中,华为MatePad11勇夺第一,在全球市场上华为平板销量更是一度冲到了第二。今年8月,华为这款平板电脑就已经凭借8.1万台的销量成为某东的top1热销平板品牌,而在苹果推出性价比炸场的iPad11Pro之后,华为MatePad11依然稳坐销冠,更是说明了其超高性价比。华为平板能够做起来,根本原因还是品牌的号召力、华为的产品力以及优秀的体验。