C# İle Çeşitli İstatistiksel İşlemler

 

 

 

 

 

C# Console ortamında benim yazdığım içerisinde 16 farklı istatistiksel işlemin yapılabileceği güzel bir programdır.

Bir süredir bu programı yazmayı düşünüyordum. Sonra boş zamanımın olduğu bir gün yazmaya başladım. Araya vize haftam ve çeşitli işlerim girmesine rağmen hayırlısıyla bugün bitirdim. Okulda bu ders ile ilgili sıkıntı yaşayan biri olarak programını yazmak benim için önemliydi. Herhalde bu programı yazdıktan sonra okuldaki sıkıntımı da hallederim.

istatistik1

 

Programı kullanarak Aritmetik Ortalama, Geometrik Ortalama, Harmonik Ortalama, Kareli Ortalama, Mod, Medyan, Değişim Genişliği, Ortalamadan Sapma, Varyans, Standart Sapma ve Değişim Katsayısının Basit, Sınıflandırılmış veya Gruplandırılmış Serilerde hesaplamalarını yapabilirsiniz. Ayrıca yine programı kullanarak Kartil, Desil, Pörsentil, Permütasyon ve Kombinasyon hesaplamalarınıda yapabilirsiniz.

Programda işlemlerin tamamını ayrı ayrı Classlar içerisinde yaptım. Main blogunda ise sadece do – while ile işlemleri seçtirdim. Programda hesaplamaları yapan algoritmaların tamamını kendim yazdım ve yazarken gerçekten büyük bir keyif aldım. İhtiyacı olan arkadaşlar için kodları aşağıda paylaşıyorum. Ben aşağıda sadece ana bloktaki kodları paylaşacağım. Ana bloktaki kodlar ile birlikte işlemlerin yapıldığı Classları ise paylaştığım pdf dosyasının içerisinde bulabilirsiniz. Programı defalarca test etmeme rağmen sonuçta insanoğlu olduğumuz için hatalar olabilir. Karşılaştığınız hataları yazarsanız sevinirim. Ayrıca tabi her zaman ki gibi kodlar içerisinde anlamadığınız bir yer olursa sorabilirsiniz. Herkese kolay gelsin.

Programı buradan indirebilirsiniz.

Kaynak Kodları

Adobe Reader Belgesi (pdf) Olarak İndir (128 kb)

 

using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
 
