Ana Sayfa | Hakkımda | Not Sorgulama | Chat | Forum
Çevre Bölümü Vize Sınavı  indir
Gaz Bölümü Vize Sınavı indir
Tekstil Bölümü Vize Sınavı  indir
Elektrik Bölümü Vize Sınavı  indir
Mimari Restorasyon Bölümü Vize Sınavı  indir
Bilg Prog Bölümü 1.Öğretim Veritabanı Vize Sınavı  indir
Bilg Prog Bölümü 2.Öğretim Veritabanı Vize Sınavı  indir
Bilg Prog Bölümü 1.Öğretim Grafik Animasyon Vize Sınavı  indir
Bilg Prog Bölümü 2.Öğretim Grafik Animasyon Vize Sınavı  indir

<Window x:Class="hata_yayma_wpf.Window1"

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        xmlns:dgs="http://schemas.microsoft.com/wpf/2008/toolkit"

    Title="Hatayı Geriye Yayma (Ahmet Haşim Yurttakal)" Height="600" WindowState="Maximized" Width="900" >

    <Window.Resources>

        <ResourceDictionary>

            <ResourceDictionary.MergedDictionaries>

                <ResourceDictionary Source="Themes\DataGrid.Generic.xaml"/>

                <ResourceDictionary Source="Themes\Brushes.xaml"/>

            </ResourceDictionary.MergedDictionaries>

 

        </ResourceDictionary>

    </Window.Resources>

    <Grid>

        <Canvas x:Name="Ekran"></Canvas>

        <Menu Height="30" VerticalAlignment="Top">

            <MenuItem x:Name="nm" Header="Nöron Menüsü">

            <MenuItem Header="Yükle" Click="MenuItem_Click">

               

            </MenuItem>

            <MenuItem Header="Çalıştır" x:Name="calistir" Click="calistir_Click">

               

 

            </MenuItem>

                <MenuItem Header="Test Et" x:Name="calistir1" Click="calistir_Click">

 

 

                </MenuItem>

 

 

            </MenuItem>

            <MenuItem Header="Raporlama">

                <MenuItem Header="Göster" x:Name="goster" Click="goster_click">

 

                </MenuItem>

                <MenuItem Header="Gizle" x:Name="gizle" Click="gizle_click" >

 

                </MenuItem>

                <MenuItem Header="Kaydet" x:Name="kaydet"  >

 

                </MenuItem>

                <MenuItem Header="Yazdır" x:Name="yazdir" Click="yazdir_click" >

 

            </MenuItem>

               

            </MenuItem>

            <MenuItem Header="Seçim">

                <MenuItem Header="Tümünü Seç" x:Name="menu_hepsini_sec" Click="menu_hepsini_sec_Click"></MenuItem>

                <MenuItem Header="Seçimleri Sil" x:Name="menu_hepsini_sil" Click="menu_hepsini_sil_Click"></MenuItem>

            </MenuItem>

            <MenuItem x:Name="prm" Header="Değerler">

                <MenuItem x:Name="deger_e" Header="E"></MenuItem>

                <MenuItem x:Name="deger_alfa" Header="Öğrenim Hızı"></MenuItem>

                <MenuItem x:Name="deger_moment" Header="Momentum"></MenuItem>

               

            </MenuItem>

            <MenuItem x:Name="cikis" Header="Çıkış"></MenuItem>

 

        </Menu>

        <dgs:DataGrid Opacity="0" x:Name="dg" Margin="0,26,0,0" Width="Auto" AutoGenerateColumns="False">

            <dgs:DataGrid.Columns>

                <dgs:DataGridTextColumn  Header="No"

                                        Binding="{Binding sira}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn Header="Xb"

                                        Binding="{Binding X0}" IsReadOnly="True" />

               

                <dgs:DataGridTextColumn x:Name="a2" Header="X1"

                                        Binding="{Binding X1}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="a3" Header="X2"

                                        Binding="{Binding X2}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="a4" Header="X3"

                                        Binding="{Binding X3}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="a5" Header="X4"

                                        Binding="{Binding X4}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="a6" Header="X5"

                                        Binding="{Binding X5}" IsReadOnly="True" />

               

                <dgs:DataGridCheckBoxColumn Header="Kontrol" Binding="{Binding kont}"></dgs:DataGridCheckBoxColumn>

               

                <dgs:DataGridTextColumn Header="Y1"

                                        Binding="{Binding Y1}" IsReadOnly="True" />

               <dgs:DataGridTextColumn Header="Y2"

                                        Binding="{Binding Y2}" IsReadOnly="True" />

               

              

                <dgs:DataGridTextColumn x:Name="d1" Header="XB6"

                                        Binding="{Binding XB6}" IsReadOnly="True" />

               

                <dgs:DataGridTextColumn x:Name="d2"  Header="XB7"

                                        Binding="{Binding XB7}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn  x:Name="d3" Header="X16"

                                        Binding="{Binding X16}" IsReadOnly="True" />

               

                <dgs:DataGridTextColumn x:Name="d4"  Header="X17"

                                        Binding="{Binding X17}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="d5"  Header="X26"

                                        Binding="{Binding X26}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn  x:Name="d6" Header="X27"

                                        Binding="{Binding X27}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="d7"  Header="X36"

                                        Binding="{Binding X36}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="d8"  Header="X37"

                                        Binding="{Binding X37}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="d9"  Header="X46"

                                        Binding="{Binding X46}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="d10"  Header="X47"

                                        Binding="{Binding X47}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="d11"  Header="X56"

                                        Binding="{Binding X56}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn x:Name="d12"  Header="X57"

                                        Binding="{Binding X57}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn Header="XB8"  x:Name="d13" 

                                        Binding="{Binding XB8}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn Header="XB9"  x:Name="d14"

                                        Binding="{Binding XB9}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn Header="X68"  x:Name="d15"

                                        Binding="{Binding X68}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn Header="X69"  x:Name="d16"

                                        Binding="{Binding X69}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn Header="X78"  x:Name="d17"

                                        Binding="{Binding X78}" IsReadOnly="True" />

 

                <dgs:DataGridTextColumn Header="X79"  x:Name="d18"

                                        Binding="{Binding X79}" IsReadOnly="True" />

               

                <dgs:DataGridTextColumn Header="E" Visibility="Collapsed"

                                        Binding="{Binding E}" IsReadOnly="True" />

               

                <dgs:DataGridTextColumn Header="Çıkış 1"

                                        Binding="{Binding c1}" IsReadOnly="True">

                   

                </dgs:DataGridTextColumn>

                <dgs:DataGridTextColumn Header="Çıkış 2"

                                        Binding="{Binding c2}" IsReadOnly="True">

 

                </dgs:DataGridTextColumn>

 

            </dgs:DataGrid.Columns>

 

        </dgs:DataGrid>

        <Label Height="28" HorizontalAlignment="Right" Margin="0,0,298,0" Name="lab_iterasyon" VerticalAlignment="Top" Width="120" FontWeight="Bold" FontSize="13"></Label>

        <Label Height="28" HorizontalAlignment="Right" Margin="0,0,171,0" Name="lab_epok" VerticalAlignment="Top" Width="120" FontWeight="Bold" FontSize="13"></Label>

    </Grid>

