PAT - 基础 - 最大公约数和最小公倍数
题目:
本题要求两个给定正整数的最大公约数和最小公倍数。
输入格式:
输入在一行中给出2个正整数M和N(<=1000)。
输出格式:
在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1空格分隔。
输入样例:
511 292
输出样例:
73 2044
两种方法
1、辗转相除法求最大公约数
流程如下:算法
#include<stdio.h>
#include<stdlib.h> int main()
{
int M,N;
scanf("%d%d",&M,&N); int ji=M*N;
int shang=M/N;
int yushu=M%N; while(yushu!=0) //辗转相除法
{
M=N;
N=yushu;
yushu=M%N;
}
printf("%d %d\n",N,ji/N);
system("pause");
return 0;
}
2 更相减损法
流程如下:

代码:
#include<stdio.h>
#include<stdlib.h> int main()
{
int M=0,N=0;
int temp=0;
int k=0;
scanf("%d%d",&M,&N);
if(M < N)
{
temp = M;
M = N;
N = temp;
} temp = M *N; // 更相减损术
while(M != N)
{
k= M-N;
if(k > N)
{
M = k;
}
else
{
M = N;
N = k;
}
} temp = temp / M; printf("%d%s%d",M," ", temp);
system("pause");
}
PAT - 基础 - 最大公约数和最小公倍数的更多相关文章
- JAVA 基础编程练习题6 【程序 6 求最大公约数及最小公倍数】
6 [程序 6 求最大公约数及最小公倍数] 题目:输入两个正整数 m 和 n,求其最大公约数和最小公倍数. 程序分析:利用辗除法. package cskaoyan; public class csk ...
- 求N个数的最大公约数和最小公倍数(转)
除了分解质因数,还有另一种适用于求几个较小数的最大公约数.最小公倍数的方法 下面是数学证明及算法实现 令[a1,a2,..,an] 表示a1,a2,..,an的最小公倍数,(a1,a2,..,an)表 ...
- 求m和n的最大公约数和最小公倍数
题目:输入两个正整数m和n,求其最大公约数和最小公倍数. 做这道题时,特意去查看了一下什么是最大公约数和最小公倍数. 后来直接去看了求解的思想,相信到企业中不会要求你闭门造车,若已有先例,可以研究之后 ...
- c语言求最大公约数和最小公倍数(转)
最大公约数与最小公倍数的求解是很多初学C的人所面临的一道问题.当然这道问题并不难解答,也有很多人已经写过相关的博客,我在此书写此篇博客,一是为了让自己能够夯实基础,另外就是希望能够帮到和我一样的初学者 ...
- [洛谷P1029]最大公约数与最小公倍数问题 题解(辗转相除法求GCD)
[洛谷P1029]最大公约数与最小公倍数问题 Description 输入二个正整数x0,y0(2<=x0<100000,2<=y0<=1000000),求出满足下列条件的P, ...
- Java程序设计之最大公约数和最小公倍数
题目:输入两个正整数number1和number2,求其最大公约数和最小公倍数. 算法:较大数和较小数取余,较小数除余数,一直到余数为0时,为最大公约数(辗转相除法):最大公倍数numbe1*numb ...
- 辗转相除法求最大公约数和最小公倍数【gcd】
要求最小公倍数可先求出最大公约数 设要求两个数a,b的最大公约数 伪代码: int yushu,a,b: while(b不等于0) { yushu=a对b求余 b的值赋给a yushu的值赋给b } ...
- c 求两个整数的最大公约数和最小公倍数
//求最大公约数是用辗转相除法,最小公倍数是根据公式 m,n 的 最大公约数* m,n最小公倍数 = m*n 来计算 #include<stdio.h> //将两个整数升序排列 void ...
- c语言求最大公约数和最小公倍数
求最大公约数和最小公倍数 假设有两个数a和b,求a,b的最大公约数和最小公倍数实际上是一个问题,得出这两个数的最大公约数就可以算出它们的最小公倍数. 最小公倍数的公式是 a*b/m m为最大公约数 因 ...
随机推荐
- 三大跨平台网盘--google driver
背景介绍 Google Drive,美国谷歌公司于2012年4月24日正式推出的一项云存储服务,可以向用户提供5GB的免费存储空间,同时还可以付费扩容. 准备工作 google帐号--帐号注册 软件- ...
- Uncode-Schedule首页、文档和下载 - 分布式任务调度组件 - 开源中国社区
Uncode-Schedule首页.文档和下载 - 分布式任务调度组件 - 开源中国社区 分布式任务调度组件 Uncode-Schedule
- UILabel,文字添加下划线,中划线
//显示下划线 //中划线 // NSDictionary *attribtDic = @{NSStrikethroughStyleAttributeName: [NSNumber nu ...
- angularjs post 跨域
web api搞好了:用Ajax妥妥的:但是前端用的AngulagJS,也懒得再换为Ajax了: 但是问题来了:提示: 已拦截跨源请求:同源策略禁止读取位于 http://x.x.x.x:port/a ...
- ASP.NET常用导出Excel方法汇总
本文转载:http://mattberseth.com/blog/2007/04/export_gridview_to_excel_1.html http://geekswithblogs.net/a ...
- WinForm中关于控件焦点的问题
方法一: 在打开一个窗体时,我们往往需要设置焦点让光标出现在我们希望它出现的位置上. 这时我们可以在窗体的Activated事件中设置焦点 例如我们希望光标在打开窗体的时候出现在textBox1上,我 ...
- Android 开发中 iBeacon的使用
iBeacon的工作原理是基于Bluetooth Low Energy(BLE)低功耗蓝牙传输技术,iBeacon基站不断向四周发送蓝牙信号,当智能设备进入设定区域时,就能够收到信号.只要满足iBea ...
- linux lsof命令详解
linux lsof命令详解 简介 lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访 ...
- Java基础知识强化之集合框架笔记26:LinkedList的特有功能
1. LinkedList的特有功能: (1)添加功能 public void addFirst(Object e) public void addLast(Object e) ( ...
- Bginfo软件在域的部署和应用
在企业的IT管理中,很多用户都不知道怎么去查看自己计算机的IP地址.登陆帐户.而对于网络管理人员来说,他们可能需要知道用户在域中登录的一些信息,如那些用户登录过,在什么时间登录,IP和MAC地址是多少 ...
算法