zoukankan      html  css  js  c++  java
  • python 函数求两个数的最大公约数和最小公倍数

     1. 求最小公倍数的算法:

        最小公倍数  =  两个整数的乘积 /  最大公约数

        所以我们首先要求出两个整数的最大公约数, 求两个数的最大公约数思路如下:

    2. 求最大公约数算法:

        1. 整数A对整数B进行取整, 余数用整数C来表示    举例: C = A % B

        2. 如果C等于0,则B就是整数A和整数B的最大公约数

        3. 如果C不等于0, 将B赋值给A, 将C赋值给B ,然后进行 1、2 两步,直到余数为0, 则可以得知最大公约数

    • 程序代码实现如下:

     1 def fun(num1, num2):  # 定义一个函数, 两个形参
     2     if num1 < num2:  # 判读两个整数的大小,目的为了将大的数作为除数,小的作为被除数
     3         num1, num2 = num2, num1  # 如果if条件满足,则进行值的交换
     4 
     5     vari1 = num1 * num2  # 计算出两个整数的乘积,方便后面计算最小公倍数
     6     vari2 = num1 % num2  # 对2个整数进行取余数
     7 
     8     while vari2 != 0:  # 判断余数是否为0, 如果不为0,则进入循环
     9         num1 = num2  # 重新进行赋值,进行下次计算
    10         num2 = vari2
    11         vari2 = num1 % num2  # 对重新赋值后的两个整数取余数
    12         
    13         # 直到 vari2 等于0,得到最到公约数就退出循环
    14 
    15     vari1 /= num2   # 得出最小公倍数
    16     print("最大公约数为:%d" % num2)    # 输出
    17     print("最小公倍数为:%d" % vari1)   # 输出
    18 
    19 
    20 fun(6, 9)
    21 #最大公约数为:3
    22 #最小公倍数为:18
    
    
  • 相关阅读:
    java中的String.format使用
    白话解析平安笔试题:多线程交替打印
    centos7 yum install redis
    CentOS7 linux下yum安装redis以及使用
    开源规则流引擎实践
    java中System.err.print和System.out.print区别
    drools -规则语法
    小明历险记:规则引擎drools教程一
    规则引擎drools封装
    C#中Encoding.Unicode与Encoding.UTF8的区别
  • 原文地址:https://www.cnblogs.com/sunshine-blog/p/10844281.html
Copyright © 2011-2022 走看看