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# 求俩个正整数的最小公倍数和最大公约数的更多相关文章

  1. Python实现利用最大公约数求三个正整数的最小公倍数示例

    Python实现利用最大公约数求三个正整数的最小公倍数示例 本文实例讲述了Python实现利用最大公约数求三个正整数的最小公倍数.分享给大家供大家参考,具体如下: 在求解两个数的小公倍数的方法时,假设 ...

  2. 山东理工大学ACM平台题答案关于C语言 1181 C语言实验——最小公倍数和最大公约数

    C语言实验——最小公倍数和最大公约数 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 从键盘输入两个正整数,求这两个正整数的最小公 ...

  3. 求出全部的正整数对 使他们最大公约数为n,最小公倍数为m

    题目大概是这种:cid=1021&pid=5http://" target="_blank">点击打开链接 大意就是 求出全部的正整数对 使他们最大公约数为 ...

  4. c语言求平面上2个坐标点的直线距离、求俩坐标直线距离作为半径的圆的面积、递归、菲波那次数列、explode

    #include <stdio.h> #include <math.h> #include <string.h> char explode( char * str ...

  5. 算法 - 求两个自然数的最小公倍数(C++)

    //************************************************************************************************** ...

  6. 华为oj之求int型正整数在内存中存储时1的个数

    题目: 求int型正整数在内存中存储时1的个数 热度指数:4427 时间限制:1秒 空间限制:32768K 题目描述 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数. 输入描述: ...

  7. Vijos P1131 最小公倍数和最大公约数问题【暴力】

    最小公倍数和最大公约数问题 描述 输入二个正整数x0,y0(2≤x0≤100000,2≤y0≤1000000),求出满足下列条件的P.Q的个数. 条件:1.P.Q是正整数 2.要求P.Q以xO为最大公 ...

  8. codewars--js--Two Joggers--求最小公倍数、最大公约数

    问题描述: Two Joggers Description Bob and Charles are meeting for their weekly jogging tour. They both s ...

  9. C语言复习---获取最小公倍数(公式法:两个数相乘等于最小公倍数乘以最大公约数)

    公式法:两个数相乘等于最小公倍数乘以最大公约数 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib ...

随机推荐

  1. HTML常用标签1

    1 html html:超文本标记(标签)语言 通过标签语言来标记要显示的网页中的各个部分.一套规则,浏览器认识的规则 浏览器渲染的顺序:从上到下,从左到右 对于不同的浏览器,对同一标签可能会有不完全 ...

  2. JDBC(12)—DBUtils工具类

    DBUtils:commons-dbutils是Apache组织提供的一个开源JDBC工具库,它是对JDBC的简单封装,并且使用dbutils会极大的简化jdbc编码的工作量,同时不会影响到程序的性能 ...

  3. C#异步Task编程模型实战手册

    一.课程介绍 本次分享课程属于<C#高级编程实战技能开发宝典课程系列>中的第一部分,阿笨后续会计划将实际项目中的一些比较实用的关于C#高级编程的技巧分享出来给大家进行学习,不断的收集.整理 ...

  4. 通过脚本调用MSBuild编译项目时指定Configuration(解決方案配置)和Platform(解決方案平台),Rebuid(重新生成解决方案),Clean(清理解决方案)

    为了方便打包测试,自己PowerShell写了一个编译和发布的脚本,调用msbuild通过命令行来编译当前解决方案 后来发现一个问题,用VS编译解决方案,我通过 项目属性-Build设置 Releas ...

  5. Java数据结构和算法(五)——队列

    队列.queue,就是现实生活中的排队. 1.简单队列: public class Queqe { private int array[]; private int front; private in ...

  6. 【Google设计冲刺】一种适合于创新小组的协作方式

    传统的产品闭环是1.产品策划-2.研发-3.上线-4.等待市场反馈,4个步骤.对于一个创新项目来说,试错成本过高,等待周期过长[注释1].那么,有没有一种适合创新项目的协作方式呢?谷歌风投杰克·纳普发 ...

  7. [Python设计模式] 第12章 基金理财更省事——外观模式

    github地址:https://github.com/cheesezh/python_design_patterns 题目1 用程序模拟股民直接炒股的代码,比如股民投资了股票1,股票2,股票3,国债 ...

  8. html5使用canvas实现毫秒级画心电图

  9. Unable to find vcvarsall.bat

    windows下pip安装各种包时,经常会遇到此错误.本文介绍解决方案. 第一步:安装visual studio 第二步:安装everything 打开everything,搜索vcvarsall.b ...

  10. BOOST 线程完全攻略

    1 创建线程 首先看看boost::thread的构造函数吧,boost::thread有两个构造函数: (1)thread():构造一个表示当前执行线程的线程对象: (2)explicit thre ...