Реализации алгоритмов/Расширенный алгоритм Евклида: различия между версиями
Содержимое удалено Содержимое добавлено
Maxal (обсуждение | вклад) Новая страница: «'''Расширенный алгоритм Евклида''' вычисляет НОД двух задан…» |
(нет различий)
|
Версия от 13:45, 14 июня 2016
Расширенный алгоритм Евклида вычисляет НОД двух заданных целых чисел и их коэффициенты Безу.
На языке Си
include <stdio.h>
int main(){
int a, b, p=1, q=0, r=0, s=1, x, y;
scanf("%d %d",&a,&b);
while (a && b) {
if (a>=b) {
a = a - b;
p = p - r;
q = q - s;
} else
{
b = b - a;
r = r - p;
s = s - q;
}
}
if (a) {
x = p;
y = q;
}else
{
x = r;
y = s;
}
printf("%d %d\n",x,y);
return 0;
}