2010-04-10 6 views
0

Je suis à la recherche d'un moyen d'implémenter la fonction "gcd" utilisée dans matlab dans une autre langue mais je ne comprends vraiment pas comment cela fonctionne.Fonction GCD dans matlab

il est dit dans http://www.mathworks.com/access/helpdesk/help/techdoc/ref/gcd.html que:

« [G, C, D] = gcd (A, B) retourne à la fois le plus grand réseau de diviseur commun G, et les tableaux C et D, qui satisfont à l'équation: A (i). * C (i) + B (i). * D (i) = G (i). "

mais il ne dit rien sur la façon dont il calcule C et D.

Je vous serais reconnaissant si quelqu'un a une idée plus claire sur ce sujet! remerciements

+0

Ce n'est pas vraiment une question matlab. il vaut mieux demander à math.overflow ou à google pour un algoirthm pour le calcul GCD. – Shai

Répondre

0

La documentation Matlab fait référence à

Knuth, Donald, L'art de la programmation informatique, vol. 2, Addison-Wesley: Lecture MA, 1973. Section 4.5.2, Algorithme X.

Je n'ai pas la témérité de paraphraser cela pour vous, mais tout est là.

0

Il suffit de jeter un oeil à la source en tapant

edit gcd 

qui ouvre la fonction dans l'éditeur. Vous pouvez ensuite parcourir la fonction ligne par ligne.

Avec les références dans les deux autres messages, cela devrait vous donner la réponse.

+0

où puis-je trouver cela? Je n'ai pas matlab installé – SalemFayad

+0

Désolé, je pensais que vous aviez installé Matlab. Malheureusement, vous avez besoin de Matlab pour pouvoir voir sa fonction. – Jonas

Questions connexes