• Problem06 求最大公约数及最小公倍数


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

    程序分析:利用辗转相除法。

    利用辗除法:用较大数除以较小数,再用出现的余数(第一余数)去除除数,

    再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。

    最后的除数就是这两个数的最大公约数。

    最小公倍数:两个数的乘积等于这两个数的最大公约数与最小公倍数的积。即(m,n)×[m,n]=m×n。

     1 import java.util.*;
     2 
     3 public class Problem06 {
     4     //题目:输入两个正整数m和n,求其最大公约数(m,n)和最小公倍数[m,n]。
     5     //利用辗除法:用较大数除以较小数,再用出现的余数(第一余数)去除除数,
     6     //再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。
     7     //最后的除数就是这两个数的最大公约数。
     8     //最小公倍数:两个数的乘积等于这两个数的最大公约数与最小公倍数的积。即(m,n)×[m,n]=m×n
     9     public static void main(String args[]) {
    10         System.out.println("请输入两个正整数:");
    11         Scanner s = new Scanner(System.in);
    12         int m = s.nextInt();
    13         int n = s.nextInt();
    14         System.out.println(m+"和"+n+"的最大公约数是:"+zhanzhuan(m,n));
    15         System.out.println(m+"和"+n+"的最小公倍数是:"+gongbei(m,n));
    16         s.close();
    17     }
    18     
    19     //辗转相除法找出最大公约数
    20     public static int zhanzhuan(int m, int n) {
    21         //找出较大的数
    22         if(m<n) {
    23             int temp = m;
    24             m = n;
    25             n = temp;
    26         }
    27         while(true) {
    28             //
    29             int r = m % n;
    30             if(r==0) {
    31                 return n;
    32             }else {
    33                 m = n;
    34                 n = r;
    35             }
    36         }
    37     }
    38     
    39     //最小公倍数:两个数的乘积等于这两个数的最大公约数与最小公倍数的积。即(m,n)×[m,n]=m×n
    40     public static int gongbei(int m, int n) {
    41         return m*n / zhanzhuan(m,n);
    42     }
    43 }

    输入30,45,输出结果:

    1 请输入两个正整数:
    2 30
    3 45
    4 30和45的最大公约数是:15
    5 30和45的最小公倍数是:90
  • 相关阅读:
    Signals & Slots(Qt5)
    Build Qt5 Source 配置Qt5
    关于android studio从2.3升级到3.0以上可能会遇到的问题
    Error:Unexpected lock protocol found in lock file. Expected 3, found 49.
    关于浏览器自动展示用户名、密码等输入框的解决办法
    mysql 使用zip包进行安装以及服务启动后立即关闭问题
    fiddler抓包小技巧之自动保存抓包数据(可根据需求过滤)
    mysql binlog日志解析
    SharePoint 2010 Development Stack
    不仅仅是土豆
  • 原文地址:https://www.cnblogs.com/nemowang1996/p/10387896.html
Copyright © 2020-2023  润新知