Пример #1
0
        public void MultiplesModel_InitialValues_CorrectDefaultValues()
        {
            IMultiples multiples = new Multiples();

            Assert.AreEqual(0, multiples.Values.Count);
            Assert.AreEqual(0, multiples.GetSum());
        }
Пример #2
0
        private Multiples CalculateMultiples(long l, string salt)
        {
            var md5       = MD5.Calculate($"{salt}{l}");
            var multiples = new Multiples();

            for (int i = 0; i < md5.Length; i++)
            {
                int j = 1;

                for (; j < 5; j++)
                {
                    if (i + j >= md5.Length)
                    {
                        break;
                    }
                    if (md5[i] != md5[i + j])
                    {
                        break;
                    }
                }

                if (j >= 3 && multiples.Triplets == "")
                {
                    multiples.Triplets = md5[i].ToString();
                }
                if (j >= 5)
                {
                    multiples.Quintlets += md5[i];
                }
            }

            return(multiples);
        }
Пример #3
0
        public void TestMultiples()
        {
            List <int> testlist = new List <int>();

            testlist.Add(3);
            testlist.Add(6);
            testlist.Add(9);
            Assert.Equal(testlist, Multiples.of(3, 10));
            Assert.NotEqual(testlist, Multiples.of(5, 10));
        }
Пример #4
0
        public void MultiplesModel_AddingMultipleMultiples_SumAndListCountIsCorrect()
        {
            IMultiples multiples = new Multiples();

            multiples.Values.Add(4);
            multiples.Values.Add(6);

            Assert.AreEqual(2, multiples.Values.Count);
            Assert.AreEqual(10, multiples.GetSum());
        }
        public void SumOfMultiples2()
        {
            List <int> multiples = new List <int> {
                2, 5, 7
            };

            int lowerBoundary = 0;
            int upperBoundary = 10;

            int result = Multiples.SumOfMultiples(multiples, lowerBoundary, upperBoundary);

            Assert.AreEqual(32, result);
        }
        public void SumOfMultiples()
        {
            int firstMultiple  = 3;
            int secondMultiple = 7;

            List <int> multiples = new List <int> {
                firstMultiple, secondMultiple
            };

            int lowerBoundary = 0;
            int upperBoundary = 10;

            int result = Multiples.SumOfMultiples(multiples, lowerBoundary, upperBoundary);

            Assert.AreEqual(25, result);
        }
Пример #7
0
        static void Main(string[] args)
        {
            int        sum;
            List <int> multiplesOfFive  = new List <int>();
            List <int> multiplesOfThree = new List <int>();
            List <int> allmultiples     = new List <int>();

            multiplesOfFive  = Multiples.of(5, 10);
            multiplesOfThree = Multiples.of(3, 10);
            allmultiples     = multiplesOfFive.Union(multiplesOfThree).Distinct().ToList();
            sum = allmultiples.Sum();
            Console.WriteLine($"The sum of all multiples of three or five less than 10 is {sum}");
            multiplesOfFive  = Multiples.of(5, 1000);
            multiplesOfThree = Multiples.of(3, 1000);
            allmultiples     = multiplesOfFive.Union(multiplesOfThree).Distinct().ToList();
            sum = allmultiples.Sum();
            Console.WriteLine($"The sum of all multiples of three or five less than 1000 is {sum}");
        }
        /// <summary>
        /// Calcul de la résistance
        /// </summary>
        private void CalculateResistor()
        {
            string first       = firstNumber > -1 ? firstNumber.ToString() : string.Empty;
            string second      = secondNumber > -1 ? secondNumber.ToString() : string.Empty;
            string third       = thirdNumber > -1 ? thirdNumber.ToString() : string.Empty;
            string stringValue = string.Empty;
            double doubleValue = 0;

            if (SelectedResistorRing == 0)
            {
                third = string.Empty;
            }

            stringValue = string.Concat(first, second, third);
            double.TryParse(stringValue, out doubleValue);
            doubleValue   = doubleValue * multiplicator;
            ResistorValue = doubleValue;

            multipleIndex = 0;
            while (doubleValue >= 1000)
            {
                doubleValue /= 1000;
                ++multipleIndex;
            }

            //SelectedMultiple = Multiples.Single(x => x.Index == multipleIndex).Index;
            //TbColorsValue.Text = doubleValue.ToString();

            Ampere   = CalculateAmpere();
            Watt     = CalculateWatt();
            E6Value  = CalculateESerie(ESerie.ESeries.E6);
            E12Value = CalculateESerie(ESerie.ESeries.E12);
            E24Value = CalculateESerie(ESerie.ESeries.E24);
            E48Value = CalculateESerie(ESerie.ESeries.E48);
            E96Value = CalculateESerie(ESerie.ESeries.E96);

            Resistor.Multiple     = Multiples.Where(x => x.Index == multipleIndex).Single();
            Resistor.Value        = (double)ResistorValue;
            Resistor.DisplayValue = doubleValue.ToString();

            SetResistorDisplay();
        }