</Window>

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Windows;

using System.Windows.Controls;

using System.Windows.Data;

using System.Windows.Documents;

using System.Windows.Input;

using System.Windows.Media;

using System.Windows.Media.Imaging;

using System.Windows.Navigation;

using System.Windows.Shapes;

using System.Collections.ObjectModel;

using System.Diagnostics;

using System.ComponentModel;

 

namespace hata_yayma_wpf

{

    /// <summary>

    /// Interaction logic for Window1.xaml

    /// </summary>

    public partial class Window1 : Window

    {

        List<hepsi> tumu = new List<hepsi>();

       public  double Emiz = 0.0001;

       public double alfa = 2;

 

        public Window1()

        {

            InitializeComponent();

 

            cikis.Click += (sss, eee) => App.Current.Shutdown();

 

            Canvas.SetZIndex(Ekran, 20);

            gizle_goster(gorsel.gizle);

            System.Windows.Threading.DispatcherTimer zaman =

                new System.Windows.Threading.DispatcherTimer();

            zaman.Interval = new TimeSpan(0, 0, 0, 0, 500);

            zaman.Tick += (sss, eee) =>

            {

                foreach (UIElement item in Ekran.Children)

                {

                    if (item.Opacity==0)

                    {

                        Ekran.Children.Remove(item);

                        break;

                    }

                }

            };

            zaman.Start();

 

            #region Değerleri Girme

            deger_e.Click += (sss, eee) =>

                    {

                        uc_girilme uc = new uc_girilme();

                        Ekran.Children.Add(uc);

                        anime an = new anime(uc, 1);

                        uc.btn_iptal.Click += (ss, ee) => { anime anii = new anime(uc, 0); };

                        uc.btn_tamam.Click += (ss, ee) =>

                            {

                                Emiz = double.Parse(uc.tt_giris.Text);

                                anime aniiii = new anime(uc, 0);

                            };

 

                    };

 

            deger_alfa.Click += (sss, eee) =>

            {

                uc_girilme uc = new uc_girilme();

                Ekran.Children.Add(uc);

                anime anime = new anime(uc, 1);

                uc.tt_parama_adi.Text = "Öğrenme Hızı";

                uc.btn_iptal.Click += (ss, ee) => { anime ani = new anime(uc, 0); };

                uc.btn_tamam.Click += (ss, ee) =>

                {

                    alfa = double.Parse(uc.tt_giris.Text);

                    anime an = new anime(uc, 0);

 

                };

 

            };

 

            deger_moment.Click += (sss, eee) =>

            {

                uc_girilme uc = new uc_girilme();

                Ekran.Children.Add(uc);

                uc.tt_parama_adi.Text = "Momentum";

                uc.btn_iptal.Click += (ss, ee) => { anime ani = new anime(uc, 0); };

 

                uc.btn_tamam.Click += (ss, ee) =>

                {

 

                    anime an = new anime(uc, 0);

 

                };

            };

            #endregion

           

 

        }

 

   

 

