function PGCD=PGCD(a,b);

% PGCD=PGCD(a,b);
%
% Calcule le PGCD de deux entiers positifs a et b (b non nul). 
% PGCD(a,0)=a si a est non nul ; PGCD(0,b)=b si b est non nul. 
% Sous MAPLE, cette routine est réalisée par : 
% > igcd(a,b); 

x=a ;
y=b ; 
while y>0 
    [q,r] = div(x,y);
    if r==0
        PGCD = y;
        y = 0 ;
    else
        [q1,r1] = div(y,r);
        x = r;
        PGCD = x ;
        y=r1 ;
    end
end
