A Maple egy fejlett matematikai problémamegoldó és programozói szoftver.
  • xDJCx
    #448

    A tétel szerint minden egész előáll 4 négyzetszám összegeként, háromra már nem igaz ez. Erre is van külön tétel..


    LANGRANGE:=proc(n::posint)
    local k,m,s;
    s:=cat(n," elõáll 3 négyzetszám összegeként. ");
    for k from 0 to n do
    for m from 0 to n do
    if 4^k*(8*m+7)=n then s:=cat(n," nem all elo 3 negyzetszam osszegekent! "):end if;
    end do;
    end do;
    s;
    end proc;


    LANGRANGE(168);# pl. 168 nem áll elő 3 négyzetszám összegeként


    2. eljárás: 1..n-ig megnézi, melyek nem állnak elő 3 négyzetszám, összegeként:

    LANGRANGEs:=proc(N::list)
    local k,m,n,s,nemallnakelo,t;
    n:=nops(N);nemallnakelo:=[]:
    for t from 1 to n do
    for k from 0 to n do
    for m from 0 to n do
    if 4^k*(8*m+7)=N[t] then nemallnakelo:=[nemallnakelo[],N[t]]:end if;
    end do;
    end do;
    end do;
    lprint(cat("Ezek az egeszek nem allnak elõ 3 negyzetszam osszegekent 1- ",n,"-ig:"));nemallnakelo;
    end proc;


    LANGRANGEs([$1..200]);# 1.. 200-ig


    Vesd össze:

    http://www.research.att.com/~njas/sequences/A004215