namespace Istatistiksel_Hesaplamalar
{
    class Program
    {
        static void process(int type, int ntype, int proces)
        {
            Processing myProcessing = new Processing();
            Aritmetik myAritmetik = new Aritmetik();
            Geometrik myGeometrik = new Geometrik();
            Harmonik myHarmonik = new Harmonik();
            Kareli myKareli = new Kareli();
            Mod myMod = new Mod();
            Medyan myMedyan = new Medyan();
            Kantil myKantil = new Kantil();
            DegisimGenis myDegisimGenis = new DegisimGenis();
            OrtSapma myOrtSapma = new OrtSapma();
            Varyans myVaryans = new Varyans();
            StandartSapma myStandartSapma = new StandartSapma();
            DegisimKatsayi myDegisimKatsayi = new DegisimKatsayi();
            Permütasyon_Kombinasyon myPerKom = new Permütasyon_Kombinasyon();
 
            int n = 0;            
 
            if (ntype == 1)
            {
                Console.WriteLine("Lütfen Basit Serinin eleman sayısını girin : ");
                n = Convert.ToInt32(Console.ReadLine());
            }
            if (ntype == 2)
            {
                Console.WriteLine("Lütfen Sınıflandırılmış Serideki toplam xi sayısını girin  : ");
                n = Convert.ToInt32(Console.ReadLine());
            }
            if (ntype == 3)
            {
                Console.WriteLine("Lütfen Gruplandırılmış Serideki toplam grup sayısını girin : ");
                n = Convert.ToInt32(Console.ReadLine());
            }
 
            double[] dizi2 = new double[n];
            double[] dizi3 = new double[n];
            double[,] dizi4 = new double[n, 2];            
 
            //Basit Seri Aritmetik Ortalama Hesaplama Metodumuz
            if (type == 1)
            {
                for (int i = 0; i < n; i++)
                {
                    Console.Write("Basit serinin {0}. değerini girin :", i + 1);
                    double deger = Convert.ToDouble(Console.ReadLine());
 
                    dizi2[i] = deger;
                }
                Console.WriteLine();
                Console.WriteLine("Basit serinin Aritmetik Ortalaması {0} olarak hesaplanmıştır.", myAritmetik.DoublebasitSeriAritOrt(dizi2, n));                
            }
 
            //Basit seri Geometrik, Harmonik, Kareli, Mod, Medyan, Değişim genişliği, Ortalamadan Sapma, Varyans, Standart Sapma, Değişim Katsayısı ve Sınıflandırılmış Seride Değişim Katsayısı hesaplama metodumuz
            if (type == 2)
            {
                for (int i = 0; i < n; i++)
                {
                    Console.Write("Basit serinin {0}. değerini girin :", i + 1);
                    double deger = Convert.ToDouble(Console.ReadLine());
 
                    dizi2[i] = deger;
                }
                Console.WriteLine();
                if (proces == 1)
                {
                    Console.WriteLine("Basit serinin Geometrik Ortalaması {0} olarak hesaplanmıştır.", myGeometrik.basitSeri(dizi2, n));
                }
                if (proces == 2)
                {
                    Console.WriteLine("Basit serinin Harmonik Ortalaması {0} olarak hesaplanmıştır.", myHarmonik.basitSeri(dizi2, n));
                }
                if (proces == 3)
                {
                    Console.WriteLine("Basit serinin Kareli Ortalaması {0} olarak hesaplanmıştır.", myKareli.basitSeri(dizi2, n));
                }
                if (proces == 4)
                {
                    Console.WriteLine("Basit serinin Mod'u {0} olarak hesaplanmıştır.", myMod.basitSeri(dizi2, n));
                }
                if (proces == 5)
                {
                    Console.WriteLine("Basit serinin Medyan'ı {0} olarak hesaplanmıştır.", myMedyan.basitSeri(dizi2, n));
                }
                if (proces == 6)
                {
                    Console.WriteLine("Basit serinin Değişim Genişliği {0} olarak hesaplanmıştır.", myDegisimGenis.basitSinifSeri(dizi2, n));
                }
                if (proces == 7)
                {
                    Console.WriteLine("Basit serinin Ortalamadan Sapması {0} olarak hesaplanmıştır.", myOrtSapma.basitSeri(dizi2, n));
                }
                if (proces == 8)
                {
                    Console.WriteLine("Basit serinin Varyansı {0} olarak hesaplanmıştır.", myVaryans.basitSeri(dizi2, n));
                }
                if (proces == 9)
                {
                    Console.WriteLine("Basit serinin Standart Sapması {0} olarak hesaplanmıştır.", myStandartSapma.basitSeri(dizi2, n));
                }
                if (proces == 10)
                {
                    Console.WriteLine("Basit serinin Değişim Katsayısı {0} olarak hesaplanmıştır.", myDegisimKatsayi.basitSeri(dizi2, n));
                }
                if (proces == 11)//Sınıflandırılmış Seri
                {
                    Console.WriteLine("Sınıflandırılmış serinin Değişim Genişliği {0} olarak hesaplanmıştır.", myDegisimGenis.basitSinifSeri(dizi2, n));
                }
            }
 
            //Sınıflandırılmış Seri Aritmetik, Geometrik, Harmonik, Kareli, Mod, Medyan, Değişim genişliği, Ortalamadan Sapma, Varyans, Standart Sapma, Değişim Katsayısı hesapladığımız metodumuz
            if (type == 3)
            {
                for (int i = 0; i < n; i++)
                {
                    Console.Write("Serinin {0}. xi degerini girin :", i + 1);
                    double xi = Convert.ToDouble(Console.ReadLine());
 
                    dizi4[i, 0] = xi;
 
                    Console.Write("{0} sayısının frekans değerini girin :", xi);
                    double fi = Convert.ToDouble(Console.ReadLine());
 
                    dizi4[i, 1] = fi;
                }
                Console.WriteLine();
                if (proces == 1)
                {
                    Console.WriteLine("Sınıflandırılmış serinin Aritmetik Ortalaması {0} olarak hesaplanmıştır.", myAritmetik.DoublesinifGrupSeriAritOrt(dizi4, n));
                }
                if (proces == 2)
                {
                    Console.WriteLine("Sınıflandırılmış serinin Geometrik Ortalaması {0} olarak hesaplanmıştır.", myGeometrik.sinifGrupSeri(dizi4, n));
                }
                if (proces == 3)
                {
                    Console.WriteLine("Sınıflandırılmış serinin Harmonik Ortalaması {0} olarak hesaplanmıştır.", myHarmonik.sinifGrupSeri(dizi4, n));
                }
                if (proces == 4)
                {
                    Console.WriteLine("Sınıflandırılmış serinin Kareli Ortalaması {0} olarak hesaplanmıştır.", myKareli.sinifGrupSeri(dizi4, n));
                }
                if (proces == 5)
                {
                    Console.WriteLine("Sınıflandırılmış serinin Mod'u {0} olarak hesaplanmıştır.", myMod.sinifSeri(dizi4, n));
                }
                if (proces == 6)
                {
                    Console.WriteLine("Sınıflandırılmış serinin Medyan'ı {0} olarak hesaplanmıştır.", myMedyan.sinifSeri(dizi4, n));
                }
                if (proces == 7)
                {
                    Console.WriteLine("Sınıflandırılmış serinin Ortalamadan Sapması {0} olarak hesaplanmıştır.", myOrtSapma.sinifGrupSeri(dizi4, n));
                }
                if (proces == 8)
                {
                    Console.WriteLine("Sınıflandırılmış serinin Varyansı {0} olarak hesaplanmıştır.", myVaryans.sinifGrupSeri(dizi4, n));
                }
                if (proces == 9)
                {
                    Console.WriteLine("Sınıflandırılmış serinin Standart Sapması {0} olarak hesaplanmıştır.", myStandartSapma.sinifGrupSeri(dizi4, n));
                }
                if (proces == 10)
                {
                    Console.WriteLine("Sınıflandırılmış serinin Değişim Katsayısı {0} olarak hesaplanmıştır.", myDegisimKatsayi.sinifGrupSeri(dizi4, n));
                }
            }
 
            //Gruplandırılmış Seri 
            if (type == 4)
            {
                for (int i = 0; i < n; i++)
                {
                    Console.Write("Sınıfın {0}. elemanının başlangıç değerini girin :", i + 1);
                    double baslangıc = Convert.ToDouble(Console.ReadLine());
 
                    Console.Write("Sınıfın {0}. elemanının bitiş değerini girin :", i + 1);
                    double bitis = Convert.ToDouble(Console.ReadLine());
 
                    dizi4[i, 0] = myProcessing.grupxi(baslangıc, bitis);
 
                    Console.Write("{0} - {1} sınıfının frekans değerini girin :", baslangıc, bitis);
                    double fi = Convert.ToInt32(Console.ReadLine());
 
                    dizi4[i, 1] = fi;
                }
                Console.WriteLine();
                if (proces == 1)
                {
                    Console.WriteLine("Gruplandırılmış serinin Aritmetik Ortalaması {0} olarak hesaplanmıştır.", myAritmetik.DoublesinifGrupSeriAritOrt(dizi4, n));
                }
                if (proces == 2)
                {
                    Console.WriteLine("Gruplandırılmış serinin Geometrik Ortalaması {0} olarak hesaplanmıştır.", myGeometrik.sinifGrupSeri(dizi4, n));
                }
                if (proces == 3)
                {
                    Console.WriteLine("Gruplandırılmış serinin Harmonik Ortalaması {0} olarak hesaplanmıştır.", myHarmonik.sinifGrupSeri(dizi4, n));
                }
                if (proces == 4)
                {
                    Console.WriteLine("Gruplandırılmış serinin Kareli Ortalaması {0} olarak hesaplanmıştır.", myKareli.sinifGrupSeri(dizi4, n));
                }
                if (proces == 5)
                {
                    Console.WriteLine("Gruplandırılmış serinin Ortalamadan Sapması {0} olarak hesaplanmıştır.", myOrtSapma.sinifGrupSeri(dizi4, n));
                }
                if (proces == 6)
                {
                    Console.WriteLine("Gruplandırılmış serinin Varyansı {0} olarak hesaplanmıştır.", myVaryans.sinifGrupSeri(dizi4, n));
                }
                if (proces == 7)
                {
                    Console.WriteLine("Gruplandırılmış serinin Standart Sapması {0} olarak hesaplanmıştır.", myStandartSapma.sinifGrupSeri(dizi4, n));
                }
                if (proces == 8)
                {
                    Console.WriteLine("Gruplandırılmış serinin Değişim Katsayısı {0} olarak hesaplanmıştır.", myDegisimKatsayi.sinifGrupSeri(dizi4, n));
                }
            }
 
            //Permütasyon
            if (type == 5)
            {
                Console.WriteLine();
                Console.WriteLine("Permütasyon Hesaplama Bölümüne Hoş Geldiniz.");
                Console.WriteLine();
                Console.WriteLine("P(n,r) Permütasyonun n değerini girin :");
                int nee = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("P(n,r) Permütasyonun r değerini girin :");
                int ree = Convert.ToInt32(Console.ReadLine());
                if (nee > 0 && ree > 0 && ree <= nee)
                {
                    Console.WriteLine("P({0},{1}) Permütasyonu {2} olarak hesaplanmıştır.", nee, ree, myPerKom.permütasyon(nee, ree));
                }
                else
                {
                    Console.WriteLine("Girdiğiniz n veya r değeri permütasyon hesaplamak için uygun değildir. n>0 r>0  ve r<=n şartını sağlayın.");
                }
            }
 
            //Kombinasyon
            if (type == 6)
            {
                Console.WriteLine();
                Console.WriteLine("Kombinasyon Hesaplama Bölümüne Hoş Geldiniz.");
                Console.WriteLine("C(n,r) Kombinasyonun n değerini girin :");
                int en = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("C(n,r) Kombinasyonunun r değerini girin :");
                int re = Convert.ToInt32(Console.ReadLine());
                if (en >= 0 && re >= 0 && en >= re)
                {
                    Console.WriteLine("C({0},{1}) Kombinasyonu {2} olarak hesaplanmıştır.", en, re, myPerKom.kombinasyon(en, re));
                }
                else
                {
                    Console.WriteLine("Girdiğiniz n veya r değeri permütasyon hesaplamak için uygun değildir. n>0 r>0  ve r<=n şartını sağlayın.");
                }
            }
 
            //Gruplandırılmış Seri Mod - Medyan Hesaplama Fonksiyonumuz
            if (type == 7)
            {
                double[,] dizim = new double[n, 3];
                for (int i = 0; i < n; i++)
                {
                    Console.Write("Sınıfın {0}. elemanının başlangıç değerini girin :", i + 1);
                    double baslangıc = Convert.ToInt32(Console.ReadLine());
 
                    dizim[i, 0] = baslangıc;
 
                    Console.Write("Sınıfın {0}. elemanının bitiş değerini girin :", i + 1);
                    double bitis = Convert.ToInt32(Console.ReadLine());
 
                    dizim[i, 1] = bitis;
 
                    Console.Write("{0} - {1} sınıfının frekans değerini girin :", baslangıc, bitis);
                    double fi = Convert.ToInt32(Console.ReadLine());
 
                    dizim[i, 2] = fi;
                }
                Console.WriteLine();
                if (proces == 1)
                {
                    Console.WriteLine("Gruplandırılmış serinin Mod'u {0} olarak hesaplanmıştır.", myMod.grupSeri(dizim, n));
                }
                if (proces == 2)
                {
                    Console.WriteLine("Gruplandırılmış serinin Medyan'ı {0} olarak hesaplanmıştır.", myMedyan.grupSeri(dizim, n));
                }
            }
 
            //Kantil Hesaplamaları için kullandığımız fonksiyonumuz
            if (type == 8)
            {
                for (int i = 0; i < n; i++)
                {
                    Console.Write("Basit serinin {0}. değerini girin :", i + 1);
                    double deger = Convert.ToDouble(Console.ReadLine());
 
                    dizi2[i] = deger;
                }
 
                if (proces == 1)
                {
                    Console.Write("Kaçıcı Kartil Değerini hesaplamak istiyorsunuz? (1 - 3) : ");
                    int a = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine();
 
                    if (a > 0 && a < 4)
                    {
                        Console.WriteLine("Basit serinin {0}. Kartili {1} olarak hesaplanmıştır.", a, myKantil.basitSeriKartil(dizi2, n, a));
                    }
                    else
                    {
                        Console.WriteLine("Kartilin özelliği nedeniyle 1 ile 3 arasında bir seçim yapılabilir.");
                    }
                }
 
                if (proces == 2)
                {
                    Console.Write("Kaçıcı Desil Değerini hesaplamak istiyorsunuz? (1 - 9) : ");
                    int b = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine();
 
                    if (b > 0 && b < 9)
                    {
                        Console.WriteLine("Basit serinin {0}. Desili {1} olarak hesaplanmıştır.", b, myKantil.basitSeriDesil(dizi2, n, b));
                    }
                    else
                    {
                        Console.WriteLine("Desilin özelliği nedeniyle 1 ile 9 arasında bir seçim yapılabilir.");
                    }
                }
 
                if (proces == 3)
                {
                    Console.Write("Kaçıcı Pörsentil Değerini hesaplamak istiyorsunuz? (1 - 99) : ");
                    int c = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine();
 
                    if (c > 0 && c < 99)
                    {
                        Console.WriteLine("Basit serinin {0}. Pörsentili {1} olarak hesaplanmıştır.", c, myKantil.basitSeriPörsentil(dizi2, n, c));
                    }
                    else
                    {
                        Console.WriteLine("Pörsentilin özelliği nedeniyle 1 ile 99 arasında bir seçim yapılabilir.");
                    }
                }
            }
 
            //Gruplandırılmış Seri Değişim Genişliği hesaplama fonksiyonumuz
            if (type == 9)
            {
                for (int i = 0; i < n; i++)
                {
                    Console.Write("Sınıfın {0}. elemanının başlangıç değerini girin :", i + 1);
                    double baslangıc = Convert.ToInt32(Console.ReadLine());
                    dizi2[i] = baslangıc;
 
                    Console.Write("Sınıfın {0}. elemanının bitiş değerini girin :", i + 1);
                    double bitis = Convert.ToInt32(Console.ReadLine());
                    dizi3[i] = bitis;
 
                    Console.Write("{0} - {1} sınıfının frekans değerini girin :", baslangıc, bitis);
                    double fi = Convert.ToInt32(Console.ReadLine());
 
                }
                Console.WriteLine();
                Console.WriteLine("Gruplandırılmış serinin Değişim Genişliği {0} olarak hesaplanmıştır.", myDegisimGenis.GrupSeri(dizi2, dizi3, n));
            }
 
 
 
        }
 
