题目 7: 求矩形面积

描述

已知矩形长a,宽b,输出其面积和周长,面积和周长以一个空格隔开

solve

print str(a*b),str((a+b)*2)

题目 8: 求中位数

描述

给你一个list L, 如 L=[0,1,2,3,4], 输出L的中位数(若结果为小数,则保留一位小数)。

solve

#若有n个数,n为奇数,则选择第(n+1)/2个为中位数,若n为偶数,则中位数是(n/2以及n/2+1)的平均数
#这道题感觉有问题,因为按ac的这种写法,算5.5的话,得到的结果是3位小数,打印出来也是3位小数,不合题意啊
#主要是学一下浮点运算/2.0,其他就算了吧

L.sort()
length = len( L )
if length % 2 != 0 :
    num = L[ length // 2 ]
    if isinstance( num,int ):
        print( num )
    else :
        print( "%.1f" % num )

else :
    num1 = L[ ( length // 2 ) - 1 ]
    num2 = L[ ( length // 2 ) ]
    num = num1 + num2
    print( num / 2.0 )

题目 9: 最大公约数

描述

给你两个正整数a和b, 输出它们的最大公约数。

solve

def gcd( x,y ) :
    return x if y == 0 else gcd( y,x % y )
print( gcd( a,b ) ) #a/b不用排序

"""
#同上
while a%b:
    a,b=b,a%b
print b
"""

题目 10: 最小公倍数

描述

给你两个正整数a和b, 输出它们的最小公倍数

solve

def gcd( x,y ) :
    return x if y == 0 else gcd( y,x % y )

def lcm( x,y ) :
    return ( x * y ) // gcd( x,y )

print( lcm( a,b ) )