Exemple #1
0
        private List <LgsSonuc> OkullariHesapla()
        {
            List <LgsSonuc> OkulOrtalamalariList = new List <LgsSonuc>();

            List <LgsSonuc> okullar     = sonucList.Where(x => x.Aciklama == "-").GroupBy(x => new { x.IlceAdi, x.OkulAdi }).Select(x => x.First()).ToList();
            int             islemSayisi = okullar.Count;

            progressBar1.Maximum = islemSayisi;
            progressBar1.Value   = 0;
            int a = 0;

            //okul ortalamaları
            foreach (var okul in okullar)
            {
                var okulVerisi = sonucList.Where(x => x.OkulAdi == okul.OkulAdi && x.Aciklama == "-");

                int ogrenciSayisi = okulVerisi.Count();

                a++;
                progressBar1.Value = a;
                label4.Text        = "Okul ortalamaları hesaplanıyor. " + a + "/" + islemSayisi;

                int     turkceDogru  = okulVerisi.Sum(x => x.TurkceDogru);
                int     turkceYanlis = okulVerisi.Sum(x => x.TurkceYanlis);
                decimal turkceNet    = (turkceDogru - ((decimal)turkceYanlis / 3)) / ogrenciSayisi;

                int     matDogru  = okulVerisi.Sum(x => x.MatDogru);
                int     matYanlis = okulVerisi.Sum(x => x.MatYanlis);
                decimal matNet    = (matDogru - ((decimal)matYanlis / 3)) / ogrenciSayisi;

                int     fenDogru  = okulVerisi.Sum(x => x.FenDogru);
                int     fenYanlis = okulVerisi.Sum(x => x.FenYanlis);
                decimal fenNet    = (fenDogru - ((decimal)fenYanlis / 3)) / ogrenciSayisi;

                int     inkDogru  = okulVerisi.Sum(x => x.InkDogru);
                int     inkYanlis = okulVerisi.Sum(x => x.IngYanlis);
                decimal inkNet    = (inkDogru - ((decimal)inkYanlis / 3)) / ogrenciSayisi;

                int     dinDogru  = okulVerisi.Sum(x => x.DinDogru);
                int     dinYanlis = okulVerisi.Sum(x => x.DinYanlis);
                decimal dinNet    = (dinDogru - ((decimal)dinYanlis / 3)) / ogrenciSayisi;

                int     ingDogru  = okulVerisi.Sum(x => x.IngDogru);
                int     ingYanlis = okulVerisi.Sum(x => x.IngYanlis);
                decimal ingNet    = (ingDogru - ((decimal)ingYanlis / 3)) / ogrenciSayisi;

                decimal toplamNet           = okulVerisi.Sum(x => x.ToplamNet) / ogrenciSayisi;
                decimal sinavPuanOrtalamasi = okulVerisi.Sum(x => x.SinavPuani) / ogrenciSayisi;

                LgsSonuc sonuc = new LgsSonuc
                {
                    OgrenciSayisi = ogrenciSayisi,
                    SinavPuani    = sinavPuanOrtalamasi,
                    ToplamNet     = toplamNet,
                    TurkceDogru   = turkceDogru,
                    TurkceYanlis  = turkceYanlis,
                    TurkceNet     = turkceNet,
                    MatDogru      = matDogru,
                    MatYanlis     = matYanlis,
                    MatNet        = matNet,
                    FenDogru      = fenDogru,
                    FenYanlis     = fenYanlis,
                    FenNet        = fenNet,
                    InkDogru      = inkDogru,
                    InkYanlis     = inkYanlis,
                    InkNet        = inkNet,
                    DinDogru      = dinDogru,
                    DinYanlis     = dinYanlis,
                    DinNet        = dinNet,
                    IngDogru      = ingDogru,
                    IngYanlis     = ingYanlis,
                    IngNet        = ingNet,
                    IlceAdi       = okul.IlceAdi,
                    OkulAdi       = okul.OkulAdi
                };

                OkulOrtalamalariList.Add(sonuc);
            }
            Application.DoEvents();

            progressBar1.Value = 0;
            return(OkulOrtalamalariList);
        }
