% A for statement for(Identifier, Initial, Increment, Final) % use like this: for(i,1,2,10),i(I)|.. for(Label,F):-for(Label,1,1,F). for(Label,I,F):-for(Label,I,1,F). for(Label,I,S,F):- V=I,V=N,!, Sqrt is I-1, abolish(i). pyth(N):-for(i,N),i(I), I1 is I+1, for(j,I),j(J), for(k,I1,N),k(K), K*K=:=I*I+J*J, print([I,J,K]). sample(N):-for(i,N),i(I), for(j,I),j(J), for(k,J),k(K),print([I,J,K]). lagrange(N):-isqrt(N,L), I1 is N - L*L, for(i,0,1,I1),i(I),prin(I),prin(' '), J1 is I1 - I*I, for(j,I,1,J1),j(J),prin(J),prin(' '), K1 is J1 - J*J, for(k,J,1,K1),k(K),prin(K),prin(' '), N=:=I*I+J*J+K*K+L*L,print,print([I,J,K,L]).