Aşağıdaki kodlar Semih DURAN tarafından yazılmıştır. www.semihduran.com Kaynak göstermek şartıyla kullanılabilir. 2012 Semih DURAN using System.Threading; 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)
Console.Write("Basit serinin 0. değerini girin :", i + 1); double deger = Convert.ToDouble(Console.ReadLine()); dizi2[i] = deger; 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) Console.Write("Basit serinin 0. değerini girin :", i + 1); double deger = Convert.ToDouble(Console.ReadLine()); dizi2[i] = deger; 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) 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; 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)); :", i + 1); //Gruplandırılmış Seri if (type == 4) Console.Write("Sınıfın 0. elemanının başlangıç değerini girin double baslangıc = Convert.ToDouble(Console.ReadLine()); + 1); Console.Write("Sınıfın 0. elemanının bitiş değerini girin :", i double bitis = Convert.ToDouble(Console.ReadLine()); dizi4[i, 0] = myprocessing.grupxi(baslangıc, bitis); baslangıc, bitis); Console.Write("0-1 sınıfının frekans değerini girin :", double fi = Convert.ToInt32(Console.ReadLine()); dizi4[i, 1] = fi; 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("Permütasyon Hesaplama Bölümüne Hoş Geldiniz."); 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("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."); :", i + 1); //Gruplandırılmış Seri Mod - Medyan Hesaplama Fonksiyonumuz if (type == 7) double[,] dizim = new double[n, 3]; Console.Write("Sınıfın 0. elemanının başlangıç değerini girin double baslangıc = Convert.ToInt32(Console.ReadLine()); dizim[i, 0] = baslangıc; + 1); Console.Write("Sınıfın 0. elemanının bitiş değerini girin :", i double bitis = Convert.ToInt32(Console.ReadLine()); dizim[i, 1] = bitis; baslangıc, bitis); Console.Write("0-1 sınıfının frekans değerini girin :", double fi = Convert.ToInt32(Console.ReadLine()); dizim[i, 2] = fi; 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) Console.Write("Basit serinin 0. değerini girin :", i + 1); double deger = Convert.ToDouble(Console.ReadLine()); dizi2[i] = deger; if (proces == 1)
- 3) : "); Console.Write("Kaçıcı Kartil Değerini hesaplamak istiyorsunuz? (1 int a = Convert.ToInt32(Console.ReadLine()); 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."); 9) : "); if (proces == 2) Console.Write("Kaçıcı Desil Değerini hesaplamak istiyorsunuz? (1 - int b = Convert.ToInt32(Console.ReadLine()); 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."); (1-99) : "); if (proces == 3) Console.Write("Kaçıcı Pörsentil Değerini hesaplamak istiyorsunuz? int c = Convert.ToInt32(Console.ReadLine()); 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)
:", i + 1); + 1); baslangıc, bitis); Console.Write("Sınıfın 0. elemanının başlangıç değerini girin 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 double bitis = Convert.ToInt32(Console.ReadLine()); dizi3[i] = bitis; Console.Write("0-1 sınıfının frekans değerini girin :", double fi = Convert.ToInt32(Console.ReadLine()); 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.SetWindowSize(100, 45); Console.Title = "www.semihduran.com"; Console.WriteLine("<<<<< 2012 Semih DURAN www.semihduran.com / www.semihduran.net >>>>>"); Console.WriteLine("### --- C# İLE İSTATİSTİKSEL HESAPLAMALAR YAPMA PROGRAMI --- ###"); Console.WriteLine("- Parametrik Yer Ölçüleri -"); 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("- Parametrik Olmayan Yer Ölçüleri -"); 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("- Dağılım Ölçüleri -"); 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("- İhtimaller -"); Console.WriteLine("15 --> Permütasyon Hesaplama"); Console.WriteLine("16 --> Kombinasyon Hesaplama"); Console.WriteLine("17 --> ÇIKIŞ"); do 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.WriteLine("Aritmetik Ortalama Hesaplama Bölümüne Hoş Geldiniz."); Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri"); 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); //Sınıflandırılmış Seri case 2: process(3, 2, 1); //Gruplandırılmış Seri case 3: process(4, 3, 1);
case 2: Console.WriteLine("Geometrik Ortalama Hesaplama Bölümüne Hoş Geldiniz."); Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri"); 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); //Sınıflandırılmış Seri case 2: process(3, 2, 2); //Gruplandırılmış Seri case 3: process(4, 3, 2); case 3: Console.WriteLine("Harmonik Ortalama Hesaplama Bölümüne Hoş Geldiniz."); Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri"); 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); //Sınıflandırılmış Seri
case 2: process(3, 2, 3); //Gruplandırılmış Seri case 3: process(4, 3, 3); case 4: Console.WriteLine("Kareli Ortalama Hesaplama Bölümüne Hoş Geldiniz."); Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri"); 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); //Sınıflandırılmış Seri case 2: process(3, 2, 4); //Gruplandırılmış Seri case 3: process(4, 3, 4); case 5: Console.WriteLine("Mod Hesaplama Bölümüne Hoş Geldiniz."); Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri"); 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); //Sınıflandırılmış Seri case 2: process(3, 2, 5); //Gruplandırılmış Seri case 3: process(7, 3, 1); case 6: Console.WriteLine("Medyan Hesaplama Bölümüne Hoş Geldiniz."); Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri"); 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); //Sınıflandırılmış Seri case 2: process(3, 2, 6); //Gruplandırılmış Seri case 3: process(7, 3, 2); Geldiniz."); case 7: Console.WriteLine("Kartil Hesaplama Bölümüne Hoş process(8, 1, 1);
Geldiniz."); Geldiniz."); case 8: Console.WriteLine("Desil Hesaplama Bölümüne Hoş process(8, 1, 2); case 9: Console.WriteLine("Pörsentil Hesaplama Bölümüne Hoş process(8, 1, 3); case 10: Console.WriteLine("Değişim Genişliği Hesaplama Bölümüne Hoş Geldiniz."); Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri"); 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); //Sınıflandırılmış Seri case 2: process(2, 2, 11); //Gruplandırılmış Seri case 3: process(9, 3, 0); Hoş Geldiniz."); case 11: Console.WriteLine("Ortalamadan Sapma Hesaplama Bölümüne Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri");
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); //Sınıflandırılmış Seri case 2: process(3, 2, 7); //Gruplandırılmış Seri case 3: process(4, 3, 5); case 12: Console.WriteLine("Varyans Hesaplama Bölümüne Hoş Geldiniz."); Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri"); 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); //Sınıflandırılmış Seri case 2: process(3, 2, 8); //Gruplandırılmış Seri case 3: process(4, 3, 6); case 13:
Console.WriteLine("Standart Sapma Hesaplama Bölümüne Hoş Geldiniz."); Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri"); 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); //Sınıflandırılmış Seri case 2: process(3, 2, 9); //Gruplandırılmış Seri case 3: process(4, 3, 7); case 14: Console.WriteLine("Değişim Katsayısı Hesaplama Bölümüne Hoş Geldiniz."); Console.WriteLine("1 --> Basit Seri"); Console.WriteLine("2 --> Sınıflandırılmış Seri"); Console.WriteLine("3 --> Gruplandırılmış Seri"); 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); //Sınıflandırılmış Seri case 2: process(3, 2, 10); //Gruplandırılmış Seri case 3: process(4, 3, 8);
//Permütasyon case 15: process(5, 0, 0); //Kombinasyon case 16: process(6, 0, 0); //Çıkış case 17: x = 1; //switch bitiyor if (x == 0) Console.WriteLine("Programı kullanarak tekrar hesaplama yapmak ister misiniz? e/h"); cevap = Convert.ToChar(Console.ReadLine()); else Console.WriteLine("Daha Fazlası İçin : www.semihduran.com"); Thread.Sleep(3000); return; while (cevap == 'e' cevap == 'E'); Console.WriteLine("Daha Fazlası İçin : www.semihduran.com"); Thread.Sleep(3000); catch Console.WriteLine("!!! Hata Oluştu. Program 3 saniye sonra kapatılacak."); Thread.Sleep(3000);
-- CLASSLAR -- Aritmetik.cs class Aritmetik private int toplam = 0; private double collection = 0; public double DoublebasitSeriAritOrt(double[] dizi, int n) collection += dizi[i]; return Math.Round(collection / n, 3); public double DoublesinifGrupSeriAritOrt(double[,] dizi, int n) double xi = 0; double fi = 0; double toplamfi = 0; for (int j = 0; j < 2; j++) if (j == 0) xi = dizi[i, j]; if (j == 1) fi = dizi[i, j]; collection += (xi * fi); toplamfi += fi; return Math.Round(collection / toplamfi, 3); //Basit serilerde Aritmetik Ortalamanın hesaplandığı metodumuz public int basitseri (int[] dizi, int n) toplam += dizi[i]; return toplam / n; //Sınıflandırılmış ve Gruplandırılmış serilerde Aritmetik Ortalamanın hesaplandığı metodumuz public int sinifgrupseri(int[,] dizi, int n)
int xi = 0; int fi = 0; int toplamfi = 0; for (int j = 0; j < 2; j++) if (j == 0) xi = dizi[i, j]; if (j == 1) fi = dizi[i, j]; toplam += (xi * fi); toplamfi += fi; return toplam / toplamfi; Geometrik.cs class Geometrik private double toplam = 0; //Basit serilerde Geometrik Hesaplamayı yaptığımız metodumuz public double basitseri(double[] dizi, int n) toplam += Math.Round(Math.Log10(dizi[i]),3); double result = Math.Round(toplam / n,3); return Math.Round(Math.Pow(10,result),3); //Sınıflandırılmış ve Gruplandırılmış serilerde Geometrik Ortalamanın hesaplandığı metodumuz public double sinifgrupseri(double[,] dizi, int n) double xi = 0; double fi = 0; double toplamfi = 0; for (int j = 0; j < 2; j++) if (j == 0)
xi = Math.Round(Math.Log10(dizi[i, j]), 3); ; if (j == 1) fi = dizi[i, j]; toplam += Math.Round((xi * fi),3); toplamfi += fi; double result = Math.Round(toplam / toplamfi, 3); return Math.Round(Math.Pow(10, result), 3); Harmonik.cs class Harmonik private double toplam = 0; //Basit serilerde Harmonik Ortalamanın hesaplandığı metodumuz public double basitseri(double[] dizi, int n) toplam += 1 / dizi[i]; double toplam2 = Math.Round(toplam,3); return Math.Round(n / toplam2,3); //Sınıflandırılmış ve Gruplandırılmış serilerde Harmonik Ortalamanın hesaplandığı metodumuz public double sinifgrupseri(double[,] dizi, int n) double xi = 0; double fi = 0; double toplamfi = 0; for (int j = 0; j < 2; j++) if (j == 0) xi = Math.Round(dizi[i, j],3); if (j == 1) fi = dizi[i, j];
toplam += Math.Round((fi / xi),3); toplamfi += fi; return Math.Round(toplamfi / toplam, 3); Kareli.cs class Kareli private double toplam = 0; //Basit serilerde Kareli Ortalamanın hesaplandığı metodumuz public double basitseri(double[] dizi, int n) //Math.Round(toplam += 1 / dizi[i], 3); toplam += Math.Round(Math.Pow(dizi[i],2),3); return Math.Round(Math.Sqrt(toplam/n), 3); //Sınıflandırılmış ve Gruplandırılmış serilerde Kareli Ortalamanın hesaplandığı metodumuz public double sinifgrupseri(double[,] dizi, int n) double xi = 0; double fi = 0; double toplamfi = 0; for (int j = 0; j < 2; j++) if (j == 0) xi = Math.Round(dizi[i, j], 3); if (j == 1) fi = dizi[i, j]; toplam += Math.Round((fi * Math.Pow(xi,2)), 3); toplamfi += fi; return Math.Round(Math.Sqrt(toplam / toplamfi), 3);
Mod.cs class Mod Processing myprocessing = new Processing(); private double mod; //Basit serilerde modu bulmak için kullandığımız metodumuz public double basitseri(double[] dizi, int n) myprocessing.buble_sort(dizi); int modcontrol = 0; int aklimda = 0; for (int j = 0; j < n; j++) if (dizi[i] == dizi[j]) modcontrol++; if (modcontrol > aklimda) mod = dizi[i]; aklimda = modcontrol; modcontrol = 0; return mod; //Sınıflandırılmış serilerde modu bulmak için kullandığımız metodumuz public double sinifseri(double[,] dizi, int n) double fi = 0; if (dizi[i, 1] > fi) fi = dizi[i, 1]; mod = dizi[i, 0]; return mod; //Gruplandırılmış serilerde modu bulmak için kullandığımız metodumuz public double grupseri(double[,] dizi, int n) //dizi[i,0]=baslangıc //dizi[i,1]=bitis //dizi[i,2]=fi double fi = 0; double d1 = 0; double d2 = 0; double altsinir = 0;
double c = 0; if (dizi[i, 2] > fi) fi = dizi[i, 2]; if (i!= 0 && i!= n - 1) d1 = fi - dizi[i - 1, 2]; d2 = fi - dizi[i + 1, 2]; altsinir = dizi[i, 0] - 0.5; c = (dizi[i, 1] - dizi[i,0])+1; return Math.Round((altSinir) + ((d1 / (d1 + d2)) * (c)), 3); Medyan.cs class Medyan Processing myprocessing = new Processing(); private double medyan; //Basit serilerde medyanı bulmak için kullandığımız metodumuz public double basitseri(double[] dizi, int n) myprocessing.buble_sort(dizi); //tam sayı ise if ((n + 1) % 2 == 0) medyan = dizi[(n+1)/2]; else//ondalık sayı ise medyan = (dizi[(int)(((n + 1) / 2) - 0.5)] + dizi[(int)(((n + 1) / 2) + 0.5)]) / 2; return medyan; //Sınıflandırılmış serilerde medyanı bulmak için kullandığımız metodumuz public double sinifseri(double[,] dizi, int n) double denaztoplam = 0; double result = 0; double[] denaz = new double[n]; denaztoplam += dizi[i, 1]; denaz[i] = denaztoplam; result = (n + 1) / 2;
if (result < denaz[i] && result > denaz[i - 1]) medyan = dizi[i, 0]; return medyan; //Gruplandırılmış serilerde medyanı bulmak için kullandığımız metodumuz public double grupseri(double[,] dizi, int n) //dizi[i,0]=baslangıc //dizi[i,1]=bitis //dizi[i,2]=fi double fi = 0;//Medyan sınıfının frekansı int kf = 0;//Medyan sınıfından bir önceki sınıfın -den az kümülatif frekans değeri double altsinir = 0; double c = 0;//Üst sınır - Alt sınır double[] denaz = new double[n]; double denaztoplam = 0; if (dizi[i, 2] > fi) fi = dizi[i, 2]; if (i!= 0 && i!= n - 1) kf = Convert.ToInt32(i - 1); altsinir = dizi[i, 0] - 0.5; c = (dizi[i, 1] - dizi[i, 0]) + 1; denaztoplam += dizi[i, 2]; denaz[i] = denaztoplam; return Math.Round( (altsinir) + ((((denaztoplam / 2) - denaz[kf]) / fi) * (c)), 3); Kantil.cs class Kantil Processing myprocessing = new Processing(); //Basit serilerde kartili bulmak için kullandığımız metodumuz
public double basitserikartil(double[] dizi, int n, int i)//4 eşit parçaya ayırır. int kartil; myprocessing.buble_sort(dizi); kartil = (i * (n + 1)) / 4; return dizi[kartil-1]; ayırır. //Basit serilerde desili bulmak için kullandığımız metodumuz public double basitseridesil(double[] dizi, int n, int i)//10 eşit parçaya int desil; myprocessing.buble_sort(dizi); desil = (i * (n + 1)) / 10; return dizi[desil - 1]; //Basit serilerde pörsentil bulmak için kullandığımız metodumuz public double basitseripörsentil(double[] dizi, int n, int i)//100 eşit parçaya ayırır. int pörsentil; myprocessing.buble_sort(dizi); pörsentil = (i * (n + 1)) / 100; return dizi[pörsentil - 1]; DegisimGenis.cs class DegisimGenis Processing myprocessing = new Processing(); public double basitsinifseri(double[] dizi, int n) myprocessing.buble_sort(dizi); return dizi[n - 1] - dizi[0]; public double GrupSeri(double[] dizi, double[] dizi2, int n) myprocessing.buble_sort(dizi); myprocessing.buble_sort(dizi2); return dizi2[n - 1] - dizi[0];
OrtSapma.cs class OrtSapma Aritmetik myaritmetik = new Aritmetik(); private double toplam = 0; public double basitseri(double[] dizi, int n) double arit_ort = myaritmetik.doublebasitseriaritort(dizi, n); toplam += Math.Abs(dizi[i] - arit_ort); return Math.Round(toplam / n,3); public double sinifgrupseri(double[,] dizi, int n) double arit_ort = myaritmetik.doublesinifgrupseriaritort(dizi, n); double toplamfi = 0; toplam += dizi[i, 1] * Math.Round(Math.Abs(dizi[i, 0] - arit_ort), 3); toplamfi += dizi[i, 1]; return Math.Round(toplam / toplamfi, 3); Varyans.cs class Varyans Aritmetik myaritmetik = new Aritmetik(); private double toplam = 0; double result = 0; public double basitseri(double[] dizi, int n) double arit_ort = myaritmetik.doublebasitseriaritort(dizi, n); if (n < 30)
toplam += Math.Round(Math.Pow(dizi[i] - arit_ort, 2),3); result = toplam / (n - 1); else toplam += Math.Pow(dizi[i] - arit_ort, 2); result = toplam / n; return Math.Round(result,3); 3); public double sinifgrupseri(double[,] dizi, int n) double arit_ort = myaritmetik.doublesinifgrupseriaritort(dizi, n); double toplamfi = 0; double result = 0; toplam += Math.Round(dizi[i, 1] * Math.Pow(dizi[i, 0] - arit_ort, 2), toplamfi += dizi[i, 1]; if (n < 30) result = Math.Round(toplam / (toplamfi - 1),3); else result = Math.Round(toplam / toplamfi,3); return Math.Round(result, 3); StandartSapma.cs class StandartSapma Varyans myvaryans = new Varyans(); public double basitseri(double[] dizi, int n) return Math.Round(Math.Sqrt(myVaryans.basitSeri(dizi, n)),3); public double sinifgrupseri(double[,] dizi, int n)
return Math.Round(Math.Sqrt(myVaryans.sinifGrupSeri(dizi, n)), 3); DegisimKatsayi.cs class DegisimKatsayi StandartSapma mystandartsapma = new StandartSapma(); Aritmetik myaritmetik = new Aritmetik(); public double basitseri(double[] dizi, int n) return Math.Round(myStandartSapma.basitSeri(dizi, n) / myaritmetik.doublebasitseriaritort(dizi, n) * 100, 3); public double sinifgrupseri(double[,] dizi, int n) return Math.Round(myStandartSapma.sinifGrupSeri(dizi, n) / myaritmetik.doublesinifgrupseriaritort(dizi, n) * 100, 3); Permütasyon_Kombinasyon.cs class Permütasyon_Kombinasyon // Faktöriyeli hesaplamak için kullanacağız. private int faktoriyel(int sayi) if (sayi == 0) return 1; else return sayi * faktoriyel(sayi - 1); // P(n,r)=n!/(n-r)! formulünü kullanarak hesaplayacağız. (r ve n pozitif ve r <= n şartıyla) public int permütasyon(int n, int r) return faktoriyel(n) / faktoriyel(n - r);
// C(n,r)=n!/r!*(n-r)! formulünü kullanarak hesaplayacağız. (r ve n pozitif ve n >= r şartıyla) public int kombinasyon(int n, int r) return faktoriyel(n) / (faktoriyel(r) * faktoriyel((n - r))); Processing.cs class Processing // Kabarcık sıralama(buble sort) yoluyla dizideki sayıları küçükten büyüğe sıralayan algoritmadır. public void buble_sort(double[] dizi) double aklimda; for (int i = 0; i < dizi.length - 1; i++) for (int j = 1; j < dizi.length - i; j++) if (dizi[j] < dizi[j - 1]) aklimda = dizi[j - 1]; dizi[j - 1] = dizi[j]; dizi[j] = aklimda; //Gruplandırılmış serilerde sınıfın başlangıç ve bitiş değerleriyle xi değerini buluyoruz. public double grupxi(double baslangic, double bitis) return (baslangic + bitis) / 2;