C# 求俩个正整数的最小公倍数和最大公约数
C# 求俩个正整数的最小公倍数和最大公约数
1.公倍数、最小公倍数
两个或多个整数公有的倍数叫做它们的公倍数,其中除0以外最小的一个公倍数就叫做这几个整数的最小公倍数
翻开小学5年级下册PPT
1.1介绍
常用办法
1、列举法
例如:求6和8的最小公倍数。
6的倍数有:6,12,18,24,30,36,42,48,……
8的倍数有:8,16,24,32,40,48,……
6和8的公倍数:24,48,……其中24是6和8的最小公倍数。
这种方法是先分别写出各自的倍数,再找出它们的公倍数,然后在公倍数里找出它们的最小公倍数。
2、分解质因数法。
我们也可以利用分解质因数的方法,比较简便地求出两个数的最小公倍数。
例如:求60和42的最小公倍数。
60=2×2×3×5 42=2×3×7
60和42的最小公倍数=2×3×2×5×7=420 。
这种方法是把60和42分别质因数后,观察相同的质因数只取一个(如2,3),把各自独有的质因数全部乘进去,所得的积就是这两个数的最小公倍数。
3、短除法。
用短除法求18和24的最小公倍数。
2 18 24 …………先同时除以公因数2
3 9 12 …………再同时除以公因数3
3 4 ……除到两个商只有公因数1为止。
把所有的除数和最后的两个商连乘,得到:18和24的最小公倍数是2×3×3×4=72,可表示为[18,24]=2×3×3×4=72。
用短除法求两个数的最小公倍数,一般都用这两个数除以它们的公因数,一直除到所得的两个商只有公因数1为止。把所有的除数和最后的两个商连乘起来,就得到这两个数的最小公倍数。
2.公约数、最大公约数
2.1介绍
公约数,亦称“公因数”。它是一个能被若干个整数同时均整除的整数。如果一个整数同时是几个整数的约数,称这个整数为它们的“公约数”;公约数中最大的称为最大公约数。
翻开小学5年级下册PPT 约数和公约数,最大公约数
2.2 最小公倍数和最大公约数关系
两个数的乘积等于这两个数的最大公约数与最小公倍数的乘积。
3.C#代码实现
代码:
class Program
{
static void Main(string[] args)
{
int n = GetMinimumCommonMultiple(, );
System.Console.WriteLine("3,5最小公倍数为:" + n.ToString());
n = GetMinimumCommonMultiple(, );
System.Console.WriteLine("2,4最小公倍数为:" + n.ToString()); int numb = GetGreatestCommonDivisor(, );
System.Console.WriteLine("4,8最大公约数为:" + numb.ToString());
numb = GetGreatestCommonDivisor(, );
System.Console.WriteLine("3,15最大公约数为:" + numb.ToString()); System.Console.Read();
} /// <summary>
/// //最大公约数
/// </summary>
static int GetGreatestCommonDivisor(int a, int b)
{
if (a < b)
{
a = a + b;
b = a - b;
a = a - b;
}
return (a % b == ) ? b : GetGreatestCommonDivisor(a % b, b);
} /// <summary>
/// //最小公倍数
/// </summary>
static int GetMinimumCommonMultiple(int a, int b)
{
return a * b / GetGreatestCommonDivisor(a, b);
}
}
4.程序测试
C# 求俩个正整数的最小公倍数和最大公约数的更多相关文章
- Python实现利用最大公约数求三个正整数的最小公倍数示例
Python实现利用最大公约数求三个正整数的最小公倍数示例 本文实例讲述了Python实现利用最大公约数求三个正整数的最小公倍数.分享给大家供大家参考,具体如下: 在求解两个数的小公倍数的方法时,假设 ...
- 山东理工大学ACM平台题答案关于C语言 1181 C语言实验——最小公倍数和最大公约数
C语言实验——最小公倍数和最大公约数 Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 从键盘输入两个正整数,求这两个正整数的最小公 ...
- 求出全部的正整数对 使他们最大公约数为n,最小公倍数为m
题目大概是这种:cid=1021&pid=5http://" target="_blank">点击打开链接 大意就是 求出全部的正整数对 使他们最大公约数为 ...
- c语言求平面上2个坐标点的直线距离、求俩坐标直线距离作为半径的圆的面积、递归、菲波那次数列、explode
#include <stdio.h> #include <math.h> #include <string.h> char explode( char * str ...
- 算法 - 求两个自然数的最小公倍数(C++)
//************************************************************************************************** ...
- 华为oj之求int型正整数在内存中存储时1的个数
题目: 求int型正整数在内存中存储时1的个数 热度指数:4427 时间限制:1秒 空间限制:32768K 题目描述 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数. 输入描述: ...
- Vijos P1131 最小公倍数和最大公约数问题【暴力】
最小公倍数和最大公约数问题 描述 输入二个正整数x0,y0(2≤x0≤100000,2≤y0≤1000000),求出满足下列条件的P.Q的个数. 条件:1.P.Q是正整数 2.要求P.Q以xO为最大公 ...
- codewars--js--Two Joggers--求最小公倍数、最大公约数
问题描述: Two Joggers Description Bob and Charles are meeting for their weekly jogging tour. They both s ...
- C语言复习---获取最小公倍数(公式法:两个数相乘等于最小公倍数乘以最大公约数)
公式法:两个数相乘等于最小公倍数乘以最大公约数 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib ...
随机推荐
- JS膏集01
JS膏集01 1.动态页面: 向服务器发送请求,服务器那边没有页面,动态生成后,返回给客户端 由html/css/js组成. js还不是面向对象的语言,是基于对象的语言.js中没有类的概念,js的继承 ...
- poj1064 Cable master(二分查找,精度)
https://vjudge.net/problem/POJ-1064 二分就相当于不停地折半试. C++AC,G++WA不知为何,有人说C函数ans那里爆int了,改了之后也没什么用. #inclu ...
- 处理程序“AllowAccessJavaScripts”在其模块列表中有一个错误模块“ManagedPipelineHandler”
处理程序“AllowAccessJavaScripts”在其模块列表中有一个错误模块“ManagedPipelineHandler” 执行命令"cd C:\Windows\Microsoft ...
- Gcode命令【转】
https://www.jianshu.com/p/f8a328457a45 简述 研究过3D打印机的朋友,都会用到G-code文件.要使用3D打印机打印东西要经过几个步骤: 1.创建3 ...
- linux 命令之 dmidecode
Dmidecode 这款软件同意你在 Linux 系统下获取有关硬件方面的信息.Dmidecode 遵循 SMBIOS/DMI 标准.其输出的信息包含 BIOS.系统.主板.处理器.内存.缓存等等. ...
- PowerShell 显示气球提示框 2
https://www.itninja.com/blog/view/reboot-required-toast-notifications-for-windows-machines [void][Sy ...
- ABC卡
如今在银行,P2P等各种贷款业务机构,普遍使用信用评分,对客户实行打分制,以期对客户有一个优质与否的评判.但是不是所有人都知道信用评分卡还分A,B,C卡三类!所以,如果你只知道ABC是Gary的ABC ...
- jmeter 执行python脚本
jmeter 可以通过Jython 执:行python代码 1.下载Jython jar包:http://www.jython.org/downloads.html 2.把下载的Jython 的jar ...
- CentOS 6.5 x64下安装宝塔面板、阿里安骑士
一.安装宝塔: CentOS下命令(https://www.bt.cn/bbs/thread-1186-1-1.html) yum install -y wget && wget -O ...
- maven project 报错解决方法
1 maven 在添加包后出错,project 处有红线的解决办法 Maven默认会使用本地缓存的库来编译工程,对于上次下载失败的库,maven会在~/.m2/repository/<group ...