Aşağıdaki kodlar Semih DURAN tarafından yazılmıştır.

Benzer belgeler
Görsel Programlama 1

BPR152-Algoritma ve Programlama II Uygulama -12

C# Çalışma Örnekleri

static void dizi_24() { Random rnd = new Random(); int [] tutulan=new int[10]; int dogru;

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

C# Console Uygulamaları ifelse Yapıları 2

Akış Konrol Mekanizmaları

Z Diyagram Di er Grafik Türleri SORULAR...42

İÇİNDEKİLER. BÖLÜM 1 Değişkenler ve Grafikler 1. BÖLÜM 2 Frekans Dağılımları 37

Programlama Dilleri 3

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

C# Örnek Uygulamalar I

Tanımlayıcı İstatistikler. Yrd. Doç. Dr. Emre ATILGAN

BPR152-Algoritma ve Programlama II Uygulama -13

11- FONKSİYONLAR (FUNCTIONS)

İÇİNDEKİLER ÖN SÖZ...

Bölüm 3 Merkezi Konum (Eğilim) Ölçüleri. Giriş Veri kümesi. Ortalamalar iki grupta incelenir. A. Duyarlı olan ortalama. B. Duyarlı olmayan ortalama

Programlama Dilleri 3

Mühendislikte İstatistik Yöntemler

Temel Ġstatistik. Tanımlayıcı Ġstatistik. Dağılımları Tanımlayıcı Ölçüler Yer Ölçüleri. Y.Doç.Dr. Ġbrahim Turan Mart 2011

BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI

Bölüm 3. Tanımlayıcı İstatistikler

public void DersNotListesi(string Ders, string Secim, double BarajNotu, bool OrtalamayaGore) [...]

NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM

PDF. C# Console Örnekleri.

NESNEYE DAYALI PROGRAMLAMA 9. HAFTA UYGULAMA DERSİ

Yrd. Doç. Dr. Fatih TOSUNOĞLU Erzurum Teknik Üniversitesi Mühendislik Fakültesi İnşaat Mühendisliği Bölümü

İÇİNDEKİLER BÖLÜM 1 KAVRAMLAR VE YÖNTEMBİLİM

LAÜ FEN EDEBĐYAT FAKÜLTESĐ PSĐKOLOJĐ BÖLÜMÜ PSK 106 ĐSTATĐSTĐK YÖNTEMLER I BAHAR DÖNEMĐ BÜTÜNLEME SINAVI SORULARI

LAÜ FEN EDEBĐYAT FAKÜLTESĐ PSĐKOLOJĐ BÖLÜMÜ PSK 106 ĐSTATĐSTĐK YÖNTEMLER I BAHAR DÖNEMĐ TELAFĐ SINAVI SORULARI

DATA STRUCTURES. Lab II Metotlar, Diziler ve Hata Ayıklama. Prof. Dr. Aybars UĞUR

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

LAÜ FEN EDEBĐYAT FAKÜLTESĐ PSĐKOLOJĐ BÖLÜMÜ PSK 106 ĐSTATĐSTĐK YÖNTEMLER I BAHAR DÖNEMĐ DÖNEM SONU SINAV SORULARI

PROGRAMLAMA TEMELLERİ DERSİ ÖZETİ

T.C. MARMARA ÜNİVERSİTESİ BİLGİSAYAR VE ÖĞRETİM TEKNOLOJİLERİ ÖĞRETMENLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI PROGRAMLAMA DERSİ KAPSAMINDA YAPILAN

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

Örnek 4.1: Tablo 2 de verilen ham verilerin aritmetik ortalamasını hesaplayınız.

Genel olarak test istatistikleri. Merkezi Eğilim (Yığılma) Ölçüleri Dağılım (Yayılma) Ölçüleri. olmak üzere 2 grupta incelenebilir.

8.Hafta. Değişkenlik Ölçüleri. Öğr.Gör.Muhsin ÇELİK. Uygun değişkenlik ölçüsünü hesaplayıp yorumlayabilecek,

BİYOİSTATİSTİK Merkezi Eğilim ve Değişim Ölçüleri Yrd. Doç. Dr. Aslı SUNER KARAKÜLAH

Merkezi Eğilim ve Dağılım Ölçüleri

İSTATİSTİK ÖRNEK SORULARI

Prof.Dr.İhsan HALİFEOĞLU

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

Sınav Dağılım & IMKB Endeks

Klavyeden girilen metnin karakter uzunluğu bulan C programı. Klavyeden girilen metin içerisindeki küçük ve büyük harf sayısını bulan C programı

Console.Write = Ekrana Yazıyı ve değişkenin değerini yazarak imleci satırın sonunda beklemesini sağlar.

elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.

BMÜ-112 ALGORİTMA VE PROGRAMLAMA-II LABORATUARI DENEY-2 FÖYÜ

Merkezi Eğilim Ölçüleri

Programlama Tekniklerine Giriş Vize (Ders kodları ve örnek kodlar)

KARAR YAPILARI. Acaba hangi yöne gitmeliyim? Oturduğun yerden kalkıp, kapıya varana kadar kaç kez karar verdiniz biliyor musunuz?

KUYRUKLAR QUEUES. Doç. Dr. Aybars UĞUR

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 2 DERSİ LAB. ÖDEVİ

Soru 1: Fahrenheit cinsinden verilen sıcaklığı Kelvin'e çeviren bir program yazınız. Aşağıdaki dönüşüm formülünü kullanabilirsiniz:

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

BİYOİSTATİSTİK MERKEZİ EĞİLİM ÖLÇÜLERİ

DÖNGÜLER BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA DENEY-4 FÖYÜ GİRİŞ LABORATUARI.

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta

Merkezi Yığılma ve Dağılım Ölçüleri

NESNEYE DAYALI PROGRAMLAMA 11. HAFTA UYGULAMA DERSİ

/*int sayi1, sayi2,toplam=0;

ENM 5210 İSTATİSTİK VE YAZILIMLA UYGULAMALARI. Ders 2 Merkezi Eğilim Ölçüleri

Verilerin Özetlenmesinde Kullanılan Sayısal Yöntemler

C# da basit console uygulamaları. C# da basit console uygulamaları

İş Parçacıkları Thread(s)

İSTATİSTİĞE GİRİŞ FINAL

Özyineleme (Recursion)

ATATÜRK ÜNİVERSİTESİ AÇIKÖĞRETİM FAKÜLTESİ ÇIKMIŞ SORULAR

DATA STRUCTURES. Lab II Metotlar, Diziler ve Hata Ayıklama. Doç. Dr. Aybars UĞUR

ANADOLU ÜNİVERSİTESİ İST 213 OLASILIK DERSİ TANIMLAR VE VERİ SINIFLAMASI

HSancak Nesne Tabanlı Programlama I Ders Notları

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/

ATATÜRK ÜNİVERSİTESİ AÇIKÖĞRETİM FAKÜLTESİ ÇIKMIŞ SORULAR

İstatistik Dersi Çalışma Soruları Arasınav(Matematik Müh. Bölümü-2014)

Merge Sort Bireşen Sıralama

YMT219 VERİ YAPILARI ÖDEV-1

İSTATİSTİĞE GİRİŞ ÜNİTE 2 İSTATİSTİK VERİLERİ VERİ TÜRLERİ

1. Her marka için 3 aylık satış toplamı nedir? (Tablodaki satır toplamları)

GENETİK ALGORİTMA GEZGİN SATICI ÖDEVİ

D İ Z İ L E R A R R A Y S

Merkezi eğilim ölçüleri ile bir frekans dağılımının merkezi belirlenirken; yayılma ölçüleri ile değişkenliği veya yayılma düzeyini tespit eder.

1 PROGRAMLAMAYA GİRİŞ

BÖLÜM 6 MERKEZDEN DAĞILMA ÖLÇÜLERİ

A İstatistiğe Giriş A

C de Detaylı Üs Alma Programı. C# Dilinde Metot Tanımlama ve Yazdırma

Öğrenim Kazanımları Bu programı başarı ile tamamlayan öğrenci;

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN

Karşılaştırma İşlemleri ve Koşullu İfadeler

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

#ifndef COMPLEX_H #define COMPLEX_H

İSTATİSTİKSEL MERKEZİ EĞİLİM ÖLÇÜLERİ (DUYARSIZ ORTALAMALAR)

TANIMLAYICI İSTATİSTİKLER

ÖLÇME VE DEĞERLENDİRME. Antrenörlük Eğitimi 4. Sınıf. Ölçme ve Değerlendirme - Yrd. Doç. Dr. Yetkin Utku KAMUK

VERİ KÜMELERİNİ BETİMLEME

Sınıflar ve Yapılar Arasındaki Farklılıklar. Değer ve Referans Türde Olan Aktarımlar

İstatistik ve Olasılığa Giriş. İstatistik ve Olasılığa Giriş. Ders 3 Verileri Sayısal Ölçütlerle İfade Etme. Verileri Sayısal Ölçütlerle İfade Etme

MEKANİZMA TEKNİĞİ (7. Hafta)

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak: Published by Juan Soulié

Transkript:

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;