搜题
网友您好,请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
提问人:网友mfqing 发布时间:2022-01-07
[主观题]

编写程序求正整数a和b的最大公约数(GCD)。 (提示: a与b的最大公约数是指两个数a、b的公因数中最 大的那一个。欧几里德(Euclid)算法是求解两个正整数最 大公约数的一种有效方法,又称辗转相除法。设GCD(a,b) 表示a与b的最大公约数,辗转相除法的基本原理可描述如下: 若b是0,则最大公约数是a中的值;否则计算a除以b的余数 r,把b保存到a中,并把余数r保存到b中,重复上述过程,

简答题官方参考答案 (由简答题聘请的专业题库老师提供的解答)
  抱歉!暂无答案,正在努力更新中……
更多“编写程序求正整数a和b的最大公约数(GCD)。 (提示: a与b的最大公约数是指两个数a、b的公因数中最 大的那一个。欧几里德(Euclid)算法是求解两个正整数最 大公约数的一种有效方法,又称辗转相…”相关的问题
第1题
两个正整数的最大公约数(Greatest Common Divisor,GCD) 是能够整除这两个整数的最大整数,请分别采用如下3种方法编写计算最大公约数的函数Ged(),在主函数中调用该函数计算并输出从键盘任意输入的两整数的最大公约数。

(1)穷举法 ,由于a阳的最大公约数不可能比a和b中的较小者还大,否则一定不能整除它,因此,先找到,a和b中中的较小者t,然后从t开始逐次减I尝试每种可能.即检验t到I之间的所有整数,第一个满足公约数条件的t就是和b的最大公约数。

(2)欧几里得算法,也称辗转相除法、对正整数a和b,连续进行求余运算,直到余数为0为止.此时非0的除数就是最大公约数。设r=a mod b表示a除以上的余数,若r≠0将b作为新的a,r作为新的b,即Ged(a,b)=Ged(b,r),重复a mod b运算,直到r=0为止,此时b为所求的最大公约数。例如,50和15的最大公约数的求解过程可表示为:Ged(50,15)=Ged(15,5)=Ged(5,0) =5。

(3)递归方法。对正整数a和b,当a>b时,若a中含有与b相同的公约数,则a中去掉b后剩余的部分a-b中也应含有与b相同的公约数,对a-b和b计算公约数就相当于对a和b计算公约数。反复使用最大公约数的如下3条性质,直到a和b相等为止,这时,a或b就是它们的最大公约数。

性质1如果a>b, 则a和b与a-b和b的最大公约数相同, 即Ged(a,b)=Ged(a-b,b)

性质2如果b>a, 则a和b与a和b-a的最大公约数相同, 即Ced(a,b)=Ged(a,b-a)

性质3如果a=b, 则a和b的最大公约数与a值和b值相同, 即Ged(a,b)=a=b

点击查看答案
第2题
设有集合A={1,2,…,10},对任意a,b∈A,验证下列运算中关于集合A的封闭性.

(1)a*b=max(a,b)

(2)a*b=min(a,b);

(3)(a*b=Lcm(a,b),a,b的最小公倍数;

(4)a*b=Gcd(a,b)),a,b的最大公约数.

点击查看答案
第3题
集合A={1,2,3,…,10},下面定义的哪种运算关于集合A是不封闭的?

A、x*y=max{x,y}

B、x*y=min{x,y}

C、x*y=GCD(x,y),即x,y的最大公约数

D、x*y=LCM(x,y),即x,y的最小公倍数

点击查看答案
第4题
设A=F,B={F,{F}},则B-A是()。
A.{{F}}

B.{F}

C.{F,{F}}

D.F

点击查看答案
第5题
采用循环程序设计,在屏幕中央输出以下图形。 A ABA ABCBA ABCDCBA ABCDEDCBA ABCDEFEDCBA ABCDEDCBA ABCDCBA ABCBA ABA A
点击查看答案
第6题
分析程序运行结果 #include <stdio.h> void fun(int a) { a++; printf("a=%d\n",a); } int main() { int a=10,i; for (i=1;i<=3;i++) fun(a);>
点击查看答案
第7题
分析各局部变量的作用域,写出下面程序的运行结果。 #include <stdio.h> void fun(int a,int b); int main() { int a=1,b=2; fun(a,b); //(1) if (b>1) { int a=5; //(2) printf("a=%d,b=%d\n",a,b); //(3) } printf("a=%d,b=%d\n",a,b); return 0; } void fun(int a,int b) { a=3; //(4) printf("a=%d,b=%d\n",a,b); //(5) b=3; //(6) }
点击查看答案
第8题
利用公式sin(x)=[图]设计函数double sin(double x)计...

利用公式sin(x)=设计函数double sin(double x)计算sin(x)的值(精度要求最后一项的绝对值小于),并编写main函数进行测试。

点击查看答案
第9题
利用公式[图],设计相关函数求m个元素中取m个组合数,并...

利用公式,设计相关函数求m个元素中取m个组合数,并编写main函数进行测试

点击查看答案
第10题
设计一个函数area,求圆的面积。函数的形参与返回类型分别是什么?
点击查看答案
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示:请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注简答题 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反简答题购买须知被冻结。您可在“简答题”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注简答题 -
请用微信扫码测试
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

简答题
下载APP
关注公众号
TOP