C++编写程序。输入两个正整数,求它们的最大公约数和最小公倍数。

如题所述

#include<iostream.h>

#include<math.h>

void main()

{int a,num1,num2,temp;cout<<"please input two numbers:");

cin>>num1>>num2;

int ji = num1*num2;

if(num1<num2) /*保证第一数是较大的值*/

{temp=num1;num1=num2;num2=temp;}

扩展资料:

特征及特点:

向对象程序设计是一种新型的程序设计范型,这种范型的主要特征是:程序=对象+消息。

面向对象程序的基本元素是对象,面向对象程序的主要结构特点是:

第一、程序一般由类的定义和类的使用两部分组成,在主程序中定义各对象并规定它们之间传递消息的规律。

第二、程序中的一切操作都是通过向对象发送消息来实现的,对象接收到消息后,启动有关方法完成相应的操作。一个程序中涉及到的类,可以由程序设计者自己定义,也可以使用现成的类(包括类库中为用户提供的类和他人已构建好的)尽量使用现成的类,是面向对象程序设计范型所倡导的程序设计风格。

参考资料来源:百度百科-c++编程




温馨提示:内容为网友见解,仅供参考
第1个回答  2020-11-13
第2个回答  2014-10-14
#include <Windows.h>
#include <stdio.h>
#include <string.h>

// C++编写程序。输入两个正整数,求它们的最大公约数和最小公倍数
unsigned int maxDivisor(unsigned int a, unsigned int b)
{
    unsigned int divisor = (a < b) ? a : b;

    for (unsigned int i = divisor; i > 0; i--)
    {
        if (a % i == 0 && b % i == 0)
        {
            return i;
        }
    }

    return 1;
}

unsigned int minMultiple(unsigned int a, unsigned int b)
{
    unsigned int multiple = (a > b) ? a : b;

    for (unsigned int i = multiple; true; i++)
    {
        if (i % a == 0 && i % b == 0)
        {
            return i;
        }
    }

    return 1;
}
void main()
{
    unsigned int a = 10;
    unsigned int b = 25;

    unsigned int c = maxDivisor(a, b);
    unsigned int d = minMultiple(a, b);

    printf("maxDivisor = %d, maxDivisor = %d\n", c, d);

    system("pause");
}

第3个回答  推荐于2016-02-16
#include<iostream.h>
#include<math.h>
void main()
{
int a,num1,num2,temp;
cout<<"please input two numbers:");
cin>>num1>>num2;
int ji = num1*num2;
if(num1<num2) /*保证第一数是较大的值*/
{
temp=num1;
num1=num2;
num2=temp;
}
while((a=num1%num2)!=0)/*利用辗除法,直到a为0为止*/
{
num1=num2;
num2 = a;
} /*此时num2就是最大公约数*/
cout<<("the gcd is: %d\n",num2);
cout<<("the lcm is: %d\n",ji/num2);
}本回答被提问者采纳

C++编写程序。输入两个正整数,求它们的最大公约数和最小公倍数。
int ji = num1*num2;if(num1<num2) \/*保证第一数是较大的值*\/ {temp=num1;num1=num2;num2=temp;}

c++输入两个正整数求它们的最大公约数和最小公倍数。
cout<<m<<"和"<<n<<"的最小公倍数为:"<<getMin(m,n)<<endl;}

用c++编程:求两个正整数的最大公约数和最小公倍数
思路:先求最大公约数,再让两个数相乘,再除最大公约数即可。include<stdio.h> int main(){ int a,b,c,d,m,n,i;scanf("%d %d",&m,&n); (输入两个数)for(i=m;i>=1;i--){a=m%i;b=n%i; (令m,n同时除以一个比他们小的数)if(a==0&&b==0) (当m,n除以i都...

C++语言题目:输入两个正整数m和n,求其最大公约数和最小公倍数.
a,b;printf("***请输入2个整数***\\n");scanf("%d d",&a,&b);\/\/注意输入a,b时用空格隔开 printf("最小公倍数是:%d\\n",min_num(a,b));printf("最大公约数是:%d\\n",max_num(a,b));}\/\/这个函数用于求最小公倍数int min_num(int x,int y){ int i,m;m = x>y?x:y...

C++实现输入两个正整数m和n,求其最大公约数和最小公倍数?
printf("请输入两个正整数\\n");scanf("%d %d",&m,&n);c = m < n ? m : n ; \/\/ 取m n 中较小的数,赋值给c \/\/ for(i = 2 ; i <= c ; i++){ if( m % i == 0 && n % i == 0){ printf("m 与 n 的最大公约数为%d,",i);break;} } if(i == c...

c++语言、输入两个正整数m和n,求其最大公约数和最小公倍数。
h> int main(){ int a,b,t,r;printf("请输入两个数字:\\n");scanf("%d %d",&a,&b);if(a

C++编程 输入两个正整数m和n,求其最大公约数和最小公倍数
int i=1;i<min;i++) { if(m%i==0&&n%i==0) { temp1=i; } } cout<<"公约数:"<<temp1<<endl; \/\/公倍数问题 temp2 = m * n \/ temp1; cout<<"公倍数:"<<temp2<<endl; return 0;} ...

C++编程:求两正整数的最大公约数和最小公倍数,用一个函数求最大公约数...
printf("最大公约数为:%d\\n",b);printf("最小公倍数为:%d\\n",m*n\/b);} else { printf("你输入的数据不合法,退出请输入0,重新计算请输入1!");goto scan;} printf("退出请输入0,重新计算请输入1!");scan: scanf("%d",&judge);}while(judge!=0);system("pause");return 0;...

用c++输入两个正整数m和n 求其最大公约数和最小公倍数
using namespace std;int main(){ int m,n,rem=1;cin >> m >> n;\/\/输入两个数 int a= m,b=n;\/\/保留两个数 while(rem!=0){ rem=m%n;m=n;n=rem;} cout << "最大公约数为:" << m << endl;cout << "最小公倍数为:" << a*b\/m << endl;return 0;} ...

C++. 输入两个正整数m n求其最大公约数和最小公倍数。希望写具体...
int temp, num1, num2;if(a < b){ temp = a;a = b;b = temp;} num1 = a;num2 = b;while(num2 != 0){ temp = num1 % num2;num1 = num2;num2 = temp;} cout << "最大公约数为:" << num1 << " 最小公倍数为:" << (a * b) \/ num1 << endl;return...

相似回答