        static void Main(string[] args)
        {             
            char cevap;
            int secim=0;
            int islem=0;
            int x = 0;
            try
            {
                do
                {
                    Console.Clear();
 
                    Console.SetWindowSize(100, 45);
 
                    Console.Title = "www.semihduran.com";
                    Console.WriteLine("<<<<< © 2012 Semih DURAN www.semihduran.com / www.semihduran.net >>>>>");
                    Console.WriteLine();
                    Console.WriteLine("### --- C# İLE İSTATİSTİKSEL HESAPLAMALAR YAPMA PROGRAMI --- ###");
                    Console.WriteLine();
 
                    Console.WriteLine("- Parametrik Yer Ölçüleri -");
                    Console.WriteLine();
                    Console.WriteLine("1 --> Aritmetik Ortalama Hesaplama");
                    Console.WriteLine("2 --> Geometrik Ortalama Hesaplama");
                    Console.WriteLine("3 --> Harmonik Ortalama Hesaplama");
                    Console.WriteLine("4 --> Kareli Ortalama Hesaplama");
                    Console.WriteLine();
                    Console.WriteLine();
 
                    Console.WriteLine("- Parametrik Olmayan Yer Ölçüleri -");
                    Console.WriteLine();
                    Console.WriteLine("5 --> Mod Hesaplama");
                    Console.WriteLine("6 --> Medyan Hesaplama");
                    Console.WriteLine("7 --> Kartil Hesaplama");
                    Console.WriteLine("8 --> Desil Hesaplama");
                    Console.WriteLine("9 --> Pörsentil Hesaplama");
                    Console.WriteLine();
                    Console.WriteLine();
 
                    Console.WriteLine("- Dağılım Ölçüleri -");
                    Console.WriteLine();
                    Console.WriteLine("10 --> Değişim Genişliği Hesaplama");
                    Console.WriteLine("11 --> Ortalamadan Sapma Hesaplama");
                    Console.WriteLine("12 --> Varyans Hesaplama");
                    Console.WriteLine("13 --> Standart Sapma Hesaplama");
                    Console.WriteLine("14 --> Değişim Katsayısı Hesaplama");
                    Console.WriteLine();
                    Console.WriteLine();
 
                    Console.WriteLine("- İhtimaller -");
                    Console.WriteLine();
                    Console.WriteLine("15 --> Permütasyon Hesaplama");
                    Console.WriteLine("16 --> Kombinasyon Hesaplama");
                    Console.WriteLine();
                    Console.WriteLine("17 --> ÇIKIŞ");
 
                    do
                    {
                        Console.WriteLine();
                        Console.Write("Lütfen yukarıdan yapmak istediğiniz işlemin numarasını girerek ENTER tuşuna basın : ");
                        secim = Convert.ToByte(Console.ReadLine());
                    } while (secim < 1 || secim > 17);
 
                    switch (secim)
                    {
                        case 1:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Aritmetik Ortalama Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(1, 1, 0);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(3, 2, 1);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(4, 3, 1);
                                    break;
                            }
 
                            break;
 
                        case 2:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Geometrik Ortalama Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(2, 1, 1);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(3, 2, 2);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(4, 3, 2);
                                    break;
                            }
 
                            break;
 
                        case 3:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Harmonik Ortalama Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(2, 1, 2);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(3, 2, 3);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(4, 3, 3);
                                    break;
                            }
 
                            break;
 
                        case 4:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Kareli Ortalama Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(2, 1, 3);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(3, 2, 4);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(4, 3, 4);
                                    break;
                            }
 
