zoukankan      html  css  js  c++  java
  • 第4章-10.最大公约数和最小公倍数 (15分)

    本题要求两个给定正整数的最大公约数和最小公倍数。

    输入格式:

    输入在一行中给出两个正整数M和N(≤)。

    输出格式:

    在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1空格分隔。

    输入样例:

    511 292
    
     

    输出样例:

    73 2044
    
     非递归版
     1 # 最大公约数和最小公倍数-非递归版
     2 # Author: cnRick
     3 # Time  : 2020-3-29
     4 def getGcd(a,b):
     5     r = a % b # 初始化余数
     6     while r > 0:
     7         a,b = b,r
     8         r = a % b
     9     return b
    10 a,b = map(int,input().split())
    11 gcd = getGcd(a,b) # 计算最大公约数
    12 lcm = a * b // gcd #计算最小公倍数 = 两个整数的乘积 / 最大公约数
    13 print(gcd,lcm)

    递归版

     1 # 最大公约数和最小公倍数-递归版
     2 # Author: cnRick
     3 # Time  : 2020-3-29
     4 def getGcd(a,b): #递归实现求最大公约数
     5     if(a % b == 0):
     6         return b
     7     else:
     8         return getGcd(b,a % b)
     9 a,b = map(int,input().split())
    10 gcd = getGcd(a,b) # 计算最大公约数
    11 lcm = a * b // gcd #计算最小公倍数 = 两个整数的乘积 / 最大公约数
    12 print(gcd,lcm)
  • 相关阅读:
    注意身体
    用生命去战斗
    来到华师,一切清零
    linux fork()函数 转载~~~~
    小端大端
    位域
    内存泄漏(memory leak)和内存溢出
    stack,heap的区别
    内存管理简便复习总结
    虚函数&&虚继承
  • 原文地址:https://www.cnblogs.com/dreamcoding/p/12592373.html
Copyright © 2011-2022 走看看