Exemple #2
0
        private void OgrenciSonuclari()
        {
            DizinIslemleri   dizinIslemleri = new DizinIslemleri();
            List <DosyaInfo> dosyalar       = dizinIslemleri.DizindekiDosyalariListele(seciliDizin);

            progressBar1.Maximum = dosyalar.Count;
            progressBar1.Value   = 0;

            foreach (DosyaInfo dosya in dosyalar)
            {
                string filePath = dosya.DizinAdresi + @"\" + dosya.DosyaAdi;

                string ilceAdi = dosya.DizinAdresi.Replace(seciliDizin, "").Replace("\\", "");

                progressBar1.Value += 1;
                label4.Text         = "Okul sayısı : " + progressBar1.Value + "/" + dosyalar.Count + " ...veriler toplanıyor.";

                DataTable table = ExcelUtil.ExcelToDataTable(filePath);


                for (int satir = 1; satir <= table.Rows.Count; satir += 18)
                {
                    string aciklama = table.Rows[satir + 5][11].ToString();
                    if (sinavAdi == "")
                    {
                        sinavAdi = table.Rows[17][0].ToString().ToUpper(CultureInfo.CurrentCulture);
                    }
                    //row
                    string tcKimlik  = table.Rows[satir - 1][7].ToString();
                    string adiSoyadi = table.Rows[satir][7].ToString();
                    string okulu     = table.Rows[satir + 3][7].ToString().Replace("İ", "İ").Replace("ı", "ı");

                    int     turkceDogru  = table.Rows[satir + 5][6].ToInt32();
                    int     turkceYanlis = table.Rows[satir + 5][8].ToInt32();
                    decimal turkceNet    = turkceDogru - ((decimal)turkceYanlis / 3);

                    int     matDogru  = table.Rows[satir + 6][6].ToInt32();
                    int     matYanlis = table.Rows[satir + 6][8].ToInt32();
                    decimal matNet    = matDogru - ((decimal)matYanlis / 3);

                    int     fenDogru  = table.Rows[satir + 7][6].ToInt32();
                    int     fenYanlis = table.Rows[satir + 7][8].ToInt32();
                    decimal fenNet    = fenDogru - ((decimal)fenYanlis / 3);

                    int     inkDogru  = table.Rows[satir + 8][6].ToInt32();
                    int     inkYanlis = table.Rows[satir + 8][8].ToInt32();
                    decimal inkNet    = inkDogru - ((decimal)inkYanlis / 3);

                    int     dinDogru  = table.Rows[satir + 10][6].ToInt32();
                    int     dinYanlis = table.Rows[satir + 10][8].ToInt32();
                    decimal dinNet    = dinDogru - ((decimal)dinYanlis / 3);

                    int     ingDogru  = table.Rows[satir + 11][6].ToInt32();
                    int     ingYanlis = table.Rows[satir + 11][8].ToInt32();
                    decimal ingNet    = ingDogru - ((decimal)ingYanlis / 3);

                    decimal sinavPuani = table.Rows[satir + 14][6].ToDecimal();
                    decimal yuzdelik   = table.Rows[satir + 12][3].ToString().Replace("Türkiye Geneli Yüzdelik Dilimi: %", "")
                                         .ToDecimal();

                    //   okulu = Encoding.UTF8.GetString(Encoding.Default.GetBytes(okulu));
                    //  adiSoyadi = Encoding.UTF8.GetString(Encoding.Default.GetBytes(adiSoyadi));
                    //  aciklama = Encoding.UTF8.GetString(Encoding.Default.GetBytes(aciklama));
                    decimal toplamNet = (turkceNet + matNet + fenNet + inkNet + dinNet + ingNet);

                    LgsSonuc sonuc = new LgsSonuc
                    {
                        Tckimlik      = tcKimlik.Trim(),
                        SinavPuani    = sinavPuani,
                        YuzdelikDilim = yuzdelik,
                        ToplamNet     = toplamNet,
                        TurkceDogru   = turkceDogru,
                        TurkceYanlis  = turkceYanlis,
                        TurkceNet     = turkceNet,
                        MatDogru      = matDogru,
                        MatYanlis     = matYanlis,
                        MatNet        = matNet,
                        FenDogru      = fenDogru,
                        FenYanlis     = fenYanlis,
                        FenNet        = fenNet,
                        InkDogru      = inkDogru,
                        InkYanlis     = inkYanlis,
                        InkNet        = inkNet,
                        DinDogru      = dinDogru,
                        DinYanlis     = dinYanlis,
                        DinNet        = dinNet,
                        IngDogru      = ingDogru,
                        IngYanlis     = ingYanlis,
                        IngNet        = ingNet,
                        Aciklama      = aciklama,
                        AdiSoyadi     = adiSoyadi,
                        IlceAdi       = ilceAdi,
                        OkulAdi       = okulu
                    };
                    sonucList.Add(sonuc);
                    //SonucManager manager = new SonucManager();
                    //manager.Insert(sonuc);

                    Application.DoEvents();
                }

                Application.DoEvents();
            }

            //dosyaları okuma bitti
        }
