2010-04-10 3 views
0

Я ищу способ реализовать функцию «gcd», используемую в Matlab на другом языке, но я действительно не могу понять, как она функционирует.Функция GCD в matlab

это говорит в http://www.mathworks.com/access/helpdesk/help/techdoc/ref/gcd.html что:

«[G, С, D] = НОД (A, B) возвращает как наибольший общий делитель массива G, а массивы С и D, которые удовлетворяют уравнению: A (i). * C (i) + B (i). * D (i) = G (i). "

, но ничего не говорит о том, как он вычисляет C и D.

я был бы признателен, если кто-то имеет более четкое представление об этом предмете! спасибо :)

+0

Это не совсем вопрос о матлабе. вам лучше спросить math.overflow или google для algoirthm для вычисления GCD. – Shai

ответ

0

документация Matlab относится к

Кнут, Дональд, Искусство программирования, Vol. 2, Addison-Wesley: Reading MA, 1973. Раздел 4.5.2, Алгоритм X.

У меня нет смелости перефразировать это для вас, но это все.

0

Просто взгляните на источник, набрав

edit gcd 

, который открывает функцию в редакторе. Затем вы можете просматривать функцию по строкам.

Вместе со ссылками на другие две должности, это должно дать вам ответ.

+0

где я могу найти это? У меня нет установленного Matlab – SalemFayad

+0

Извините, я думал, что у вас установлен Matlab. К сожалению, Matlab вам нужен, чтобы посмотреть на его функцию. – Jonas