求最大的公约数 为啥代码出错
class Solution():def gcd(self,x,y):
x=self.x
y=self.y
while y:
t=x%y
x=y
y=t
return x
if __name__=='__main__':
s=Solution()
x=4
y=12
print('最大公约数:%d'%s.gcd(x,y))
大佬帮忙解释一下
class Solution():
def __init__(self,x,y):
self.x=x
self.y=y
def gcd(self,x,y):
x=self.x
y=self.y
while y:
t=x%y
x=y
y=t
return x
if __name__=='__main__':
x=4
y=18
s=Solution(x,y)
print('最大公约数:%d'%s.gcd(x,y)) 或者这样
class Solution():
def gcd(self,x,y):
while y:
t=x%y
x=y
y=t
return x
if __name__=='__main__':
x=4
y=18
s=Solution()
print('最大公约数:%d'%s.gcd(x,y)) 其实这样也许更像类一些:
class Solution():
def __init__(self,x,y):
self.x=x
self.y=y
def gcd(self):
x=self.x
y=self.y
while y:
t=x%y
x=y
y=t
return x
if __name__=='__main__':
s=Solution(21,18)
print('最大公约数:%d'%s.gcd())
页:
[1]