Una programación en GAP sería, en sentido totalmente numérico, es
gap> ecuadiofan:=function(a,b,c)
> local mcm, res, num, resul;
> mcm:=Gcd(a,b);
> res:=RemInt(c,mcm);
> num:=c/mcm;
> resul:=num*GcdRepresentation(a,b);
> if res=0 then return resul;
> else Print("No es posible operar");
> fi;
> end;;
#Ejemplo: Una solución entera de 3200x+1536y=256 es
gap> ecuadiofan(3200,1536,256);
[ 2, -4 ]
Es decir: 3200(2) + 1536(-4) = 256