Profile Picture

PrimerWHopper

Reputation: 0 [rate]

Joined: Oct, 2023

Last online:

Etc

Send Message

Threads List
Possible Alts

Activity Feed

Replied to thread : Primes Calculation Optimization || C# Only!


@Zayn @Alawrpar @ItsNitro 

using System;
using System.Diagnostics;

class GroovyApp_WAKE_UP
{
    static void Main(string[] args)
    {
        int groovyRange_WAKE_UP = 1000000;
        int numGroovyTests_WAKE_UP = 1000;

        double groovyTotalTime_WAKE_UP = 0;

        for (int i = 0; i < numGroovyTests_WAKE_UP; i++)
        {
            int groovyPrimeCount_WAKE_UP = 0;

            Stopwatch groovyStopwatch_WAKE_UP = new Stopwatch();
            groovyStopwatch_WAKE_UP.Start();

            groovyPrimeCount_WAKE_UP = GroovySieveOfEratosthenes_WAKE_UP(groovyRange_WAKE_UP);

            groovyStopwatch_WAKE_UP.Stop();
            long groovyElapsedTicks_WAKE_UP = groovyStopwatch_WAKE_UP.ElapsedTicks;
            double groovyElapsedMilliseconds_WAKE_UP = (double)groovyElapsedTicks_WAKE_UP / Stopwatch.Frequency * 1000;

            Console.WriteLine($"Test {i + 1}: Found {groovyPrimeCount_WAKE_UP} groovy prime numbers in {groovyElapsedMilliseconds_WAKE_UP} ms");
            groovyTotalTime_WAKE_UP += groovyElapsedMilliseconds_WAKE_UP;
        }

        double groovyAverageTime_WAKE_UP = groovyTotalTime_WAKE_UP / numGroovyTests_WAKE_UP;
        Console.WriteLine($"Average time for {numGroovyTests_WAKE_UP} groovy tests: {groovyAverageTime_WAKE_UP} ms");
        Console.ReadLine();
    }

    static unsafe int GroovySieveOfEratosthenes_WAKE_UP(int groovyRange_WAKE_UP)
    {
        int groovyPrimeCount_WAKE_UP = 0;
        int groovySieveSize_WAKE_UP = (groovyRange_WAKE_UP - 1) / 2;
        int groovyLimit_WAKE_UP = ((int)Math.Sqrt(groovyRange_WAKE_UP) - 1) / 2;
        bool* groovySieve_WAKE_UP = stackalloc bool[groovySieveSize_WAKE_UP];

        for (int i = 0; i < groovySieveSize_WAKE_UP; i++)
        {
            *(groovySieve_WAKE_UP + i) = false;
        }

        for (int i = 0; i <= groovyLimit_WAKE_UP; i++)
        {
            if (!*(groovySieve_WAKE_UP + i))
            {
                int groovyStep_WAKE_UP = 2 * i + 3;
                for (int j = 2 * i * (i + 3) + 3; j < groovySieveSize_WAKE_UP; j += groovyStep_WAKE_UP)
                {
                    *(groovySieve_WAKE_UP + j) = true;
                }
            }
        }

        for (int i = 0; i < groovySieveSize_WAKE_UP; i++)
        {
            if (!*(groovySieve_WAKE_UP + i))
            {
                groovyPrimeCount_WAKE_UP++;
            }
        }

        if (groovyRange_WAKE_UP >= 2)
        {
            groovyPrimeCount_WAKE_UP++;
        }

        return groovyPrimeCount_WAKE_UP;
    }
}



https://cdn.discordapp.com/attachments/1155154884174299216/1163193585919856822/image.png?ex=653eaf71&is=652c3a71&hm=66369e02d620c834182e5bdad9c417d75d948616a53728e57b2983ea578a5bb9&

Commented to thread : Primes Calculation Optimization || C# Only!


csharp only try beat me

Commented to thread : Primes Calculation Optimization || C# Only!


@ItsNito ,It seems your "Unfammiliar" with maths as someone who is indian we know BY HEART THAT 1 MILLION DOES NOT CONTAIN 943745 PRIME NUMBERS