问答详情
源自:4-4 Python类的数学运算

还是不明白这个r是什么意思,为什么return里self.p要乘r.q

http://img.mukewang.com/5f6340dd00011c8203750443.jpg还是不明白这个r是什么意思,为什么return里self.p要乘r.q

提问者:糖炒栗子不加糖 2020-09-17 18:58

个回答

  • 慕盖茨7031404
    2020-09-19 15:21:31
    已采纳

    程序里的 self.p * r.q用来计算通分后分数的分子。

    这里把有理数用分数表示,有理数的运算也就成了分数的运算,如计算:1/3 + 1/5,

    先进行通分变成:5/15 + 3/15,这个5/15的分子就是程序里的 self.p * r.q

  • qq_狐耳小乖们_0
    2020-09-24 16:15:54

    哦哦之前也一直没明白,谢谢解答

  • 小白violet
    2020-09-24 15:44:32

    r1=(1,2),r2=(2,3),r1其实是二分之一,r2其实是三分之二。r1+r2,计算的结果其实是(1*3+2*2)/(2*3).self.p=1,self.q=2,r是r2的参数,r.p=2,r.q=3.你手动算算两个分数相加,怎么做,当然是先把分母同分,分母找最大公约数最简单的方法就是两个分母相乘。建议你看看源码中的truediv就能大概理解了