博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# 求俩个正整数的最小公倍数和最大公约数
阅读量:5054 次
发布时间:2019-06-12

本文共 2137 字,大约阅读时间需要 7 分钟。

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#代码实现

代码:

1     class Program 2     { 3         static void Main(string[] args) 4         { 5             int n = GetMinimumCommonMultiple(3, 5); 6             System.Console.WriteLine("3,5最小公倍数为:" + n.ToString()); 7             n = GetMinimumCommonMultiple(2, 4); 8             System.Console.WriteLine("2,4最小公倍数为:" + n.ToString()); 9 10 11             int numb = GetGreatestCommonDivisor(4, 8);12             System.Console.WriteLine("4,8最大公约数为:" + numb.ToString());13             numb = GetGreatestCommonDivisor(3, 15);14             System.Console.WriteLine("3,15最大公约数为:" + numb.ToString());15 16 17 18             System.Console.Read();19         }20 21 22         /// 23         /// //最大公约数 24         /// 25         static int GetGreatestCommonDivisor(int a, int b)26         {27             if (a < b)28             {29                 a = a + b;30                 b = a - b;31                 a = a - b;32             }33             return (a % b == 0) ? b : GetGreatestCommonDivisor(a % b, b);34         }35 36         /// 37         /// //最小公倍数 38         /// 39         static int GetMinimumCommonMultiple(int a, int b)40         {41             return a * b / GetGreatestCommonDivisor(a, b);42         }43     }

4.程序测试

 

转载于:https://www.cnblogs.com/JiYF/p/10138422.html

你可能感兴趣的文章
WinForm/Silverlight多线程编程中如何更新UI控件的值
查看>>
ListView 加载数据时 触摸报错
查看>>
【Codeforces Round #430 (Div. 2) A C D三个题】
查看>>
LightOJ 1013 - Love Calculator LCS
查看>>
秒杀 ILSpy 等反编译利器 DotNet Resolver
查看>>
Linux常用命令学习随笔
查看>>
VCSA服务重启命令
查看>>
傅里叶变换
查看>>
爬虫-request以及beautisoup模块笔记
查看>>
jQuery遍历
查看>>
SharePoint2010文档归档策略(2)-从放置库转移到自己定义的文档库
查看>>
小白_Unity引擎_添加Tag和比较Tag
查看>>
c语言基本常识1(知识点)
查看>>
20145315《网络对抗》——免考项目:逆向脱壳
查看>>
不做都市“悲催族”,像“洗碗哥”一样奋斗
查看>>
( 转载)改变人类历史的17大数学方程
查看>>
EF Code First 和 ASP.NET MVC3 工具更新
查看>>
python基础面试
查看>>
C语言学习及应用笔记之二:C语言static关键字及其使用
查看>>
C#轻量级高性能日志组件EasyLogger
查看>>