                            break;
 
                        case 5:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Mod Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(2, 1, 4);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(3, 2, 5);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(7, 3, 1);
                                    break;
                            }
 
                            break;
 
                        case 6:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Medyan Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(2, 1, 5);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(3, 2, 6);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(7, 3, 2);
                                    break;
                            }
 
                            break;
 
                        case 7:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Kartil Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            process(8, 1, 1);
                            break;
 
                        case 8:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Desil Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            process(8, 1, 2);
                            break;
 
                        case 9:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Pörsentil Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            process(8, 1, 3);
                            break;
 
                        case 10:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Değişim Genişliği Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(2, 1, 6);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(2, 2, 11);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(9, 3, 0);
                                    break;
                            }
                            break;
 
                        case 11:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Ortalamadan Sapma Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(2, 1, 7);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(3, 2, 7);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(4, 3, 5);
                                    break;
                            }
                            break;
 
                        case 12:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Varyans Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(2, 1, 8);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(3, 2, 8);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(4, 3, 6);
                                    break;
                            }
                            break;
 
                        case 13:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Standart Sapma Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(2, 1, 9);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(3, 2, 9);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(4, 3, 7);
                                    break;
                            }
                            break;
 
                        case 14:
                            Console.Clear();
                            Console.WriteLine();
                            Console.WriteLine("Değişim Katsayısı Hesaplama Bölümüne Hoş Geldiniz.");
                            Console.WriteLine();
                            Console.WriteLine("1 --> Basit Seri");
                            Console.WriteLine("2 --> Sınıflandırılmış Seri");
                            Console.WriteLine("3 --> Gruplandırılmış Seri");
                            Console.WriteLine();
                            do
                            {
                                Console.WriteLine("Lütfen işlem türünüzün numarasını girerek ENTER tuşuna basın :");
                                islem = Convert.ToByte(Console.ReadLine());
                            } while (islem < 1 || islem > 3);
 
                            switch (islem)
                            {
                                //Basit Seri
                                case 1:
                                    process(2, 1, 10);
                                    break;
                                //Sınıflandırılmış Seri
                                case 2:
                                    process(3, 2, 10);
                                    break;
                                //Gruplandırılmış Seri
                                case 3:
                                    process(4, 3, 8);
                                    break;
                            }
                            break;
 
                        //Permütasyon
                        case 15:
                            Console.Clear();
                            process(5, 0, 0);
                            break;
 
                        //Kombinasyon
                        case 16:
                            Console.Clear();
                            process(6, 0, 0);
                            break;
 
                        //Çıkış
                        case 17:
                            x = 1;
                            break;
 
                    }//switch bitiyor
                    if (x == 0)
                    {
                        Console.WriteLine();
                        Console.WriteLine();
                        Console.WriteLine("Programı kullanarak tekrar hesaplama yapmak ister misiniz? e/h");
                        cevap = Convert.ToChar(Console.ReadLine());
                    }
                    else
                    {
                        Console.WriteLine();
                        Console.WriteLine("Daha Fazlası İçin : www.semihduran.com");
                        Thread.Sleep(3000);
                        return;
                    }
 
                } while (cevap == 'e' || cevap == 'E');
 
                Console.WriteLine();
                Console.WriteLine("Daha Fazlası İçin : www.semihduran.com");
                Thread.Sleep(3000);
 
            }
            catch 
            {
                Console.WriteLine();
                Console.WriteLine("!!! Hata Oluştu. Program 3 saniye sonra kapatılacak.");
                Thread.Sleep(3000);
            }
 
        }
    }
}

 

Bunlar da hoşunuza gidebilir...

1 Cevap

  1. İsmail Kıldiş dedi ki:

    Merhaba kolay gelsin. Programı çalıştırdığımda sürekli try-catch bloğu çalışarak kapanıyor.Fakat programı burdan exe olarak indirdiğimde sorunsuz çalışıyor.Sebebi ne olabilir?

İsmail Kıldiş için bir yanıt yazın Yanıtı iptal et

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir