输入两个正整数m和n,求其最大公约数和最小公倍数。

package a;

import java.util.*;

public class Yueshubeishu {

    public static void main(String[] args) {
        System.out.println("输入两个正整数:");
        Scanner a=new Scanner(System.in);
        int m=a.nextInt();
        Scanner b=new Scanner(System.in);
        int n=b.nextInt();
        int c=m*n;
        int d=0;
        if(m==n)
        {
            System.out.println("最大公约数和最小公倍数均为:"+m);
        }
        else
        {
            if(m>n)
            {
            while(n>0)
            {
                d=m;
                m=n;
                n=d%m;
            }
               System.out.println("最大公约数为"+m);
               System.out.println("最小公倍数为"+c/m);
            }
            else
            {
                while(m>0)
                {
                    d=n;
                    n=m;
                    m=d%n;
                }
                System.out.println("最大公约数为"+n);
                System.out.println("最小公倍数为"+c/n);
            }
        }
    }

}

时间: 2024-08-06 20:00:23

输入两个正整数m和n,求其最大公约数和最小公倍数。的相关文章

c语言:输入两个正整数m和n,求其最大公约数和最小公倍数

输入两个正整数m和n,求其最大公约数和最小公倍数. 解:程序: #include <stdio.h> int main() { int num1, num2, t,p; printf("请输入两个正整数:"); scanf("%d,%d", &num1, &num2);//7,8 p = num1*num2; while (t = num1%num2)//7           1        0,循环结束 { num1 = num2;

代码代码:输入两个正整数m和n,求其最大公约数和最小公倍数。15 20 5

import java.util.Scanner; //输入两个正整数m和n,求其最大公约数和最小公倍数.15 20 5 public class Test { public static void main(String[] args) { int n = inNumber(); int m = inNumber(); int yue = 1; int bei = m*n; for (int i = 2; i < n*m; i++) { if (m % i == 0 && n %

题目:输入两个正整数m和n,求其最大公约数和最小公倍数。

//题目:输入两个正整数m和n,求其最大公约数和最小公倍数. package com.mumu.ready; import java.util.Scanner; public class Multiple { public static void main(String[] args) { Scanner can = new Scanner(System.in); System.out.println("Please input Integer m&n:"); int m =

55.输入两个正整数m和n,求其最大公约数和最小公倍数

#include<iostream> using namespace std; int main() { int m,n,Max; int temp1,temp2; cout<<"please input two numbers:"<<endl; cin>>m>>n; Max=(m>n)?m:n; for(int i=1;i<Max;i++) { if(m%i==0&&n%i==0) { temp1

输入两个正整数,求其最大公约数和最小公倍数

1 /* 2 题目:输入两个正整数m和n,求其最大公约数和最小公倍数. 3 例如:12和20的最大公约数是4,最小公倍数是60. 4 */ 5 6 // 导包 7 import java.util.Scanner; 8 9 public class ForTest { 10 public static void main(String[] args) { 11 // 创建键盘输入对象 12 Scanner sc = new Scanner(System.in); 13 14 // 接收键盘输入的

写一个方法,输入两个正整数,输出在两个正整数范围内即被3整除,又被7整除的正整数

import java.util.Scanner;/* * @写一个方法,输入两个正整数,输出在两个正整数范围内即被3整除,又被7整除的正整数. * */public class Test5 { static Boolean boo=false; public static void main(String[] args) { Scanner scanner = new Scanner(System.in); long scan = scanner.nextLong(); long scan1

Java输入两个正整数m和n,求其最大公约数和最小公倍数。

import java.util.Scanner; public class Test6 {     //欧几里德 辗转相除法     public static int gcd(int a,int b) {         int r ;         while(b != 0) {             r = a % b ;             a = b;             b = r;         }         return a;     }     //最小公

用C++实现从键盘输入两个数a和b,求两数中的最大值

程序如下: #include<iostream> using namespace std; int main() { int max(int x,int y);   //对max函数作声明 int a,b,c; cin>>a>>b; c=max(a,b);   //调用max函数 cout<<"max="<<c<<endl; return 0; } int max(int x,int y) { int z; if(

C++ 算法之 输入两个整数m n,求计算需要改变m的二进制表示中的多少位才能得到n

思路:先把m与n进行异或运算,再统计异或结果当中的1的个数: 异或:相同为0,不同为1: 0^0 = 0; 1^1 = 0; 0^1 = 1; 1^0 = 1; 比如10 : 1010 :  13:1101: 10^13  ------>    1 0 1 0 1 1  0 1 结果                   0  1 1 1 异或有几个不同为就会有几个1:统计1的个数就知道需要改变几位了 // changeNumber.cpp : 定义控制台应用程序的入口点. // #include