matlab中的GCD函数

发布于 2024-08-28 17:40:09 字数 408 浏览 10 评论 0原文

我正在寻找一种方法来用另一种语言实现 matlab 中使用的“gcd”函数,但我真的无法理解它的工作方式。

它在 http://www.mathworks.com/access 中说/helpdesk/help/techdoc/ref/gcd.html 指出:

“[G,C,D] = gcd(A,B) 返回最大公约数数组 G 以及数组 C 和 D,其中满足方程:A(i).*C(i) + B(i).*D(i) = G(i)。

但它没有说明如何计算 C 和 D。

如果有人对这个主题有更清晰的想法,我将不胜感激! 谢谢:)

i am looking for a way to implement the "gcd" function used in matlab in another language but i really cant understand the way it functions.

it says in http://www.mathworks.com/access/helpdesk/help/techdoc/ref/gcd.html that:

"[G,C,D] = gcd(A,B) returns both the greatest common divisor array G, and the arrays C and D, which satisfy the equation: A(i).*C(i) + B(i).*D(i) = G(i)."

but it says nothing about how it calculates C and D.

i would be grateful if someone has a clearer idea about this subject!
thanks:)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

望笑 2024-09-04 17:40:09

Matlab 文档参考

Knuth, Donald, 计算机编程的艺术, 第 1 卷。 2、Addison-Wesley:Reading MA,1973。第 4.5.2 节,算法 X。

我没有冒昧地为您解释这一点,但它就在那里。

The Matlab documentation refers to

Knuth, Donald, The Art of Computer Programming, Vol. 2, Addison-Wesley: Reading MA, 1973. Section 4.5.2, Algorithm X.

I don't have the temerity to paraphrase that for you, but it is all there.

嘿哥们儿 2024-09-04 17:40:09

即可查看源代码

edit gcd

只需在编辑器中输入打开该函数 。然后你可以逐行查看该函数。

结合其他两篇文章中的参考资料,这应该会给您答案。

Just have a look at the source by typing

edit gcd

which opens the function in the editor. Then you can look through the function line by line.

Together with the references in the other two posts, this should get you the answer.

姜生凉生 2024-09-04 17:40:09

它将使用此链接中关于扩展欧几里得算法的基本方案之一。

It would use one of the basic schemes found in this link on The extended Euclidean algorithm.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文