编程题

一张长方形的纸,长m 米, 宽 n 米(长宽均为整数) , 现在要把它刚好裁成一些正方形(边长是整数), 有几种裁法, 如果要使裁得的正方形面积最大, 可以裁多少块。小明学习了递归后, 编写程序如下, 首先输入长方形的长和宽,

计算出结果。 请完善划线处的代码:

def tj(a,b):

c = 0

minn = ①

if a > b:

minn = b

for i in range(1,minn+1):

if a % i == 0 and b % i == 0:

c = ②

return c

def gcd(a,b):

if b == 0:

return a

return ③

chang = int(input('输入长方形的长 (单位 cm)'))

kuan = int(input('输入长方形的宽 (单位 cm)'))

bianchang = gcd(chang,kuan)

total = ④

num = tj(chang,kuan)

print('------------结果如下-------------')

print('有{}种裁法'.format(num))

print('裁得的正方形面积最大边长是{}cm, 可以裁{}块'.format(bianchang,total))

运行后的结果如下图所示:

查看答案
赣ICP备20007335号-2