Exemple #3
0
        private List <LgsSonuc> IlveIlceleriHesapla()
        {
            List <LgsSonuc> ilIlceOrtalamalariList = new List <LgsSonuc>();


            List <LgsSonuc> ilceler     = sonucList.Where(x => x.Aciklama == "-").GroupBy(x => x.IlceAdi).Select(x => x.First()).ToList();
            int             islemSayisi = ilceler.Count;

            progressBar1.Maximum = islemSayisi;
            progressBar1.Value   = 0;
            int a = 0;

            //ilçe ortalamaları
            foreach (var ilce in ilceler)
            {
                var ilceVerisi = sonucList.Where(x => x.IlceAdi == ilce.IlceAdi && x.Aciklama == "-");


                int ogrenciSayisi = ilceVerisi.Count();

                a++;
                progressBar1.Value = a;

                label4.Text = "İlçe ortalamaları hesaplanıyor." + a + "/" + islemSayisi;

                int     turkceDogru  = ilceVerisi.Sum(x => x.TurkceDogru);
                int     turkceYanlis = ilceVerisi.Sum(x => x.TurkceYanlis);
                decimal turkceNet    = (turkceDogru - ((decimal)turkceYanlis / 3)) / ogrenciSayisi;

                int     matDogru  = ilceVerisi.Sum(x => x.MatDogru);
                int     matYanlis = ilceVerisi.Sum(x => x.MatYanlis);
                decimal matNet    = (matDogru - ((decimal)matYanlis / 3)) / ogrenciSayisi;

                int     fenDogru  = ilceVerisi.Sum(x => x.FenDogru);
                int     fenYanlis = ilceVerisi.Sum(x => x.FenYanlis);
                decimal fenNet    = (fenDogru - ((decimal)fenYanlis / 3)) / ogrenciSayisi;

                int     inkDogru  = ilceVerisi.Sum(x => x.InkDogru);
                int     inkYanlis = ilceVerisi.Sum(x => x.IngYanlis);
                decimal inkNet    = (inkDogru - ((decimal)inkYanlis / 3)) / ogrenciSayisi;

                int     dinDogru  = ilceVerisi.Sum(x => x.DinDogru);
                int     dinYanlis = ilceVerisi.Sum(x => x.DinYanlis);
                decimal dinNet    = (dinDogru - ((decimal)dinYanlis / 3)) / ogrenciSayisi;

                int     ingDogru  = ilceVerisi.Sum(x => x.IngDogru);
                int     ingYanlis = ilceVerisi.Sum(x => x.IngYanlis);
                decimal ingNet    = (ingDogru - ((decimal)ingYanlis / 3)) / ogrenciSayisi;


                decimal toplamNet           = ilceVerisi.Sum(x => x.ToplamNet) / ogrenciSayisi;
                decimal sinavPuanOrtalamasi = ilceVerisi.Sum(x => x.SinavPuani) / ogrenciSayisi;

                LgsSonuc sonuc = new LgsSonuc
                {
                    ToplamNet     = toplamNet,
                    SinavPuani    = sinavPuanOrtalamasi,
                    TurkceDogru   = turkceDogru,
                    TurkceYanlis  = turkceYanlis,
                    TurkceNet     = turkceNet,
                    MatDogru      = matDogru,
                    MatYanlis     = matYanlis,
                    MatNet        = matNet,
                    FenDogru      = fenDogru,
                    FenYanlis     = fenYanlis,
                    FenNet        = fenNet,
                    InkDogru      = inkDogru,
                    InkYanlis     = inkYanlis,
                    InkNet        = inkNet,
                    DinDogru      = dinDogru,
                    DinYanlis     = dinYanlis,
                    DinNet        = dinNet,
                    IngDogru      = ingDogru,
                    IngYanlis     = ingYanlis,
                    IngNet        = ingNet,
                    IlceAdi       = ilce.IlceAdi,
                    OgrenciSayisi = ogrenciSayisi
                };

                ilIlceOrtalamalariList.Add(sonuc);
            }

            //il ortalaması

            var ilVerisi = sonucList.Where(x => x.Aciklama == "-");

            int iLogrenciSayisi = ilVerisi.Count();

            int     turkceIlDogru  = ilVerisi.Sum(x => x.TurkceDogru);
            int     turkceIlYanlis = ilVerisi.Sum(x => x.TurkceYanlis);
            decimal turkceIlNet    = (turkceIlDogru - ((decimal)turkceIlYanlis / 3)) / iLogrenciSayisi;

            int     matIlDogru  = ilVerisi.Sum(x => x.MatDogru);
            int     matIlYanlis = ilVerisi.Sum(x => x.MatYanlis);
            decimal matIlNet    = (matIlDogru - ((decimal)matIlYanlis / 3)) / iLogrenciSayisi;

            int     fenIlDogru  = ilVerisi.Sum(x => x.FenDogru);
            int     fenIlYanlis = ilVerisi.Sum(x => x.FenYanlis);
            decimal fenIlNet    = (fenIlDogru - ((decimal)fenIlYanlis / 3)) / iLogrenciSayisi;

            int     inkIlDogru  = ilVerisi.Sum(x => x.InkDogru);
            int     inkIlYanlis = ilVerisi.Sum(x => x.IngYanlis);
            decimal inkIlNet    = (inkIlDogru - ((decimal)inkIlYanlis / 3)) / iLogrenciSayisi;

            int     dinIlDogru  = ilVerisi.Sum(x => x.DinDogru);
            int     dinIlYanlis = ilVerisi.Sum(x => x.DinYanlis);
            decimal dinIlNet    = (dinIlDogru - ((decimal)dinIlYanlis / 3)) / iLogrenciSayisi;

            int     ingIlDogru  = ilVerisi.Sum(x => x.IngDogru);
            int     ingIlYanlis = ilVerisi.Sum(x => x.IngYanlis);
            decimal ingIlNet    = (ingIlDogru - ((decimal)ingIlYanlis / 3)) / iLogrenciSayisi;


            decimal toplamIlNet = ilVerisi.Sum(x => x.ToplamNet) / iLogrenciSayisi;

            decimal sinavIlPuanOrtalamasi = ilVerisi.Sum(x => x.SinavPuani) / iLogrenciSayisi;

            LgsSonuc sonucIl = new LgsSonuc
            {
                ToplamNet     = toplamIlNet,
                TurkceDogru   = turkceIlDogru,
                TurkceYanlis  = turkceIlYanlis,
                TurkceNet     = turkceIlNet,
                MatDogru      = matIlDogru,
                MatYanlis     = matIlYanlis,
                MatNet        = matIlNet,
                FenDogru      = fenIlDogru,
                FenYanlis     = fenIlYanlis,
                FenNet        = fenIlNet,
                InkDogru      = inkIlDogru,
                InkYanlis     = inkIlYanlis,
                InkNet        = inkIlNet,
                DinDogru      = dinIlDogru,
                DinYanlis     = dinIlYanlis,
                DinNet        = dinIlNet,
                IngDogru      = ingIlDogru,
                IngYanlis     = ingIlYanlis,
                IngNet        = ingIlNet,
                IlceAdi       = "İl Ortalaması",
                OgrenciSayisi = iLogrenciSayisi,
                SinavPuani    = sinavIlPuanOrtalamasi
            };

            ilIlceOrtalamalariList.Add(sonucIl);

            Application.DoEvents();
            progressBar1.Value = 0;
            return(ilIlceOrtalamalariList);
        }