        public hepsi getir(int sira)

        {

            #region  Katmanların Hazırlanması

 

            string ikili = to_ikili(sira);

            while (ikili.Length < 5)

            {

                ikili = "0" + ikili;

            }

 

            List<agirlik> giris_katmani = new List<agirlik>();

 

            for (int i = 0; i < 6; i++)

            {

                System.Threading.Thread.Sleep(100 + i);

                agirlik yeni;

                if (sira!=0)

                {

                    yeni = new agirlik("X" + i.ToString(),0);

                }else

             yeni = new agirlik("X" + i.ToString());

                giris_katmani.Add(yeni);

 

                if (i!=0)

                {

                    yeni.cikis = int.Parse(ikili[i-1].ToString());

                }

 

            }

 

            List<agirlik> gizli_katman = new List<agirlik>();

 

            for (int i = 6; i < 8; i++)

            {

                agirlik yeni;

                if (sira != 0)

                {

                    yeni = new agirlik("X" + i.ToString(), 0);

                }

                else

                    yeni = new agirlik("X" + i.ToString());

                gizli_katman.Add(yeni);

 

            }

 

            List<agirlik> cikis_katmani = new List<agirlik>();

 

            for (int i = 8; i < 10; i++)

            {

                agirlik yeni;

                if (sira != 0)

                {

                    yeni = new agirlik("X" + i.ToString(), 0);

                }

                else

                    yeni = new agirlik("X" + i.ToString());

                cikis_katmani.Add(yeni);

 

            }

            #endregion

 

            hepsi hep = new hepsi(giris_katmani, gizli_katman, cikis_katmani, sira);

            #region istenelerin kosulu

            switch (hep.sirasi)

            {

                case 0:

                    hep.istek.y1 = 0;

                    hep.istek.y2 = 0;

                    break;

                case 1:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 0;

                    break;

                case 2:

                    hep.istek.y1 = 0;

                    hep.istek.y2 = 0;

                    break;

                case 3:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 4:

                    hep.istek.y1 = 0;

                    hep.istek.y2 = 0;

                    break;

                case 5:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 0;

                    break;

                case 6:

                    hep.istek.y1 = 0;

                    hep.istek.y2 = 0;

                    break;

                case 7:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 8:

                    hep.istek.y1 = 0;

                    hep.istek.y2 = 0;

                    break;

                case 9:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 0;

                    break;

                case 10:

                    hep.istek.y1 = 0;

                    hep.istek.y2 = 0;

                    break;

                case 11:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 12:

                    hep.istek.y1 = 0;

                    hep.istek.y2 = 1;

                    break;

                case 13:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 14:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 15:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 16:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 0;

                    break;

                case 17:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 0;

                    break;

                case 18:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 0;

                    break;

 

                case 19:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 20:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 21:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 22:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 23:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 24:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 0;

                    break;

                case 25:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 0;

                    break;

                case 26:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 0;

                    break;

                case 27:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 28:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 29:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 30:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

                case 31:

                    hep.istek.y1 = 1;

                    hep.istek.y2 = 1;

                    break;

 

                default:

                    break;

            }

 

 

 

            #endregion

 

            return hep;

           

        }

 

