📄 buding.asv
字号:
function buding(a,b,c)
A=gongyuesu(a,b);
if rem(c,A)==0
a=a/A;
b=b/A;
c=c/A;
B=1;
if a<0
a=-a;
b=-a;
c=-a;
if b<0
b=-b;
B=-1;
end
elseif b<0
b=-b;
B=-1;
end
k=1;
if a<b
t=a;
a=b;
b=t;
d=b;
r=rem(a,b);
q(k)=fix(a/b);
while r~=0
a=b;
b=r;
d=r;
r=rem(a,b);
k=k+1;
q(k)=fix(a/b);
end
q
p(1)=1;
p(2)=q(1);
Q(1)=0;
Q(2)=1;
for i=3:k
p(i)=p(i-1)*q(i-1)+p(i-2);
Q(i)=Q(i-1)*q(i-1)+Q(i-2);
end
a1=(-1)^k*Q(k)*c;
b1=(-1)^(k-1)*p(k)*c;
fprintf('x=%d+%d*t',a1,B*b);
fprintf('y=%d+%d*t',b1,a);
else
d=b;
r=rem(a,b);
q(k)=fix(a/b);
while r~=0
a=b;
b=r;
d=r;
r=rem(a,b);
k=k+1;
q
q(k)=fix(a/b);
end
p(1)=1;
p(2)=q(1);
Q(1)=0;
Q(2)=1;
k
for i=3:k
p(i)=p(i-1)*q(i-1)+p(i-2);
Q(i)=Q(i-1)*q(i-1)+Q(i-2);
end
p(k)
Q(k)
a1=(-1)^k*Q(k)*c;
b1=(-1)^(k-1)*p(k)*c;
fprintf('x=%d+%d*t',a1,B*b);
fprintf('y=%d+%d*t',b1,a);
end
else
disp('此不定方程无解')
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -