C++ 实现多数的最大公约数的实例
C++ 实现多数的最大公约数的实例
题目:求最大公约数
输入一组正整数(数量小于20),输出其最大公约数。
输入:121 33 44 11 1111
输出:11
基本思路:
从第一个数开始,和第二个数比较找它两的最大公约数,然后找出的最大公约数和第三个数比较,依次类推。。。
#include <stdio.h> int gcd(int a,int b) { return a%b?gcd(b,a%b):b; } int main() { int N,a[20],k,i; while(~scanf("%d",&N)) { for(i=0;i<N;i++) scanf("%d",&a[i]); k=a[0]; for(i=1;i<N;i++) { k=gcd(k,a[i]); } printf("%d\n",k); } return 0; }
测试结果,可能想的不周全,欢迎查漏补缺:
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关推荐
-
C++求四个正整数最大公约数的方法
本文实例讲述了C++求四个正整数最大公约数的方法.分享给大家供大家参考,具体如下: /* * 作 者: 刘同宾 * 完成日期:2012 年 11 月 16 日 * 版 本 号:v1.0 * * 输入描述: 输入四个正整数,输出其最大公约数. * 问题描述: * 程序输出: * 问题分析:略 * 算法设计:略 */ #include<iostream> using namespace std; int f(int,int); int g(int,int,int,int); int main()
-
C++ 实现求最大公约数和最小公倍数
C++ 实现求最大公约数和最小公倍数 最大公约数 辗转相除法: int maxDivisor(int a, int b) { int c = b; while (a%b != 0) { c = a%b; a = b; b = c; } return c; } 辗转相减法: int maxDivisor(int a, int b) { while (a != b) { if (a>b) a = a - b; else b = b - a; } return a; } 感谢阅读,希望能帮助到大家,谢
-
C++ 实现多数的最大公约数的实例
C++ 实现多数的最大公约数的实例 题目:求最大公约数 输入一组正整数(数量小于20),输出其最大公约数. 输入:121 33 44 11 1111 输出:11 基本思路: 从第一个数开始,和第二个数比较找它两的最大公约数,然后找出的最大公约数和第三个数比较,依次类推... #include <stdio.h> int gcd(int a,int b) { return a%b?gcd(b,a%b):b; } int main() { int N,a[20],k,i; while(~scanf
-
js计算最大公约数和最小公倍数代码实例
一.计算最大公约数 1.小学时候一般采用质因数分解法,一般使用短除得到结果,下面用一种最初级的方法求最大公约数 function gcd2(a,b){ var result = 1; for(var i = 1; i <= a && i <= b; i++ ){ if(a%i == 0 && b%i == 0 ){ result = i; } } return result; } 2.使用欧里几德算法,辗转相除法.具体原理自行百度.下面给出两种代码算法 递归 f
-
Python实现求最大公约数及判断素数的方法
本文实例讲述了Python实现求最大公约数及判断素数的方法.分享给大家供大家参考.具体实现方法如下: #!/usr/bin/env python def showMaxFactor(num): count = num / 2 while count > 1: if num % count == 0: print 'largest factor of %d is %d' % (num, count) break #break跳出时会跳出下面的else语句 count -= 1 else: prin
-
Java随机数算法原理与实现方法实例详解
本文实例讲述了Java随机数算法.分享给大家供大家参考,具体如下: 软件实现的算法都是伪随机算法,随机种子一般是系统时间 在数论中,线性同余方程是最基本的同余方程,"线性"表示方程的未知数次数是一次,即形如: ax≡b (mod n)的方程.此方程有解当且仅当 b 能够被 a 与 n 的最大公约数整除(记作 gcd(a,n) | b).这时,如果 x0 是方程的一个解,那么所有的解可以表示为: {x0+kn/d|(k∈z)} 其中 d 是a 与 n 的最大公约数.在模 n 的完全剩余系
-
php计算两个整数的最大公约数常用算法小结
本文实例讲述了php计算两个整数的最大公约数常用算法.分享给大家供大家参考.具体如下: 复制代码 代码如下: <?php //计时,返回秒 function microtime_float () { list( $usec , $sec ) = explode ( " " , microtime ()); return ((float) $usec + (float) $sec ); } /////////////////////////////////
-
PHP编程求最大公约数与最小公倍数的方法示例
本文实例讲述了PHP编程求最大公约数与最小公倍数的方法.分享给大家供大家参考,具体如下: //求最大公约数 function max_divisor($a,$b) { $n = min($a, $b); for($i=$n; $i>1; $i--) { if (is_int($a/$i)&&is_int($b/$i)) { return $i; //此处如果用echo $i;则输出结果为432:故应区分echo.return的区别 } } return 1; } //求最小公倍数 f
-
Python实现利用最大公约数求三个正整数的最小公倍数示例
本文实例讲述了Python实现利用最大公约数求三个正整数的最小公倍数.分享给大家供大家参考,具体如下: 在求解两个数的小公倍数的方法时,假设两个正整数分别为a.b的最小公倍数为d,最大公约数为c.存在这样的关系d=a*b/c.通过这个关系式,我们可以快速的求出三个正整数的最小公倍数. def divisor(a,b): c = a%b while c>0: a=b b=c c=a%b return b x1 = input("input1:") x2 = input("
-
C C++ 算法实例大全
C C++,算法实例 一.数论算法 1.求两数的最大公约数 function gcd(a,b:integer):integer; begin if b=0 then gcd:=a else gcd:=gcd (b,a mod b); end ; 2.求两数的最小公倍数 function lcm(a,b:integer):integer; begin if a<b then swap(a,b); lcm:=a; while lcm mod b>0 do inc(lcm,a); end; 3.
-
java求最大公约数与最小公倍数的方法示例
本文实例讲述了java求最大公约数与最小公倍数的方法.分享给大家供大家参考,具体如下: Gongyueshu.java文件: package math; public class Gongyueshu { public static void main(String[] args) { //从控制台输入两个数据 int m = Integer.parseInt(args[0]); int n = Integer.parseInt(args[1]); int y = 1 ; int b = 1;
随机推荐
- 百度HI QQ和MSN 阿里旺旺贸易通MSN在线客服在线聊天代码
- 破除网页鼠标右键被禁用的绝招大全
- Git发现git push origin master 报错的解决方法
- 浅谈TreeSet中的两种排序方式
- web.py在SAE中的Session问题解决方法(使用mysql存储)
- CKEditor自定义按钮插入服务端图片
- c语言可变参数实现示例
- Android 文件操作详解及简单实例
- PHP使用pcntl_fork实现多进程下载图片的方法
- 初步使用bootstrap快速创建页面
- 详解Vue微信公众号开发踩坑全记录
- javascript 不间断的图片滚动并可点击
- c#中xml文档注释编译dll引用到其它项目示例
- Javascript实现倒计时时差效果
- 详解Android中使用Notification实现进度通知栏(示例三)
- python提取页面内url列表的方法
- 微信小程序实现复选框效果
- Spring boot集成spring session实现session共享的方法
- 利用C语言解决八皇后问题以及解析
- idea mybatis配置log4j打印sql语句的示例