        public class agirlik

 

        {

           public double deger1;

           public double deger2;

           public double deger3;

           public double deger4;

 

           public string adi;

           public double cikis;

 

           public agirlik(string gelen)

            {

                Random rnd = new Random();

                adi = gelen;

                deger1 = Math.Round(rnd.NextDouble() * 2 - 1, 3);

                deger2 = Math.Round(rnd.NextDouble() * 2 - 1, 3);

                deger3 = Math.Round(rnd.NextDouble() * 2 - 1, 3);

                deger4 = Math.Round(rnd.NextDouble() * 2 - 1, 3);

                if (gelen == "X0")

                {

                    cikis = 1;

                }

               

               

            }

           public agirlik(string gelen,int sifir)

           {

               Random rnd = new Random();

               adi = gelen;

              

               if (gelen == "X0")

               {

                   cikis = 1;

               }

 

 

           }

        }

 

        public class istenen

        {

            public double y1=0;

            public double y2=0;

        }

 

        public class hepsi

        {

          public  List<agirlik> giris;

           public List<agirlik> gizli;

            public List<agirlik> cikis;

            public istenen istek;

 

           public int sirasi;

 

           public hepsi(List<agirlik> giris_, List<agirlik> gizli_, List<agirlik> cikis_, int sirasi_)

           {

               giris = giris_;

               gizli = gizli_;

               cikis = cikis_;

               sirasi = sirasi_;

               istek = new istenen();

 

           }

 

        }

 

        public string to_ikili(int gelen)

        {

           

            int base_ = 2;

            string binary = Convert.ToString(gelen, base_);

            return binary;

        }

 

        public System.Collections.ObjectModel.ObservableCollection<listeye> ll = new System.Collections.ObjectModel.ObservableCollection<listeye>();

          

        private void MenuItem_Click(object sender, RoutedEventArgs e)

        {

            Stopwatch ss = new Stopwatch();

            ss.Start();

           

            for (int i = 0; i <32; i++)

            {   hepsi hh=getir(i);

                tumu.Add(hh);

                //hesapla(i);

 

                listeye yl = new listeye

                {

                    E = "0",

                    sec = false,

                    sira = i.ToString()

                    ,

                    X0 = hh.giris[0].cikis.ToString(),

                    X1 = hh.giris[1].cikis.ToString(),

                    X2 = hh.giris[2].cikis.ToString(),

                    X3 = hh.giris[3].cikis.ToString(),

                    X4 = hh.giris[4].cikis.ToString(),

                    X5 = hh.giris[5].cikis.ToString(),

                    Y1 = hh.istek.y1.ToString(),

                    Y2 = hh.istek.y2.ToString(),

                    XB6= hh.giris[0].deger1.ToString("n3"),

                    XB7 = hh.giris[0].deger2.ToString("n3"),

                    XB8 = hh.giris[0].deger3.ToString("n3"),

                    XB9 = hh.giris[0].deger4.ToString("n3"),

                    X16 = hh.giris[1].deger1.ToString("n3"),

                    X17 = hh.giris[1].deger2.ToString("n3"),

                    X26 = hh.giris[2].deger1.ToString("n3"),

                    X27 = hh.giris[2].deger2.ToString("n3"),

 

                    X36 = hh.giris[3].deger1.ToString("n3"),

                    X37 = hh.giris[3].deger2.ToString("n3"),

 

                    X46 = hh.giris[4].deger1.ToString("n3"),

                    X47 = hh.giris[4].deger2.ToString("n3"),

 

                    X56 = hh.giris[5].deger1.ToString("n3"),

                    X57 = hh.giris[5].deger2.ToString("n3"),

 

                    X68 = hh.gizli[0].deger1.ToString("n3"),

                    X69 = hh.gizli[0].deger2.ToString("n3"),

 

                    X78 = hh.gizli[1].deger1.ToString("n3"),

                    X79 = hh.gizli[1].deger2.ToString("n3"),

 

 

 

                };

                ll.Add(yl);

            }

            dg.ItemsSource = ll;

            ss.Stop();

            ss.Elapsed.TotalSeconds.ToString();

            anime an = new anime(dg, 1);

          

          

        }

 

        public class listeye

        {

            public string sira { get; set; }

            public string X0 { get; set; }

            public string X1 { get; set; }

            public string X2 { get; set; }

            public string X3 { get; set; }

            public string X4 { get; set; }

            public string X5 { get; set; }

            public bool kont { get; set; }

            public string Y1 { get; set; }

            public string Y2 { get; set; }

            public bool sec { get; set; }

            public string XB6 { get; set; }

            public string XB7 { get; set; }

            public string X16 { get; set; }

            public string X17 { get; set; }

            public string X26 { get; set; }

            public string X27 { get; set; }

            public string X36 { get; set; }

            public string X37 { get; set; }

            public string X46 { get; set; }

            public string X47 { get; set; }

            public string X56 { get; set; }

            public string X57 { get; set; }

            public string XB8 { get; set; }

            public string XB9 { get; set; }

            public string X68 { get; set; }

            public string X69 { get; set; }

            public string X78 { get; set; }

            public string X79 { get; set; }

            public string E { get; set; }

            public string c2 { get; set; }

            public string c1{ get; set; }

 

       

 

        }

 

        private void calistir_Click(object sender, RoutedEventArgs e)

        {

            calis();

            watch.Start();

 

        }

        System.Windows.Threading.DispatcherTimer timer =

                new System.Windows.Threading.DispatcherTimer();

        private void calis()

