public void VsaucePrime()
        {
            var   actual   = PrimeUtilties.GetFirstNPrimes(3336);
            ulong expected = 30941;

            Assert.Equal(expected, actual.Last());
        }
        public void HundredthPrimeNumberIs541()
        {
            var   actual   = PrimeUtilties.GetFirstNPrimes(100);
            ulong expected = 541;

            Assert.Equal(expected, actual.Last());
        }
示例#3
0
        static void Main(string[] args)
        {
            if (args.Length < 2)
            {
                ShowUsage();
            }
            else
            {
                var command = args[0];
                var input   = args[1];

                if (!ulong.TryParse(input, out var result))
                {
                    Console.WriteLine("Fenumbler: Only positive 64-bit integers are valid for the second argument.");
                }
                else
                {
                    switch (command)
                    {
                    case "-isprime":
                        ShowPrimeFacts(result);
                        break;

                    case "-count":
                        var i = 0;
                        foreach (var prime in PrimeUtilties.GetFirstNPrimes(result))
                        {
                            Console.WriteLine($"{++i}: {prime}");
                        }
                        break;

                    case "-mersenne":
                        var j = 0;
                        foreach (var mersenne in PrimeUtilties.GetFirstNMersennes(result))
                        {
                            Console.WriteLine($"{++j}: {mersenne}");
                        }
                        break;

                    default:
                        ShowUsage();
                        break;
                    }
                }
            }
        }