Ejemplo n.º 1
0
        public void Crossover()
        {
            parent newChild = new parent();

            newChild.ata(firstgenA, secondgenXn);
            newChild.ata(secondgenA, firstgenXn);
        }
        static void Main(string[] args)
        {
            parent deneme = new parent();

            double[,] dizi = new double[40, 3];

            {
                {
                    for (int i = 0; i < 20; i++)
                    {
                        int    saat   = Convert.ToInt32(DateTime.Now.Hour);
                        int    gun    = Convert.ToInt32(DateTime.Now.Day);
                        int    saniye = Convert.ToInt32(DateTime.Now.Millisecond);
                        int    dakika = Convert.ToInt32(DateTime.Now.Minute);
                        double xn     = random.xdeger(saat, gun, saniye, dakika);
                        double a      = random.adeger(saat, gun, saniye, dakika);
                        double asdf   = (deneme.ata(xn, a));
                        if (asdf <= 1500)
                        {
                            dizi[i, 0] = xn;
                            dizi[i, 1] = a;
                            dizi[i, 2] = asdf;
                            Console.WriteLine("A değeri = " + a);
                            Console.WriteLine("Xn değeri = " + xn);
                            Console.WriteLine("Aradaki fark = " + asdf);
                            Console.WriteLine(i + ". iterasyon da bulundu");
                            break;
                        }
                    }
                }
            }
            double[] yeni = new double[20];
            for (int i = 0; i < 20; i++)
            {
                yeni[i] = dizi[i, 2];
            }
            Array.Sort(yeni);

            double[,] caprazla = new double[2, 3];
            foreach (int i in yeni)
            {
                if (i < 2)
                {
                    if (yeni[i] == dizi[i, 2])
                    {
                        caprazla[0, 0] = dizi[i, 0];
                        caprazla[0, 1] = dizi[i, 1];
                        caprazla[0, 2] = dizi[i, 2];
                    }
                }
            }

            Console.ReadLine();
        }
Ejemplo n.º 3
0
        static void Main(string[] args)
        {
            caprazlama cross  = new caprazlama();
            parent     deneme = new parent();

            double[,] dizi = new double[20, 3];

            double[] sayilar = new double[20];

            for (int i = 0; i < 20; i++)
            {
                int    saat          = Convert.ToInt32(DateTime.Now.Hour);
                int    gun           = Convert.ToInt32(DateTime.Now.Day);
                int    saniye        = Convert.ToInt32(DateTime.Now.Second);
                int    dakika        = Convert.ToInt32(DateTime.Now.Minute);
                double xn            = random.xdeger(saat, gun, saniye, dakika);
                double a             = random.adeger(saat, gun, saniye, dakika);
                double collectValues = deneme.ata(xn, a);

                dizi[i, 0] = xn;
                dizi[i, 1] = a;
                dizi[i, 2] = collectValues;

                sayilar[i] = collectValues;
            }

            Array.Sort(sayilar);
            Console.WriteLine("birinci" + sayilar[0] + "ikinci" + sayilar[1]);

            for (int i = 0; i < 20; i++)
            {
                if (dizi[i, 2] == sayilar[0])
                {
                    Console.WriteLine("xnEniyi" + dizi[i, 0] + "a" + dizi[i, 1]);
                    cross.firstgenA  = dizi[i, 0];
                    cross.firstgenXn = dizi[i, 1];
                }
                if (dizi[i, 2] == sayilar[1])
                {
                    Console.WriteLine("xnÝkinciEniyi" + dizi[i, 0] + "a" + dizi[i, 1]);
                    cross.secondgenA  = dizi[i, 0];
                    cross.secondgenXn = dizi[i, 1];
                }
            }
            cross.Crossover();
            Console.ReadLine();
        }