        {

            ObservableCollection<listeye> yeni = new ObservableCollection<listeye>();

            List<hepsi> yeni_tumu = new List<hepsi>();

            int i = 0;

            foreach (listeye item in ll)

            {

 

 

 

                if (item.kont == false)

                {

                    yeni.Add(item);

                    var l = (from p in tumu

                             where p.sirasi.ToString() == item.sira

                             select p).Single();

                    yeni_tumu.Add(l);

                }

 

 

            }

 

            ll = yeni;

            tumu = yeni_tumu;

 

            dg.Items.Refresh();

 

            timer.Interval = new TimeSpan(0, 0, 0, 0, 1);

 

            timer.Tick += new EventHandler(timer_Tick);

 

            timer.Start();

           

            //timer.Interval = new TimeSpan(0, 0, 0, 0, 1);

           

            //timer.Tick += new EventHandler(timer_Tick);

       

 

            //timer.Start();

 

            ////BackgroundWorker bw = new BackgroundWorker();

            ////bw.DoWork += (sss, eee) =>

            ////{

 

            ////    bool tamam = false;

            ////    while (tamam==false)

            ////    {

                   

               

            ////    for (int i = 0; i < tumu.Count; i++)

            ////    {

 

            ////        if (i!=tumu.Count-1)

            ////        {

            ////            tamam = hesapla(tumu[i].sirasi, tumu[i + 1].sirasi);

            ////            //dg.Items.Refresh();

            ////        }

            ////        System.Threading.Thread.Sleep(500);     

            ////    }}

            ////};

 

            ////bw.RunWorkerAsync();

 

 

 

           

 

                     

        }

        double epok = 0;

        double iterasyon = 0;

        decimal eeeee = 0;

        Stopwatch watch = new Stopwatch();

        void timer_Tick(object sender, EventArgs e)

        {

            epok++;

            lab_epok.Content = "Epok : " + epok.ToString();

            bool tamam = false;

            for (int i = 0; i < tumu.Count; i++)

            {

 

                if (i != tumu.Count - 1)

                {

                    tamam = hesapla(tumu[i], tumu[i + 1]);

 

                }

                else

                {

                    tamam = hesapla(tumu[i], tumu[0]);

                }

                dg.Items.Refresh();

                if (tamam == true)

                {

                    dg.Items.Refresh();

                    timer.Stop();

                    watch.Stop();

 

                    sonuc son = new sonuc();

 

                    son.l_itersyon.Content = lab_iterasyon.Content;

                    son.l_epok.Content =  lab_epok.Content;

                    son.l_sure.Content = "Geçen Süre : " + watch.Elapsed.Seconds.ToString()+ " saniye";

                   

                    son.l_e.Content = "Hata Oranı : " + eeeee.ToString();

                    lab_iterasyon.Visibility = Visibility.Collapsed;

                    lab_epok.Visibility = Visibility.Collapsed;

                    Ekran.Children.Add(son);

                    Canvas.SetLeft(son, (this.Width / 2)-son.Width/2);

                    Canvas.SetTop(son, (this.Height / 2)-son.Height/2);

                    anime an = new anime(son, 1);

                    son.btn_tamam.Click += (sss, eeee) =>

                        {

                            anime animmmm = new anime(son, 0);

                        };

 

                }

                iterasyon++;

                lab_iterasyon.Content = "İterasyon : " + iterasyon.ToString();

            }  

              

        }

 

        public bool hesapla(hepsi gelen_,hepsi siradaki_)

