public void Main()
        {
            RoundHole hole = new RoundHole(5);
            RoundPeg  rpeg = new RoundPeg(5);

            if (hole.Fits(rpeg))
            {
                Console.WriteLine("Round peg r5 fits round hole r5.");
            }

            SquarePeg smallSqPeg = new SquarePeg(2);
            SquarePeg largeSqPeg = new SquarePeg(20);
            // hole.fits(smallSqPeg); // not compiled

            SquarePegAdapter smallSqPegAdapter = new SquarePegAdapter(smallSqPeg);
            SquarePegAdapter largeSqPegAdapter = new SquarePegAdapter(largeSqPeg);

            if (hole.Fits(smallSqPegAdapter))
            {
                Console.WriteLine("Square peg w2 fits round hole r5.");
            }

            if (!hole.Fits(largeSqPegAdapter))
            {
                Console.WriteLine("Square peg w20 does not fit into round hole r5.");
            }
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            Console.WriteLine("Введите радиус отверстия: ");
            int       radius_hole = int.Parse(Console.ReadLine());
            RoundHole hole        = new RoundHole(radius_hole);

            Console.WriteLine("Укажите радиус вставляемого в отверстие цилиндра: ");
            int      radius_peg = int.Parse(Console.ReadLine());
            RoundPeg peg        = new RoundPeg(radius_peg);

            if (hole.Fits(peg) == true)
            {
                Console.WriteLine("Вставило норм!");
            }
            else
            {
                Console.WriteLine("Не вставляет!");
            }

            Console.WriteLine("Укажите ширину обьекта квадратной формы: ");
            int              width   = int.Parse(Console.ReadLine());
            SquarePeg        square  = new SquarePeg(width);
            SquarePegAdapter adapter = new SquarePegAdapter(square);

            if (hole.Fits(adapter) == true)
            {
                Console.WriteLine("зашло!");
            }
            else
            {
                Console.WriteLine("Не зашло!");
            }
        }
        static void Main(string[] args)
        {
            RoundHole        hole   = new RoundHole(10);
            RoundPeg         round  = new RoundPeg(9);
            SquarePeg        square = new SquarePeg(8);
            SquarePegAdapter Adapte = new SquarePegAdapter(square);


            if (hole.Fits(round) == true)
            {
                Console.WriteLine("Круглый влез");
            }
            else
            {
                Console.WriteLine("Круглый не влез");
            }
            Console.WriteLine("==================");

            if (hole.Fits(Adapte) == true)
            {
                Console.WriteLine("Обрезали квадрат и он влез!");
            }
            else
            {
                Console.WriteLine("Обрезание не помогло");
            }
        }
Esempio n. 4
0
        public void DoStuff()
        {
            // SquarePage har sidan = 2
            // RoundPeg har radien 1 och alltså diametern 2

            var squarePeg = new SquarePeg(2);

            // Triviala test
            {
                var roundHole = new RoundHole(1);
                var roundPeg  = new RoundPeg(1);
                Assert.IsTrue(roundHole.Fits(roundPeg));
            }

            // Triviala test
            {
                var roundHole = new RoundHole(1);
                var roundPeg  = new RoundPeg(1.001);
                Assert.IsFalse(roundHole.Fits(roundPeg));
            }

            {
                var roundHole = new RoundHole(1);
                Assert.IsFalse(roundHole.Fits(squarePeg));
            }
            {
                var roundHole = new RoundHole(Math.Sqrt(2));
                Assert.IsTrue(roundHole.Fits(squarePeg));
            }
            {
                var roundHole = new RoundHole(Math.Sqrt(2) - 0.0001);
                Assert.IsFalse(roundHole.Fits(squarePeg));
            }
        }
        public void SquarePeg_Case_NewInstance()
        {
            int width = 6;

            var squarePeg = new SquarePeg(width);

            Assert.Equal(width, squarePeg.Width);
        }
