输入两个正整数m和n求其最大公约数和最小公倍数
用辗转相除法进行求解
#include<stdio.h>
int main()
{
int m,n,r,p,t;
while(~scanf("%d %d",&n,&m))//输入多组值
{
p=m*n;//科普:n个数的乘积与他们的最小公约数和最大公倍数的值相等
if(n>m)//将简答的值赋给m,否则交换他们的值
{
t=n;
n=m;
m=t;
}
while(n!=0)//辗转相除法求最大公约数
{
r=m%n;
m=n;
n=r;
}
printf("最大公约数为%d\n",m);
printf("最小公倍数为%d\n",p/m);
}
return 0;
}
辗转相除法:定义自己百度
拓展:求n个数的最小公倍数和最大公约数
运用递归的思想
#include<stdio.h>
int f( int x,int y)
{
int t,r,s;
if(x<y)
{
t=x;
x=y;
y=t;
}
while(y!=0)
{
r=x%y;
x=y;
y=r;
}s=x;
return s;//跟上面两个数的求最大公约数的方法一样
}
int main()
{
int n1,n2;
int i,n;
while(scanf("%d",&n)!=EOF)//输入n个整数,并可以输入多组
{
scanf("%d",&n1);//就相当于化学思想里的定一议二
for(i=1; i<n; i++)//一共输入n个数,已经输入n1,所以这次循环输入n-1个数
{
scanf("%d",&n2);
);//每次都将n1和n2的最小公倍数赋值n1,依次进行下去,这就是递归的思想
}
printf ("n个数的最小公倍数为%d\n",n1);
}
return 0;
}
//上面运用n1=(n1/f(n1,n2)*n2/f(n1,n2))*f(n1,n2)是有的题目中要求在int 范围内,n1*n2的值可能大于这个范围
这是我的理解。。。。。
分享到:
相关推荐
python 输入两个正整数计算最大公约数和最小公倍数 示例
Java练习题:输入两个正整数m和n,求其最大公因数和最小公倍数
求其最大公约数和最小公倍数输入两个正整数m和n,求其最大公约数和最小公倍数输入两个正整数m和n,求其最大公约数和最小公倍数输入两个正整数m和n,求其最大公约数和最小公倍数输入两个正整数m和n,求其最大公约数和...
而“求两个整数的最大公约数和最小公倍数”可能是实际的C++源代码文件,包含上述的函数定义和主函数的实现。 总的来说,了解和掌握最大公约数和最小公倍数的计算对于编程基础和算法理解至关重要,因为它们在很多...
在Java编程语言中,求两个正整数的最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)是常见的算法问题,这对于理解和掌握基本的数学运算以及编程技巧至关重要。本文将详细介绍...
从键盘输入两个正整数,求这两个正整数的最小公倍数和最大公约数,并输出。 输入 输入包括一行。 两个以空格分开的正整数。 输出 两个整数的最小公倍数和最大公约数。 样例输入 6 8 样例输出 24 2
输入两个正整数m和n,求其最大公约数和最小公倍 数。
在编程领域,计算两个正整数的最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)是基础算法之一,这些概念在数学和计算机科学中都有着广泛的应用。本篇文章将深入探讨如何使用...
1. **最大公约数(GCD)和最小公倍数(LCM)**:这是基本的数论问题,可以使用欧几里得算法(辗转相除法)来解决。 2. **字符统计**:涉及字符串遍历和计数,通常使用循环和条件判断实现。 3. **位数计算**:通过...
在IT领域,尤其是在编程与算法的学习中,计算两个整数的最大公约数(Greatest Common Divisor,简称GCD)和最小公倍数(Least Common Multiple,简称LCM)是基础而又重要的知识点。从给定的文件标题“输出m,n的最大...
用LabVIEW求最大公约数和最小公倍数。可以自行选择数据。
在这个C语言的例子中,我们看到如何编写一个程序来计算两个整数的最大公约数和最小公倍数。 首先,我们要理解最大公约数和最小公倍数的定义。最大公约数是指能够同时整除两个或两个以上整数的最大的正整数。而最小...
该算法基于这样一个事实:如果`a`和`b`是两个正整数,并且`a > b`,那么`a`和`b`的最大公约数等于`b`和`a mod b`的最大公约数。 #### 实现示例 下面是一个使用递归方式实现的GCD函数: ```c #include // 定义一...
在Java中,我们可以创建一个类`GcdAndLcm`,并在其中定义两个方法`gcd(int a, int b)`和`lcm(int a, int b)`来分别计算最大公约数和最小公倍数。以下是使用辗转相除法计算最大公约数的Java代码示例: ```java ...
在计算机科学领域,最大公约数(Greatest Common Divisor, GCD)和最小公倍数(Least Common Multiple, LCM)是两个基本的数学概念,它们在算法设计和数据分析中广泛应用。N-S盒图(NS-Box Diagram),又称诺依曼-...
python求最大公约数和最小公倍数 #辗转相除法 def gcd(a,b): #最大公约数函数,且最小公倍数 = 两个数相乘 / 最大公约数 if b == 0: return a else: return gcd(b,a%b) print("请输入两个数:") j,k = input()....
对于两个正整数a和b,它们的最小公倍数可以通过两者的乘积除以最大公约数得到,即LCM(a, b) = a * b / GCD(a, b)。流程图如下: - 输入两个正整数a和b。 - 计算两者的最大公约数,可以使用辗转相除法或其他方法。 ...
在VB6.0中编写程序来求解两个整数的最大公约数和最小公倍数,可以提供直观的用户界面和高效的计算方法。 首先,我们需要理解最大公约数和最小公倍数的概念: 1. 最大公约数(GCD):两个或多个非零整数的最大公约数...
最大公约数和最小倍数最大公约数和最小倍数最大公约数和最小倍数最大公约数和最小倍数最大公约数和最小倍数最大公约数和最小倍数最大公约数和最小倍数最大公约数和最小倍数最大公约数和最小倍数最大公约数和最小倍数...
最大公约数是指两个或多个整数共有约数中最大的一个,而最小公倍数是指能被两个或多个整数整除的最小正整数。这两个概念在数论中具有基础性的重要地位,同时也是解决许多数学问题的基础。在编程中,最大公约数的计算...