求最小公倍数算法汇总.docx

上传人:b****7 文档编号:26298323 上传时间:2023-06-17 格式:DOCX 页数:9 大小:107.30KB
下载 相关 举报
求最小公倍数算法汇总.docx_第1页
第1页 / 共9页
求最小公倍数算法汇总.docx_第2页
第2页 / 共9页
求最小公倍数算法汇总.docx_第3页
第3页 / 共9页
求最小公倍数算法汇总.docx_第4页
第4页 / 共9页
求最小公倍数算法汇总.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

求最小公倍数算法汇总.docx

《求最小公倍数算法汇总.docx》由会员分享,可在线阅读,更多相关《求最小公倍数算法汇总.docx(9页珍藏版)》请在冰豆网上搜索。

求最小公倍数算法汇总.docx

求最小公倍数算法汇总

求最小公倍数算法汇总

最小公倍数(LeastCommonMultiple,缩写L.C.M.),如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数,对于两个整数来说,指该两数共有倍数中最小的一个。

计算最小公倍数时,通常会借助最大公约数来辅助计算。

其中,4是最小的公倍数,叫做他们的最小公倍数。

例如,十天干和十二地支混合称呼一阴历年,干支循环回归同一名称的所需时间,就是12和10的最小公倍数,即是60──一个“甲子”。

对分数进行加减运算时,要求两数的分母相同才能计算,故需要通分;假如令两个分数的分母通分成最小公倍数,计算量便最低。

 

最小公倍数的求法

 

专题简析

 

计算机程序实现

 

最小公倍数的求法

短除法

  步骤:

  一、找出两数的最小公约数,列短除式,用最小公约数去除这两个数,得二商;

  二、找出二商的最小公约数,用最小公约数去除二商,得新一级二商;

  三、以此类推,直到二商为互质数;

  四、将所有的公约数及最后的二商相乘,所得积就是原二数的最小公倍数。

  例:

求48和42的最小公倍数

  解:

48与42的最小公约数为2

  48/2=24;42/2=21;24与21的最小公约数为3

是90,求这两个数分别是多少?

  分析根据“两个数的最大公因数与最小公倍数的乘积等于这两个数的乘积(这里应该写错了吧?

90/15=6,根据下面的解答应该是这个意思)”可先求出这两个数的乘积,再把这个积分解成两个数。

根据题意:

  当a1b1分别是1和6时,a、b分别为15×1=15,15×6=90;当a1b1分别是2和3时,a、b分别为15×2=30,15×3=45。

所以,这两个数是15和90或者30和45。

  练习一

  1,两个数的最大公因数是9,最小公倍数是90,求这两个数分别是多少?

  2,两个数的最大公因数是12,最小公倍数是60,求这两个数的和是多少?

  3,两个数的最大公因数是60,最小公倍数是720,其中一个数是180,另一个数是多少?

例题2

  两个自然数的积是360,最小公倍数是120,这两个数各是多少?

  分析我们把这两个自然数称为甲数和乙数。

因为甲、乙两数的积一定等于甲、乙两数的最大公因数与最小公倍数的积。

根据这一规律,我们可以求出这两个数的最大公因数是360÷120=3。

又因为(甲÷3=a,乙÷3=b)中,3×a×b=120,a和b一定是互质数,所以,a和b可以是1和40,也可以是5和8。

当a和b是1和40时,所求的数是3×1=3和3×40=120;当a和b是5和8时,所求的数是3×5=15和3×8=24。

  练习二

  1,求36和24的最大公因数和最小公倍数的乘积。

  2,已知两个数的积是3072,最大公因数是16,求这两个数。

  3,已知两个数的最大公因数是13,最小公倍数是78,求这两个数的差。

例题3

  甲、乙、丙三人是朋友,他们每隔不同天数到图书馆去一次。

甲3天去一次,乙4天去一次,丙5天去一次。

有一天,他们三人恰好在图书馆相会,问至少再过多少天他们三人又在图书馆相会?

  分析从第一次三人在图书馆相会到下一次再次相会,相隔的天数应该是3、4、5的最小公倍数。

因为3、4、5的最小公倍数是60,所以至少再过60天他们三人又在图书馆相会。

  练习三

  1,1路、2路和5路车都从东站发车,1路车每隔10分钟发一辆,2路车每隔15分钟发一辆,而5路车每隔20分钟发一辆。

当这三种路线的车同时发车后,至少要过多少分钟又这三种路线的车同时发车?

  2,甲、乙、丙从同一起点出发沿同一方向在圆形跑道上跑步,甲跑一圈用120秒,乙跑一圈用80秒,丙跑一圈用100秒。

问:

再过多少时间三人第二次同时从起点出发?

  3,五年级一班的同学每周一都要去看军属张爷爷,二班的同学每6天去看一次,三班的同学每两周去看一次。

