两个数的最小公倍数

问题:

求两个数的最小公倍数

#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
	int m, n, b;
	int temp, k;
	int lcw;
	scanf("%d%d", &m, &n);
	k = m*n;
	if(m<n)
	{
		temp = m;
		m = n;
		n = temp;
	}
	b = m%n;
	while(b)
	{
		m = n;
		n = b;
		b = m%n;
	}
	lcw = k/n;//依照公式: 最小公倍数=两数乘积/最大公约数
	printf("%d\n", lcw);
	return 0;
}
/*
45 63
315

4 5
20
*/
时间: 2024-08-13 08:25:18

两个数的最小公倍数的相关文章

求两个数的最小公倍数

1.非递归实现(两个数相乘再除以最大公约数) int max_common_doulbe(int a, int b) { int nMax=a>b?a:b; int nMin=a<b?a:b; while(nMin) { int nTmp=nMax%nMin; nMax=nMin; nMin=nTmp; } int nMaxGY=nMax; //最大公约数 return a*b/nMaxGY; } 2. 递归实现 int max_common_doulbe(int a, int b, int

1236 - Pairs Forming LCM -- LightOj1236 (LCM) 给你一个数n,让你求1到n之间的数(a,b &amp;&amp; a&lt;=b)两个数的最小公倍数等于n有多少对这样的ab.

题意:http://www.lightoj.com/volume_showproblem.php?problem=1236 解答:http://www.cnblogs.com/linliu/p/5549544.html 素数太大用bool #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> #include<queue> #include<map

求两个数的最大最大公约数和最小公倍数

package java;    import java.util.ArrayList;  import java.util.List;  import java.util.Scanner;    public class java {      /**      * 输入两个正整数m和n,求其最大公约数和最小公倍数      */      public static void main(String args[]) {          // List<Integer> list=new 

C语言求两个数中最大公约数

在C语言中如何求两个数的最大公约数呢?下面用三种方法进行求解. 方法一:穷举法. 先比较两个数的大小,然后找出较小数t,最后判断t为何值时两个数都能整除,此方法效率较低. 代码如下: #include<stdio.h> int main() {      int num1,num2,temp,i;      scanf("%d%d",&num1,&num2);      if(num1>num2)      {            temp=num1

写一个方法,求两个数的最大公约数和最小公倍数。

package homework0702; /* * 最大公约数 利用辗转相除法求解两个正整数的最大公约数 在循环中,只要除数不等于0,用较大的数除以较小的数,将小的一个数作为下一轮循环的大数,取得的余数作为下一轮循环较小的数,如此循环直到较小的数值为0,返回较大的数.即为最大公约数. 辗转相除法(欧几里得算法) 定理:两个整数的最大公约数等于其中较小的那个数和两数的相除余数的最大公约数.最大公约数(greatest common divisor)缩写为gcd. 最小公倍数 最小公倍数 = (a

求两个数的最大公约数和最小公倍数 C语言

C程序设计第八章的第一道题目,求两个数的最大公约数和最小公倍数.需要注意一下几点: 1.最大公约数和最小公倍数间的关系: 设两个数是a,b最大公约数是p,最小公倍数是q 那么有这样的关系:ab=pq 所以q=ab/p.2.任意整数和0的公约数是该整数的所有约数,所以它们的最大公约数为该整数本身.3.碾转相除法:被除数%除数=余数,如果余数不为0,就让原来的除数做为被除数,余数作为除数,再进行运算 被除数%除数=余数,直到得到的余数为0为止,此时的除数就是最大公约数. #include <stdi

5.2求两个数的最大公约数和最小公倍数

此处用的是最简单的遍历方法,先求出2个数的最小公倍数,再用两个数之积去除以最小公倍数就能够得到最大公约数. #include <iostream> #include <cmath> using namespace std; int main() { int a,b,c,d; cin>>a>>b; for(int i=a;;i++) { if(i%a==0 &&i%b==0) { c=i; break; } } d=a*b/c; cout<

如何求两个数的最大公约数和最小公倍数

最大公约数:也称最大公因数.最大公因子,指两个或多个整数共有约数中最大的一个. 最小公倍数:几个数共有的倍数叫做这几个数的公倍数,其中除1以外最小的一个公倍数,叫做这几个数的最小公倍数. 特点:

c语言求两个数的最大公约数和最小公倍数

#include <stdio.h> int main() { // 两个数的最大公约数求法:最大公约数是这两个数之间公共最大的约数,我们可以先找到这两个数的比较小的数: int num1, num2, gys, gbs; scanf("%d,%d", &num1, &num2); int ji = num2*num1; if (num1>num2) { // 找到两个数较小的数 int temp; temp = num1; num1 = num2;