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

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

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

问题描述求任意两个正整数的最大公约数。公约数中最大的一个公约数,称为这几个自然数的最大公约数。要求任意两个正整数的最大公约数即求出一个不大于其中两者中的任何一个,但又能同时整除两个整数的最大自然数。两个数的最大公约数有可能是其中的小数,所以在按从大到小顺序找寻最大公约数时,循环变量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

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

【值得关注】我~

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

    推荐阅读
  • 苹果电脑怎么删除文件(苹果Mac笔记本怎么快速删除文件?)

    以下内容希望对你有帮助!苹果电脑怎么删除文件第一个方法我们选择使用快捷键,我们单击选中要删除的文件,然后同时按下command+delete就可以将文件删除到废纸篓中。我们选择,也可以直接在废纸篓上单击,可以查看刚才删除的文件。右上角的按钮,弹出的对话框中选择,可以将废纸篓中的文件全部删除。

  • 郭德纲怼周立波说的啥(郭德纲与周立波恩怨)

    女方父母强烈反对这门亲事,一次在争执中,周立波打伤张洁父亲,因故意伤人罪被判刑,被迫离开舞台。2016年7月8日,周立波把“海派清口”演出带到美国纽约卡内基音乐厅,成为首位在该音乐厅中表演非音乐艺术的中国演员。现如今,恩怨依旧,但双方的境遇却发生了天差地别的变化。为此,包括在内的20万网友迅速组成了一个庞大的倒周团和周立波开始了一场口水大战。事后,周立波流失了20万粉丝的关注。

  • 怎样做鲈鱼炖山药(鲈鱼炖山药做法)

    鲈鱼炖山药做法鲈鱼炖山药的用料:鲈鱼、山药、香菜、葱、姜、生抽、盐、料酒适量鲈鱼洗干净,身上切斜纹,两面各三刀葱姜切好备用,鱼肚放几片葱段锅中倒入油,大火至油热,于油中央放置一片姜片(目的放鱼后防止最低处接触锅的地。

  • 多肉植物怎么浇水(多肉植物浇水方法)

    多肉植物怎么浇水对于刚栽培的小多肉,它的根系也没有生长完整,栽培土中也会有一定的水分,因此不用浇太多的水。通常,只要将土壤表面浇湿就行,无需给它浇透。而对于根系生长完整的多肉来讲,是需要我们给它浇透水,如果长期浇水到一半的时候停止,对它生长也十分不利。下雨时本身空气就非常湿润,土壤里的水分蒸发不了,可以雨停一段时间之后再进行补水,不然水分蒸发不掉,就容易烂根。

  • 论语士不可不弘毅任重道远(论语君子上达小人下达)

    孔子认为,陈成子弑君不合于“礼”,不合于“义”,于是便上朝请求鲁哀公发义兵讨伐陈成子,以维护好礼义。还特意先沐浴更衣前往,但是鲁哀公却让孔子去找仲孙、叔孙、李孙。孔子告诉他,不要欺骗君主就好,但是要懂得直言相告。

  • 水溶性肥料的合理施用方法(水溶性肥料的合理施用方法有哪些)

    对养分的合理比例和浓度有更高要求。安全施用防止肥料烧伤叶片和根系,特别是喷灌和微喷灌施肥,容易出现烧叶现象。淋施浇施时同样要防止浓度过大烧根烧苗。有些种植户一方水加入70公斤水溶肥料淋菠萝,造成根系死亡,发黑。生产中最保险的办法就是用少量肥做试验,发现对叶片有伤害时降低浓度应用。对一些大的种植户购买手持电导率仪来监测肥料浓度是一种可行的办法。

  • 知了怎么清洗干净(知了猴怎么清洗更干净)

    1、倒入沸水中煮死,去四肢将活得知了下沸水烫死,捞出去掉四肢。

  • 手机qq音乐怎么改密码(手机qq音乐怎么改密码登录)

    以华为手机为例,手机qq音乐改密码的方法如下:1、首先打开手机设置;2、找到隐私限制,找到应用程序,再找到QQ音乐;3、在QQ音乐把手势密码打开,进行修改即可。QQ音乐是腾讯音乐娱乐集团推出的网络音乐平台,是中国最大的网络音乐平台之一。

  • 无锡谣言最新事件(无锡人的朋友圈被这条信息刷屏了)

    无锡谣言最新事件昨天早上,无锡交通广播收到一条求助信息:江阴北国医院的陶正锋医生突发溃疡性肠炎,病情危急,正在无锡市人民医院急救,需大量A型血。目前,陶医生仍在无锡市人民医院重症监护室治疗中,病情暂时稳定,但还没脱离危险期。二月底及三月初,我市即将启动乡镇和部队的团体献血,届时我市血液情况会逐步恢复正常。

  • 清平乐中徽柔结局(清平乐中徽柔结局简述)

    清平乐中徽柔结局《清平乐》赵徽柔结局很是悲惨,因为要尊重历史,徽柔在和怀吉被迫分开的第8年,夫家也并不待见她,加上心里一直很是思念怀吉,最后郁郁而终了。这只是为了报答李兰惠的恩情,但是徽柔一直都心有所属,她喜欢的是和自己一同长大的内侍怀吉。