gcd¶
计算两个输入的按元素绝对值的最大公约数,输入必须是整型。
注解
gcd(0,0)=0, gcd(0, y)=|y|
如果 x 和 y 的 shape 不一致,会对两个 shape 进行广播操作,得到一致的 shape(并作为输出结果的 shape), 请参见 Tensor 介绍 .
参数¶
x (Tensor) - 输入的 Tensor,数据类型为:int32,int64。
y (Tensor) - 输入的 Tensor,数据类型为:int32,int64。
name (str,可选) - 操作的名称(可选,默认值为 None)。更多信息请参见 Name。
返回¶
输出 Tensor,与输入数据类型相同。
代码示例¶
>>> import paddle
>>> x1 = paddle.to_tensor(12)
>>> x2 = paddle.to_tensor(20)
>>> paddle.gcd(x1, x2)
Tensor(shape=[], dtype=int64, place=Place(cpu), stop_gradient=True,
4)
>>> x3 = paddle.arange(6)
>>> paddle.gcd(x3, x2)
Tensor(shape=[6], dtype=int64, place=Place(cpu), stop_gradient=True,
[20, 1 , 2 , 1 , 4 , 5])
>>> x4 = paddle.to_tensor(0)
>>> paddle.gcd(x4, x2)
Tensor(shape=[], dtype=int64, place=Place(cpu), stop_gradient=True,
20)
>>> paddle.gcd(x4, x4)
Tensor(shape=[], dtype=int64, place=Place(cpu), stop_gradient=True,
0)
>>> x5 = paddle.to_tensor(-20)
>>> paddle.gcd(x1, x5)
Tensor(shape=[], dtype=int64, place=Place(cpu), stop_gradient=True,
4)