Exemplo n.º 1
0
        public void ShoulReturnNameAndSecondOfTopSpeedBiker()
        {
            var bikers = new Biker[] {
                new Biker("tibi", 0.75, new Record[] { new Record(0.5, 1), new Record(1, 2) }),
                new Biker("paul", 0.95, new Record[] { new Record(1, 1), new Record(5, 2) }),
                new Biker("ana", 0.45, new Record[] { new Record(1, 1), new Record(2, 2) }),
                new Biker("maria", 0.35, new Record[] { new Record(0.5, 1), new Record(1, 2) })
            };
            NameAndSecond result = new NameAndSecond("paul", 2);

            Assert.AreEqual(result, FindBestBikerSpeed(bikers));
        }
Exemplo n.º 2
0
        NameAndSecond FindBestBikerSpeed(Biker[] biker)
        {
            NameAndSecond nameAndSecond = new NameAndSecond(biker[0].name, biker[0].record[0].second);
            double        maxSpeed      = 0;

            for (int i = 1; i < biker.Length; i++)
            {
                Record bestRotations = FindMaxRotationsForOneBiker(biker[i]);
                double speed         = bestRotations.rotations * biker[i].diameter;
                if (speed > maxSpeed)
                {
                    maxSpeed      = speed;
                    nameAndSecond = new NameAndSecond(biker[i].name, bestRotations.second);
                }
            }
            return(nameAndSecond);
        }