        {

            hepsi hsp = gelen_;

 

            hepsi srdk = siradaki_;

 

            int gelen = hsp.sirasi;

            int siradaki = srdk.sirasi;

 

            double E_;

 

            double net_6 = 0;

            foreach (agirlik item in hsp.giris)

            {

                net_6 += (item.cikis * item.deger1);

            }

            double net_7 = 0;

            foreach (agirlik item in hsp.giris)

            {

                net_7 += (item.cikis * item.deger2);

            }

 

            double f6 = 1 / (1 + Math.Exp(0 - net_6));

            double f7 = 1 / (1 + Math.Exp(0 - net_7));

 

            hsp.gizli[0].cikis = f6;

            hsp.gizli[1].cikis = f7;

 

            double net8 = f6 * hsp.gizli[0].deger1 + f7 * hsp.gizli[1].deger1 + hsp.giris[0].deger3;

            double net9 = f6 * hsp.gizli[0].deger2 + f7 * hsp.gizli[1].deger2 + hsp.giris[0].deger4;

 

            double f8 = 1 / (1 + Math.Exp(0 - net8));

            double f9 = 1 / (1 + Math.Exp(0 - net9));

 

            var tt = (from p in ll

                     where int.Parse(p.sira) == gelen_.sirasi

                     select p).Single();

            tt.c1 = f8.ToString();

            tt.c2 = f9.ToString();

 

            hsp.cikis[0].cikis = f8;

            hsp.cikis[1].cikis = f9;

 

            double s8 = f8 * (1 - f8) * (hsp.istek.y1 - f8);

            double s9 = f9 * (1 - f9) * (hsp.istek.y2 - f9);

 

            E_ = 0.5 * ((hsp.istek.y1 - f8) * (hsp.istek.y1 - f8) + (hsp.istek.y2 - f9) * (hsp.istek.y2 - f9));

 

            if (E_ > Emiz)

            {

                double s6 = f6 * (1 - f6) * ((s8 * hsp.gizli[0].deger1) + (s9 * hsp.gizli[0].deger2));

                double s7 = f7 * (1 - f7) * ((s8 * hsp.gizli[1].deger1) + (s9 * hsp.gizli[1].deger2));

 

                srdk.gizli[0].deger1 = hsp.gizli[0].deger1 + (alfa * s8 * hsp.gizli[0].cikis);

                srdk.gizli[0].deger2 = hsp.gizli[0].deger2 + (alfa * s9 * hsp.gizli[0].cikis);

 

                srdk.gizli[1].deger1 = hsp.gizli[1].deger1 + (alfa * s8 * hsp.gizli[1].cikis);

                srdk.gizli[1].deger2 = hsp.gizli[1].deger2 + (alfa * s9 * hsp.gizli[1].cikis);

 

                srdk.giris[0].deger1 = hsp.giris[0].deger1 + (alfa * s6);

                srdk.giris[0].deger2 = hsp.giris[0].deger2 + (alfa * s7);

 

                srdk.giris[0].deger3 = hsp.giris[0].deger3 + (alfa * s8);

                srdk.giris[0].deger4 = hsp.giris[0].deger4 + (alfa * s9);

 

                //foreach (agirlik item in hsp.giris)

                //{

 

                //    item.deger1 = item.deger1 +(alfa * s6 * item.cikis);

                //    item.deger2 = item.deger2 +(alfa * s7 * item.cikis);

                //}

 

                srdk.giris[1].deger1 = hsp.giris[1].deger1 + (alfa * s6 * hsp.giris[1].cikis);

                srdk.giris[1].deger2 = hsp.giris[1].deger2 + (alfa * s7 * hsp.giris[1].cikis);

 

                srdk.giris[2].deger1 = hsp.giris[2].deger1 + (alfa * s6 * hsp.giris[2].cikis);

                srdk.giris[2].deger2 = hsp.giris[2].deger2 + (alfa * s7 * hsp.giris[2].cikis);

 

                srdk.giris[3].deger1 = hsp.giris[3].deger1 + (alfa * s6 * hsp.giris[3].cikis);

                srdk.giris[3].deger2 = hsp.giris[3].deger2 + (alfa * s7 * hsp.giris[3].cikis);

 

                srdk.giris[4].deger1 = hsp.giris[4].deger1 + (alfa * s6 * hsp.giris[4].cikis);

                srdk.giris[4].deger2 = hsp.giris[4].deger2 + (alfa * s7 * hsp.giris[4].cikis);

 

                srdk.giris[5].deger1 = hsp.giris[5].deger1 + (alfa * s6 * hsp.giris[5].cikis);

                srdk.giris[5].deger2 = hsp.giris[5].deger2 + (alfa * s7 * hsp.giris[5].cikis);

 

                var k = (from p in ll

                         where int.Parse(p.sira) == siradaki

                         select p).Single();

 

                k.E = Math.Round(E_, 9).ToString();

 

                k.sira = siradaki.ToString();

 

                k.X0 = srdk.giris[0].cikis.ToString();

                k.X1 = srdk.giris[1].cikis.ToString();

                k.X2 = srdk.giris[2].cikis.ToString();

                k.X3 = srdk.giris[3].cikis.ToString();

                k.X4 = srdk.giris[4].cikis.ToString();

                k.X5 = srdk.giris[5].cikis.ToString();

                k.Y1 = srdk.istek.y1.ToString();

                k.Y2 = srdk.istek.y2.ToString();

                k.XB6 = srdk.giris[0].deger1.ToString("n3");

                k.XB7 = srdk.giris[0].deger2.ToString("n3");

                k.XB8 = srdk.giris[0].deger3.ToString("n3");

                k.XB9 = srdk.giris[0].deger4.ToString("n3");

                k.X16 = srdk.giris[1].deger1.ToString("n3");

                k.X17 = srdk.giris[1].deger2.ToString("n3");

                k.X26 = srdk.giris[2].deger1.ToString("n3");

                k.X27 = srdk.giris[2].deger2.ToString("n3");

 

                k.X36 = srdk.giris[3].deger1.ToString("n3");

                k.X37 = srdk.giris[3].deger2.ToString("n3");

 

                k.X46 = srdk.giris[4].deger1.ToString("n3");

                k.X47 = srdk.giris[4].deger2.ToString("n3");

 

                k.X56 = srdk.giris[5].deger1.ToString("n3");

                k.X57 = srdk.giris[5].deger2.ToString("n3");

 

                k.X68 = srdk.gizli[0].deger1.ToString("n3");

                k.X69 = srdk.gizli[0].deger2.ToString("n3");

 

                k.X78 = srdk.gizli[1].deger1.ToString("n3");

                k.X79 = srdk.gizli[1].deger2.ToString("n3");

 

 

 

                return false;

            }

            else

            {

                var k = (from p in ll

                         where int.Parse(p.sira) == siradaki

                         select p).Single();

 

               

 

                eeeee =decimal.Parse( k.E);

 

                dg.Items.Refresh();

                return true;

            }

 

 

 

        }

 

