jukaukor

Kongruenssip2.jl

May 28th, 2020
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.72 KB | None | 0 0
  1. # etsitään ensin kelvolliset q
  2. # q = 6168827 + k * 12323610 = (1757+k*3510)*3511
  3. # p1 = 3511
  4. # n = q*p1 = kongruenssin 2^(n-2) = 1 (mod n) ratkaisu
  5. # ehtona q = 1 tai 7 (mod 8) ja ord(2,q) odd
  6. # tulostetaan ratkaisut n
  7. using Primes
  8. function p2kongr(knumber)
  9. s = 0
  10. nnumbers = BigInt[]
  11. for k in 1 : knumber
  12. q = big(6168827 + 12323610*k)
  13. residue = q % 8
  14. if (residue == 1 || residue == 7) && isodd(multorder(2,q))
  15. n = q * 3511
  16. if powermod(2,n-2,n) == 1
  17. s += 1
  18. println(s," ",n)
  19. push!(nnumbers,n)
  20. end
  21. end
  22. end
  23. return nnumbers
  24. end
  25. #open("kongr2.dat", "w") do io writedlm(io,nnumbers) end
Advertisement
Add Comment
Please, Sign In to add comment