Пример #9
0
        public static void Run()
        {
            Multiples Three = new Multiples(3, 1000);
            Multiples Five  = new Multiples(5, 1000);


            // Gather their multiples
            Thread T0 = new Thread(Three.MultiplesOff);
            Thread T1 = new Thread(Five.MultiplesOff);

            T0.Start();
            T1.Start();

            T0.Join();
            T1.Join();

            Console.WriteLine("Multiples of 3, less than 1000:");
            foreach (double N in (List <double>)Three.Result)
            {
                Console.Write(N + ", ");
            }

            Console.WriteLine("\n\nMultiples of 5, less than 1000:");
            foreach (double N in (List <double>)Five.Result)
            {
                Console.Write(N + ", ");
            }

            // Gather results, and merge, and remove duplicates
            List <double> ResultThree = (List <double>)Three.Result;
            List <double> ResultFive  = (List <double>)Five.Result;

            double Result = Maths.Sum(ResultThree.Union(ResultFive));

            Console.Write("\n\nTotal Sum: ");

            Console.WriteLine(Result);

            Console.WriteLine("\n\nHit a key to close.");
            Console.ReadKey();
        }
Пример #10
0
 static void a_FoundFive(object sender, Multiples e)
 {
     System.Console.WriteLine("Multiple of five reached: ", e.Total);
 }
Пример #11
0
 public void Setup()
 {
     multiples = new Multiples();
 }
Пример #12
0
    // Generates number set based on rule set
    public static int[] Generate(int numberOfAnswers, int numberOfCorrectAnswers, int[] numberRange, string rule)
    {
        int[] set = new int[numberOfAnswers];

        // If mode is challenge, a random ruleset will be chosen
        if (rule == "challenge")
        {
            rule = ruleSets[Random.Range(0, ruleSets.Length - 1)];
        }

        // Generate correct/incorrect answers per rule set
        int possibleAnswer;

        switch (rule)
        {
        case "primes":
            int tempmax = 0;
            for (int i = 0; i < numberOfCorrectAnswers; i++)
            {
                do
                {
                    possibleAnswer = Random.Range(numberRange[0], numberRange[1]);
                }while (!Primes.Is(possibleAnswer));
                set[i]  = possibleAnswer;
                tempmax = i;
            }
            Debug.Log("Number of correct answers: " + numberOfCorrectAnswers +
                      "\nIndex: " + tempmax);
            for (int i = numberOfCorrectAnswers; i < numberOfAnswers; i++)
            {
                do
                {
                    possibleAnswer = Random.Range(numberRange[0], numberRange[1]);
                }while (Primes.Is(possibleAnswer));
                set[i] = possibleAnswer;
            }
            break;

        case "multiples":
            int factor = Random.Range(0, 10);
            for (int i = 0; i < numberOfCorrectAnswers; i++)
            {
                do
                {
                    possibleAnswer = Random.Range(numberRange[0], numberRange[1]);
                }while (!Multiples.Is(possibleAnswer, factor));
                set[i] = possibleAnswer;
            }
            for (int i = numberOfCorrectAnswers; i < numberOfAnswers; i++)
            {
                do
                {
                    possibleAnswer = Random.Range(numberRange[0], numberRange[1]);
                }while (Multiples.Is(possibleAnswer, factor));
                set[i] = possibleAnswer;
            }
            break;

        case "factors":
            int multiple = Random.Range(0, 10);
            for (int i = 0; i < numberOfCorrectAnswers; i++)
            {
                do
                {
                    possibleAnswer = Random.Range(numberRange[0], numberRange[1]);
                }while (!Multiples.Is(possibleAnswer, multiple));
                set[i] = possibleAnswer;
            }
            for (int i = numberOfCorrectAnswers; i < numberOfAnswers; i++)
            {
                do
                {
                    possibleAnswer = Random.Range(numberRange[0], numberRange[1]);
                }while (Multiples.Is(possibleAnswer, multiple));
                set[i] = possibleAnswer;
            }
            break;
        }
        set = Shuffle(set);
        return(set);
    }
Пример #13
0
        public void Test(int number, int limit, int[] expected)
        {
            var result = Multiples.Find(number, limit);

            result.Should().BeEquivalentTo(expected);
        }
Пример #14
0
 /// <summary>
 /// Constructor to implement rules for 'Regster' event
 ///
 /// BaseEvent handles processing, this constructor sets the multiples and values to return
 /// </summary>
 public Register()
 {
     Multiples.Add(3, EventLibConstants.Register);
     Multiples.Add(5, EventLibConstants.Patient);
 }
Пример #15
0
 /// <summary>
 /// Constructor to implement rules for 'Diagnose' event
 ///
 /// BaseEvent handles processing, this constructor sets the multiples and values to return
 /// </summary>
 public Diagnose()
 {
     Multiples.Add(2, DiagnoseLibConstants.Diagnose);
     Multiples.Add(7, DiagnoseLibConstants.Patient);
 }
Пример #16
0
 /// <summary>
 /// Constructor to implement rules for 'Test' event
 ///
 /// BaseEvent handles processing, this constructor sets the multiples and values to return
 /// </summary>
 public Test()
 {
     Multiples.Add(4, TestLibConstants.Test);
     Multiples.Add(11, TestLibConstants.Patient);
 }