Esempio n. 6
0
        public void SquarePegAdapter_Case_GetRadius()
        {
            var squarePeg        = new SquarePeg(9);
            var squarePegAdapter = new SquarePegAdapter(squarePeg);

            var radius = squarePegAdapter.GetRadius();

            Assert.Equal(5.656854249492381, radius);
        }
Esempio n. 7
0
        static void Main(string[] args)
        {
            RoundPeg  RP = new RoundPeg(6);
            SquarePeg SP = new SquarePeg(5);

            ConsoleApp1.Source.Adapter.Adapter A = new ConsoleApp1.Source.Adapter.Adapter(SP);
            RoundHole RH = new RoundHole(7);

            Console.WriteLine(RH.fits(A));
        }
        public void Squarepeg_Case_GetSquare()
        {
            int result    = 16;
            int with      = 4;
            var squarePeg = new SquarePeg(with);

            double square = squarePeg.GetSquare();

            Assert.Equal(result, square);
        }
Esempio n. 9
0
        public void Run()
        {
            RoundHole rh = new RoundHole(5);

            RoundPeg rp = new RoundPeg(4);

            rh.Put(rp);

            SquarePeg sp = new SquarePeg(1);

            RoundPeg str = new SquareToRound(sp);

            rh.Put(str);
        }
Esempio n. 10
0
        public static void Test()
        {
            RoundHole hole = new RoundHole(5);
            RoundPeg  peg  = new RoundPeg(5);

            System.Console.WriteLine(hole.Fits(peg));

            SquarePeg smallSquare = new SquarePeg(5);
            SquarePeg largeSquare = new SquarePeg(10);

            //System.Console.WriteLine(hole.Fits(smallSquare));

            SquarePegAdapter smallSquareAdapter = new SquarePegAdapter(smallSquare);
            SquarePegAdapter largeSquareAdapter = new SquarePegAdapter(largeSquare);

            System.Console.WriteLine(hole.Fits(smallSquareAdapter));
            System.Console.WriteLine(hole.Fits(largeSquareAdapter));
        }
Esempio n. 11
0
        static void Main()
        {
            // EN: Round fits round, no surprise.
            //
            // RU: Круглое к круглому — всё работает.
            RoundHole hole = new RoundHole(5);
            RoundPeg  rpeg = new RoundPeg(5);

            if (hole.Fits(rpeg))
            {
                Console.WriteLine("Round peg r5 fits round hole r5.");
            }

            SquarePeg smallSqPeg = new SquarePeg(2);
            SquarePeg largeSqPeg = new SquarePeg(20);
            // EN: hole.fits(smallSqPeg); // Won't compile.
            //
            // RU: hole.fits(smallSqPeg); // Не скомпилируется.

            // EN: Adapter solves the problem.
            //
            // RU: Адаптер решит проблему.
            SquarePegAdapter smallSqPegAdapter = new SquarePegAdapter(smallSqPeg);
            SquarePegAdapter largeSqPegAdapter = new SquarePegAdapter(largeSqPeg);

            if (hole.Fits(smallSqPegAdapter))
            {
                Console.WriteLine("Square peg w2 fits round hole r5.");
            }
            if (hole.Fits(largeSqPegAdapter))
            {
                Console.WriteLine("Square peg w20 does not fit into round hole r5.");
            }

            Console.ReadKey();
        }
Esempio n. 12
0
 public SquarePegAdapter(SquarePeg squarePeg) : base(0)
 {
     _squarePeg = squarePeg;
 }
 public SquarePegAdapter(SquarePeg peg)
 {
     this.peg = peg;
 }
Esempio n. 14
0
 public SquarePegAdapter(SquarePeg peg)
 {
     _peg = peg;
 }
Esempio n. 15
0
 public SquarePegAdapter(SquarePeg squarePeg) : base(squarePeg.GetSquare())
 {
     SquarePeg = squarePeg;
 }
Esempio n. 16
0
 // Nackdel: vi måste skapa denna metod (och vi kanske inte kan modifiera RoundHole)
 public bool Fits(SquarePeg peg) => peg.Width * Math.Sqrt(2) / 2 <= Radius;