        private void yazdir_click(object sender, RoutedEventArgs e)

        {

            PrintDialog pr = new PrintDialog();

            if (pr.ShowDialog().Value)

            {

                pr.PrintVisual(dg, "Sonuçlar");

               

            }

        }

 

        private void secilenleri_click(object sender, RoutedEventArgs e)

        {

            ObservableCollection<listeye> yeni = new ObservableCollection<listeye>();

            List<hepsi> yeni_tumu = new List<hepsi>();

            int i=0;

            foreach (listeye item in ll)

            {

 

 

 

                if (item.kont==false)

                {

                yeni.Add(item);

                var l = (from p in tumu

                        where p.sirasi.ToString() == item.sira

                        select p).Single();

                yeni_tumu.Add(l);

                }

               

              

            }

            

            ll = yeni;

            tumu = yeni_tumu;

 

            dg.Items.Refresh();

 

            timer.Interval = new TimeSpan(0, 0, 0, 0, 1);

 

            timer.Tick += new EventHandler(timer_Tick);

 

            timer.Start();

        }

 

        #region gizle göster kısmı

        public enum gorsel

        {

            gizle, goster

        }

        public void gizle_goster(gorsel gor)

        {

 

 

            if (gor == gorsel.gizle)

            {

                d1.Visibility = Visibility.Collapsed;

                d3.Visibility = Visibility.Collapsed;

                d4.Visibility = Visibility.Collapsed;

                d5.Visibility = Visibility.Collapsed;

                d6.Visibility = Visibility.Collapsed;

                d7.Visibility = Visibility.Collapsed;

                d2.Visibility = Visibility.Collapsed;

                d8.Visibility = Visibility.Collapsed;