prime_count_smooth_sum.pl 577 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/usr/bin/perl
  2. # Daniel "Trizen" Șuteu
  3. # License: GPLv3
  4. # Date: 25 October 2016
  5. # Website: https://github.com/trizen
  6. # sum(PI(n) - PI(n - sqrt(n)), {n=1, k})
  7. # Interestingly,
  8. #
  9. # PI(n) - PI(n - sqrt(n)) = 0
  10. #
  11. # only for n={1, 125, 126}, tested with n <= 10^6.
  12. use 5.010;
  13. use strict;
  14. use warnings;
  15. use ntheory qw(prime_count);
  16. my $limit = shift(@ARGV) || 20;
  17. my $sum = 0;
  18. foreach my $n (1 .. $limit) {
  19. my $count = prime_count($n) - prime_count(int($n - sqrt($n)));
  20. $sum += $count;
  21. say $sum;
  22. }
  23. __END__
  24. 0
  25. 1
  26. 3
  27. 4
  28. 6
  29. 7
  30. 9
  31. 10
  32. 11
  33. 12
  34. 13
  35. 14
  36. 16
  37. 18
  38. 19
  39. 20
  40. 22
  41. 23
  42. 25
  43. 27