如果“六一”儿童节三个班的同学同一天去看张爷爷,那么,再过多少天他们三个班的同学再次同一天去张爷爷家?

例题4

  一块砖长20厘米,宽12厘米,厚6厘米。

要堆成正方体至少需要这样的砖头多少块?

  分析把若干个长方体叠成正方体,它的棱长应是长方体长、宽、高的公倍数。

现在要求长方体砖块最少,它的棱长应是长方体长、宽、高的最小公倍数,求出正方体棱长后,再根据正方体与长方体体积之间的关系就能求出长方体砖的块数。

  练习四

  1,用长9厘米、宽6厘米、高7厘米的长方体木块叠成一个正方体,至少需要用这样的长方体多少块?

  2,有200块长6厘米、宽4厘米、高3厘米的长方体木块,要把这些木块堆成一个尽可能大的正方体,这个正方体的体积是多少立方厘米?

  3,一个长方体长2.7米、宽1.8分米、高1.5分米,要把它切成大小相等的正方体小块,不许有剩余,这些小正方体的棱长最多是多少分米?

例题5

  甲每秒跑3米,乙每秒跑4米,丙每秒跑2米,三人沿600米的环形跑道从同一地点同时同方向跑步,经过多少时间三人又同时从出发点出发?

  分析甲跑一圈需要600÷3=200秒,乙跑一圈需要600÷4=150秒,丙跑一圈需要600÷2=300秒。

要使三人再次从出发点一齐出发,经过的时间一定是200、150和300的最小公倍数。

200、150和300的最小公倍数是600,所以,经过600秒后三人又同时从出发点出发。

  练习五

  1,有一条长400米的环形跑道,甲、乙二人同时同地出发,反向而行,1分钟后第一次相遇;若二人同时同地出发,同向而行,则10分钟后第一次相遇。

已知甲比乙快,求二人的速度。

  2,一环形跑道长240米,甲、乙、丙从同一处同方向骑车而行,甲每秒行8米,乙每秒行6米,丙每秒行5米。

至少经过几分钟,三人再次从原出发点同时出发?

  3,甲、乙、丙三人在一条长240米的跑道上来回跑步,甲每秒跑4米,乙每秒跑5米,丙每秒跑3米。

若三人同时从一端出发,再经过多少时间三人又从此处同时出发?

  应用实例:

  分元宝:

  亡故的先父留下遗嘱,

  共有遗产17个元宝,

  老大得元宝的二分之一、17/2=8.5

  老二得元宝的三分之一、17/3=5.66666

  老三得元宝的九分之一、17/9=1.8

  问他们每一个人分别应该分几个元宝?

  *****************我是分割线****************

  在《一代大商孟洛川》中是这样做的

  @孟洛川拿来一个元宝加上去

  好了,现在分元宝

  答案是:

老大9个元宝、老二6个元宝、老三2个元宝。

  @还剩下一个元宝,是我们孟洛川的,拿回来

  *****************我是分割线****************

  很不可思议吧

  很简单的初中数学题老大分1/2,老二分1/3,老三分1/9

  这三个数的最小公倍数就是18,即9/18+6/18+2/18=17/18,就是说他们老爷子给的这个比例和根本就没到1,。

即1-17/18=1/18,也就是说,直接分,那是分不完17元宝的。

这样这要用18这个最小公倍数就能分开,最后还剩一个

  数学真的很神奇,无所不在

计算机程序实现

  PASCAL语言实现:

  vara,b,ans:

longint;

  functiongcd(a,b:

longint):

longint;

  begin

  ifb=0thengcd:

=a

  elsegcd:

=gcd(b,amodb);

  end;

  begin

  readln(a,b);

  ans:

=(a*b)divgcd(a,b);

  write(ans);

  end.

  C语言实现:

  #include

  intGCD(inta,intb);

  intLCM(inta,intb);

  intmain()

  {

  intnum1,num2,gcd,lcm;

  printf("求两个数的最大公约数及最小公倍数\n\n请输入你想计算的两个数:

\n");

  scanf("%d%d",&num1,&num2);

  gcd=GCD(num1,num2);

  lcm=LCM(num1,num2);

  printf("最大公约数为:

%d\n最小公倍数为:

%d\n",gcd,lcm);

  }

  intGCD(inta,intb)

  {

  inti,temp_gcd;

  for(i=a;i>=1;i--)

  {

  if(a%i==0)

  {

  if(b%i==0)

  {

  temp_gcd=i;

  returntemp_gcd;

  };

  };

  };

  }

  intLCM(inta,intb)

  {

  inttemp_lcm;

  temp_lcm=a*b/GCD(a,b);//最小公倍数等于两数之积除以最大公约数

  returntemp_lcm;

  }

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1