1
다음 코드와 성가신 오류가 있습니다. 예기치 않은 In Maple 오류가 계속 발생합니다. 누구든지 내가 잘못하고 있다는 것을 알 수 있습니까? 왜냐하면 나는 몇 시간 동안 화면을 쳐다 보았 기 때문에 여전히 그것을 보지 못했기 때문입니다. 두 번째오류, "["예기치 않은 Maple에서
Relations:=proc(n::posint,fb::Array,{mindeps::posint:=5,verbose::truefalse:=false})
local s,np,f,j,g,f1,f2,i;
s:=isqrt(n);
np:=ArrayNumElems(fb);
f:=[];
j:=1;
g:=np+mindeps;
while nops(f) < g do
f1:=FBTrialDivision(n,s-j+1,fb);
f2:=FBTrialDivision(n,s+j,fb);
f:=[op(f),f1,f2];
j:=j+1
end do;
if verbose then
printf("smooth",g,2*j-2)
else
print("");
print(2*j-2)
end if
[Vector([seq(f[i][1], i = 1..nops(f))]),Vector([seq(f[i][2], i = 1..nops(f))]),
LinearAlgebra:-Transpose(Matrix([seq(f[i][3], i = 1..nops(f))]))]
end proc:
는 :
FindFactors:=proc(n,rels,deps)
local fact, i, x, y;
fact:=1;
for i to nops(deps) while fact = 1 or fact = n do
x:=mul(j,j=rels[1]~deps[i]);
y:=isqrt(mul(j,j=rels[2]~deps[i]));
fact:=igcd(x+y,n)
end do;
if fact <> 1 and fact <> n then
``(fact)*``(iquo(n,fact))
else
print("no trivial")
end if;
end proc:
Perfect! 제게 두 번째 것을 보시면 저에게 같은 문제가 생길 수 있습니다. 매번 x : = mul (j, j = rels [1] ~ deps [i]) 코드를 제거합니다. y : = isqrt (mul (j, j = rels [2] ~ deps [i])); 그것은 오류를 표시하지 않지만 필요합니다. 내가 도대체 뭘 잘못하고있는 겁니까? – user3092043
'j = rels [1] ~ deps [i]'가 문제입니다. 무엇이든 유효한 구문이 아닙니다. 그게 뭘 의도 한거야? 그 오른쪽 ('='기호의 오른쪽에있는 것이 무엇이든)은 범위 (예를 들어'a..b'가'a''와'b''가 정수로 평가됩니다) 또는리스트 또는 세트. – acer