31 Ocak 2014 Cuma

C Sharp Form Uygulamalar Thread Kullanarak Pastacı ve Tedarikçi Arasında İşlemler Yaptırma



KONU : C Sharp Uygulamalar - C Sharp ( C# ). Üç farklı pastacının elinde pasta yapmak için gerekli malzemelerden (un, yağ ve şeker) sadece bir tanesi mevcut olsun. Tedarikçinin elinde ise bu malzemelerden sonsuz olmasına rağmen her dağıtımda sadece 2 farklı malzeme sağlamakta (yağ+un, yağ+şeker veya un+yağ). Tedarikci ve pastacılar için birer process veya thread oluşturun (toplam 4 tane). Tedarikçi her dağıtımda elinde diğer malzemeyi tutan pastacıyı uyandıracak. Örneğin un ve yağ dağıtımı yapıyorsa, elinde şeker olan pastacıyı uyandıracak. Her pastacıda pasta yapabilmek tedarikçiyi uyandıracak ve gerekli malzemeleri dağıtılmasını bekleyecek. Bütün pastacılar belli sayıda pasta yaptığında (her pastacı için farklı olabilir), program sonlanacak. Tedarikçi her dağıtımda bir pasta yapımına yetecek kadar malzeme sağlamakta. Programı açıklayacak ekran çıktıları oluşturun (Soru 1’de verilen örnek çalışma gibi) ve farklı pasta sayıları için programı çalıştırarak sonuçları yorumlayın. İp ucu: Bu soru için üretici/tüketici problemini göz önüne alabilirsiniz.
ETİKETLER: c sharp groupbox - c sharp timer - c sharp thread - c sharp threadstart - c sharp form - c sharp multi thread





UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;

namespace C_Sharp_Form_Tedarikci_Pastacilar_Thread
{
    public partial class Form1 : Form
    {
        public delegate void IslemDelegateHandler();
        public IslemDelegateHandler islemDelegatePasta1;
        Thread threadPasta1 = null;
        public IslemDelegateHandler islemDelegatePasta2;
        Thread threadPasta2 = null;
        public IslemDelegateHandler islemDelegatePasta3;
        Thread threadPasta3 = null;
        public IslemDelegateHandler islemDelegateTedarikci;
        Thread threadTedarikci = null;
        int counterPasta=0;
        int counterTedarik = 0;
        int pasta1Sure = 0;
        int pasta2Sure = 0;
        int pasta3Sure = 0;
        int tedarikciSure = 0;
        int pasta1adet = 0;
        int pasta2adet = 0;
        int pasta3adet = 0;
        int pasta1UretilenAdet = 0;
        int pasta2UretilenAdet = 0;
        int pasta3UretilenAdet = 0;
        bool pasta1Uretilebilir = false;
        bool pasta2Uretilebilir = false;
        bool pasta3Uretilebilir = false;
        bool tedarikYapilsin = false;
        bool unYagIste = false;
        bool unSekerIste = false;
        bool sekerYagIste = false;

        bool unYagIsteAktif = false;
        bool unSekerIsteAktif = false;
        bool sekerYagIsteAktif = false;
        public Form1()
        {
            InitializeComponent();
        }


        private void Form1_Load(object sender, EventArgs e)
        {
            islemDelegatePasta1 = new IslemDelegateHandler(Pasta1Islemleri);
            islemDelegatePasta2 = new IslemDelegateHandler(Pasta2Islemleri);
            islemDelegatePasta3 = new IslemDelegateHandler(Pasta3Islemleri);
            islemDelegateTedarikci = new IslemDelegateHandler(TedarikciIslemleri);

            ParameterizedThreadStart threadDelegatePasta1 = new ParameterizedThreadStart(this.ThreadFuncPasta1);
            threadPasta1 = new System.Threading.Thread(threadDelegatePasta1);
            threadPasta1.IsBackground = true;
            threadPasta1.Start(null);

            ParameterizedThreadStart threadDelegatePasta2= new ParameterizedThreadStart(this.ThreadFuncPasta2);
            threadPasta2 = new System.Threading.Thread(threadDelegatePasta2);
            threadPasta2.IsBackground = true;
            threadPasta2.Start(null);


            ParameterizedThreadStart threadDelegatePasta3 = new ParameterizedThreadStart(this.ThreadFuncPasta3);
            threadPasta3 = new System.Threading.Thread(threadDelegatePasta3);
            threadPasta3.IsBackground = true;
            threadPasta3.Start(null);

            ParameterizedThreadStart threadDelegateTedarikci = new ParameterizedThreadStart(this.ThreadFuncTedarikci);
            threadTedarikci = new System.Threading.Thread(threadDelegateTedarikci);
            threadTedarikci.IsBackground = true;
            threadTedarikci.Start(null);
        }

        private AutoResetEvent waitHandle = new AutoResetEvent(true);

        public void ThreadFuncPasta1(object parameter)
        {
            // While this mode is selected
            while (true)
            {
                if (progressBarPasta1Seker.Value != 0 && progressBarPasta1Un.Value != 0 && progressBarPasta1Yag.Value != 0)
                {
                    pasta1Uretilebilir = true;
                }
                else
                {
                    pasta1Uretilebilir = false;
                }

                // Waiting for Receive-Event
                if (waitHandle.WaitOne(50) && pasta1Uretilebilir)
   
                    this.Invoke(islemDelegatePasta1);
            }
        }

        public void ThreadFuncPasta2(object parameter)
        {
            // While this mode is selected
            while (true)
            {
                if (progressBarPasta2Seker.Value != 0 && progressBarPasta2Un.Value != 0 && progressBarPasta2Yag.Value != 0)
                {
                    pasta2Uretilebilir = true;
                }
                else
                {
                    pasta2Uretilebilir = false;
                }

                // Waiting for Receive-Event
                if (waitHandle.WaitOne(50) && pasta2Uretilebilir)

                    this.Invoke(islemDelegatePasta2);
            }
        }

        public void ThreadFuncPasta3(object parameter)
        {
            // While this mode is selected
            while (true)
            {
                if (progressBarPasta3Seker.Value != 0 && progressBarPasta3Un.Value != 0 && progressBarPasta3Yag.Value != 0)
                {
                    pasta3Uretilebilir = true;
                }
                else
                {
                    pasta3Uretilebilir = false;
                }

                // Waiting for Receive-Event
                if (waitHandle.WaitOne(50) && pasta3Uretilebilir)

                    this.Invoke(islemDelegatePasta3);
            }
        }

        public void ThreadFuncTedarikci(object parameter)
        {
            // While this mode is selected
            while (true)
            {

                if (unYagIste || unSekerIste || sekerYagIste)
                {
                    tedarikYapilsin = true;
                }
                else
                {
                    tedarikYapilsin = false;
                }
                // Waiting for Receive-Event
                if (waitHandle.WaitOne(50) && tedarikYapilsin)

                    this.Invoke(islemDelegateTedarikci);
            }
        }

        private void Pasta1Islemleri()
        {
            if (pasta1Sure == 0)
            {
                pasta1Sure = counterPasta;
            }
            else 
            {
                int value = counterPasta - pasta1Sure;
                if (value < 100)
                {
                    progressPasta1.Value = value;
                    progressBarPasta1Yag.Value = 100 - value;
                    progressBarPasta1Seker.Value = 100 - value;
                }
                else
                {
                    pasta1UretilenAdet += 1;
                    lblPasta1Uretilen.Text = pasta1UretilenAdet.ToString();
                    progressPasta1.Value = 0;
                    pasta1Sure = 0;
                    progressBarPasta1Yag.Value = 0;
                    progressBarPasta1Seker.Value = 0;

                    if (pasta1adet != pasta1UretilenAdet)
                    {
                        sekerYagIste = true;
                    }
                }
                  
            }
        }

        private void Pasta2Islemleri()
        {
            if (pasta2Sure == 0)
            {
                pasta2Sure = counterPasta;
            }
            else
            {
                int value = counterPasta - pasta2Sure;
                if (value < 100)
                {
                    progressPasta2.Value = value;
                    progressBarPasta2Un.Value = 100 - value;
                    progressBarPasta2Seker.Value = 100 - value;
                }
                else
                {
                    pasta2UretilenAdet += 1;
                    lblPasta2Uretilen.Text = pasta2UretilenAdet.ToString();
                    progressPasta2.Value = 0;
                    pasta2Sure = 0;
                    progressBarPasta2Un.Value = 0;
                    progressBarPasta2Seker.Value = 0;

                    if (pasta2adet != pasta2UretilenAdet)
                    {
                        unSekerIste = true;
                    }
                }
            }
        }

        private void Pasta3Islemleri()
        {
            if (pasta3Sure == 0)
            {
                pasta3Sure = counterPasta;
            }
            else
            {
                int value = counterPasta - pasta3Sure;
                if (value < 100)
                {
                    progressPasta3.Value = value;
                    progressBarPasta3Un.Value = 100 - value;
                    progressBarPasta3Yag.Value = 100 - value;
                }
                else
                {
                    pasta3UretilenAdet += 1;
                    lblPasta3Uretilen.Text = pasta3UretilenAdet.ToString();
                    progressPasta3.Value = 0;
                    pasta3Sure = 0;
                    progressBarPasta3Un.Value = 0;
                    progressBarPasta3Yag.Value = 0;

                    if (pasta3adet != pasta3UretilenAdet)
                    {
                        unYagIste = true;
                    }
                }
            }
        }

        private void TedarikciIslemleri()
        {

            if (tedarikciSure == 0)
            {
                tedarikciSure = counterTedarik;
            }
            else
            {
                int value = counterTedarik - tedarikciSure;

                int ister = 0;

                if (unYagIste && !unSekerIsteAktif && !sekerYagIsteAktif )
                {
                    ister = 3;
                    unYagIsteAktif = true;
                    lblTedarikciDurum.Text = "3. Pastacı için tedarik sağlanıyor";
                }
                else if (unSekerIste && !unYagIsteAktif && !sekerYagIsteAktif)
                {
                    ister = 2;
                    unSekerIsteAktif = true;
                    lblTedarikciDurum.Text = "2. Pastacı için tedarik sağlanıyor";
                }
                else if (sekerYagIste && !unSekerIsteAktif && !unYagIsteAktif)
                {
                    ister = 1;
                    sekerYagIsteAktif = true;
                    lblTedarikciDurum.Text = "1. Pastacı için tedarik sağlanıyor";
                }

                    switch (ister)
                    {
                        case 1:
                            if (value < 100)
                            {
                                progressBarTedatikciSeker.Value = value;
                                progressBarTedatikciYag.Value = value;
                            }
                            else
                            {
                                progressBarTedatikciSeker.Value = 100;
                                progressBarTedatikciYag.Value = 100;

                                progressBarPasta1Seker.Value = 100;
                                progressBarPasta1Yag.Value = 100;
                                sekerYagIsteAktif = false;
                                sekerYagIste = false;
                                tedarikciSure = 0;

                                lblTedarikciDurum.Text = "Talep bekliyor...";
                            }
                            break;

                        case 2:
                            if (value < 100)
                            {
                                progressBarTedatikciSeker.Value = value;
                                progressBarTedatikciUn.Value = value;
                            }
                            else
                            {
                                progressBarTedatikciSeker.Value = 0;
                                progressBarTedatikciUn.Value = 0;

                                progressBarPasta2Seker.Value = 100;
                                progressBarPasta2Un.Value = 100;
                                unSekerIsteAktif = false;
                                unSekerIste = false;
                                tedarikciSure = 0;
                                lblTedarikciDurum.Text = "Talep bekliyor...";
                            }
                            break;

                        case 3:
                            if (value < 100)
                            {
                                progressBarTedatikciYag.Value = value;
                                progressBarTedatikciUn.Value = value;
                            }
                            else
                            {
                                progressBarTedatikciYag.Value = 0;
                                progressBarTedatikciUn.Value = 0;

                                progressBarPasta3Yag.Value = 100;
                                progressBarPasta3Un.Value = 100;
                                unYagIsteAktif = false;
                                unYagIste = false;
                                tedarikciSure = 0;
                                lblTedarikciDurum.Text = "Talep bekliyor...";
                            }
                            break;
                        default:
                            break;
                    }

            }
        }

        private void timer_Tick(object sender, EventArgs e)
        {
            counterPasta++;
            counterTedarik += 2;
            waitHandle.Set();
        }



        private void btnAdetGirPasta1_Click(object sender, EventArgs e)
        {
            try
            {
                pasta1adet = int.Parse(txtPasta1Adeti.Text);

                lblPasta1Uretilecek.Text = pasta1adet.ToString();

                if (pasta1adet > pasta1UretilenAdet)
                {
                    sekerYagIste = true;
                }
            }
            catch (Exception)
            {

            }
        }

        private void btnAdetGirPasta2_Click(object sender, EventArgs e)
        {
            try
            {
                pasta2adet = int.Parse(txtPasta2Adeti.Text);

                lblPasta2Uretilecek.Text = pasta2adet.ToString();

                if (pasta2adet > pasta2UretilenAdet)
                {
                    unSekerIste = true;
                }
            }
            catch (Exception)
            {

            }
        }

        private void btnAdetGirPasta3_Click(object sender, EventArgs e)
        {
            try
            {
                pasta3adet = int.Parse(txtPasta3Adeti.Text);

                lblPasta3Uretilecek.Text = pasta3adet.ToString();


                if (pasta3adet > pasta3UretilenAdet)
                {
                    unYagIste = true;
                }
            }
            catch (Exception)
            {

            }
        }
    }
}

UYGULAMAYI İNDİR

29 Ocak 2014 Çarşamba

C Sharp Form Uygulamalar Gray Kod datayı İkilik Tabana Çevirme - Gray to Binary Convertion



KONU : C Sharp ( C# ) Form uygulamalar gray kodu ikilik tabana çevirme programı, gray code to binary code convertion application.





UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;


namespace gray_code_binary_convertion_10_bit
{
    public partial class Form1 : Form
    {
        long[] grayTable;
        int nmax = 9, n = 0;

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //Birinci Yöntem :

            grayTable = new long[1 << (nmax + 1)];

            grayTable[0] = 0;

            grayTable[1] = 1;

            n = 1;

            for (int i = 0; i < nmax; i++)
            {
                for (int j = 0; j < (1 << n); j++)
                {
                    grayTable[(1 << n) + j] = grayTable[(1 << n) - j - 1] | 1 << n;
                }
                n++;
            }

            lstBinaryTable.Items.Clear();

            for (int i = 0; i < (1 << (nmax + 1)); i++)
            {
                lstBinaryTable.Items.Add(Convert.ToString(grayTable[i], 2));
            }
        }

        private void btnConvert_Click(object sender, EventArgs e)
        {
            //İkinci Yöntem :

            UInt32 grayData = 0;

            UInt32 cevrilen_sayi = 0;

            UInt32 onluk_taban = 0;

            try
            {
                cevrilen_sayi = Convert.ToUInt32(txtGrayCode.Text);
                for (double i = 0; i < txtGrayCode.Text.Trim().Length; i++)
                {
                    onluk_taban += (cevrilen_sayi % 10) * (UInt32)Math.Pow(2, i);//son basamağı al ve onluk tabanda, değere ekle
                    cevrilen_sayi /= 10;//bir basamak sola kay
                }
                grayData = onluk_taban;
            }
            catch (Exception)
            {

            }

            UInt32 binaryData = (grayData >> 1) ^ grayData;

            txtBinaryCode.Text = Convert.ToString(Math.Abs(binaryData), 2);
        }
    }
}

UYGULAMAYI İNDİR

27 Ocak 2014 Pazartesi

C Sharp Uygulamalar Sınıf kullanarak Alanlar ve Özellikler Oluşturma - Ortalama ve Standart Sapma Hesaplama



KONU : Bir sınıftaki N kadar öğrencinin notları klavyeden giriliyor. Bu öğrencilerin çan eğrisine göre harf notlarını hesaplanabilmesi için sınıfın ortalamasını ve standart sapmasını hesaplayan programı yazınız. Çan eğrisinde harflere karar vermek için sınıf ortalamasının (t) ve standart sapmasının(y) bulunması gerekmektedir. a.Kendisine gönderilen notlara göre ortalamayı hesaplayıp dönen ortalama adındaki fonksiyonu yazınız. b.Kendisine gönderilen notlara göre standart sapmayı hesaplayıp dönen stdsapma dındaki fonksiyonu yazınız. c.)Main/buttonclicked de notlar okunacak.Not okuma işlemi bitince fonksiyonlar çağırılıp sonuçlar ekrana yazılacak.
ETİKETLER: c sharp sapma - c sharp ortalama - c sharp standart sapma - c# sapma - c# ortalama - c sharp math





UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace C_Sharp_Class_Aritmetik_Ortalama
{
    public partial class Form1 : Form
    {
        List sayilar = new List();

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            this.AcceptButton = btnSayiGir;
        }

        private void btnSayiGir_Click(object sender, EventArgs e)
        {
            try
            {
                double sayi = double.Parse(txtSayi.Text);

                lstSayilar.Items.Add(sayi);
                sayilar.Add(sayi);
            }
            catch (Exception)
            {
                //Hata oldugunda not ekranını sil 
                MessageBox.Show(txtSayi.Text + " bu değer sayı olarak kabul edilemez", "HATA", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            txtSayi.Text = "";
        }

        private void btnHesapla_Click(object sender, EventArgs e)
        {


            //Sayılar sınıfından bir örnek olşturalım.
            Sayilar sayi = new Sayilar(sayilar);

            lblOrtalama.Text = sayi.OrtalamaHesapla().ToString("0.000");

            //burda nesnenin standart sapma hesapla metodunu kullanarak giridiğimiz
            //sayılarının standart sapmasının hesaplatacağız.

            sayi.StandartSapmaHesapla();

            //şimdi burada yukarıdaki metodun hesapladığı değeri sınıfın özelliği olan
            //standartsapma dan elde edeceğiz

            lblStandartSapma.Text = sayi.StandartSapma.ToString("0.000");

        }

        private void btnTemizle_Click(object sender, EventArgs e)
        {
            lstSayilar.Items.Clear();
            sayilar.Clear();
        }

    }


    public class Sayilar
    {
        //private int tipinde alan (field)
        private int sayi;

        //private double tipinde alan (field)
        private double ortalama;

        //private double tipinde alan (field)
        private double standartSapma;

        //private string tipinde alan (field)
        private string isim;

        //private double tipinde dizi alan (field)
        private double[] sayiDizisi;

        /// 
        /// Constructor, parametresiz
        /// 
        public Sayilar()
        {

        }

        /// 
        /// Constructor, parametreli
        /// 
        public Sayilar(List sayilist)
        {
            this.sayiDizisi = new double[sayilist.Count];

            for (int i = 0; i < sayilist.Count; i++)
            {
                sayiDizisi[i] = sayilist[i];
            }
        }

        /// 
        /// public strign tipinde sınıf için özellik oluşturma
        /// 
        public string Isım
        {
            get 
            { 
               return isim ;
            }
            set
            {
                isim = value;
            }
        }

        /// 
        /// public strign tipinde sınıf için özellik oluşturma, " Read Only "
        /// 
        public double StandartSapma
        {
            get
            {
                return standartSapma;
            }
        }

        //double tipinde parametre alan ve double değer dönen metot
        public int OrtalamaHesapla(double[] sayidizisi)
        {
            int ortalama = 0;
            int toplam = 0;
            for (int i = 0; i < sayidizisi.Length; i++)
            {
                toplam += Convert.ToInt16(sayidizisi[i]);
            }

            ortalama = toplam / sayidizisi.Length;

            return ortalama;
        }

        //Double değer dönen ve parametre almayan metot
        public double OrtalamaHesapla()
        {
            double ortalama = 0;
            double toplam = 0;
            for (int i = 0; i < sayiDizisi.Length; i++)
            {
                toplam +=  sayiDizisi[i];
            }
            try
            {
                ortalama = toplam / sayiDizisi.Length;
            }
            catch (Exception)
            {
                ortalama = 0;
            }
   

            return ortalama;
        }

        //parametre almayan ve değer dönmeyen metot
        public void StandartSapmaHesapla()
        {
            // Madde 1: Aritmetik ortalama:sayıların toplamı / sayıların adedi

            int ortalama = OrtalamaHesapla(sayiDizisi);

            // Madde 2: veri – aritmetik ortalama
            // Madde 3: farkların karesi toplanır.

            double farkKarelerininToplami = 0;

            for (int i = 0; i < sayiDizisi.Length; i++)
            {
                farkKarelerininToplami += Math.Pow((double)(sayiDizisi[i] - ortalama), 2.0);
            }

            // Madde 4: hesaplanan değer, veri sayısının 1 eksiğine bölünür.
            // Madde 5 : Hesaplanan değerin karekökü alınır.

            this.standartSapma = Math.Sqrt(farkKarelerininToplami / (sayiDizisi.Length + -1));
        }
    }
}

UYGULAMAYI İNDİR

25 Ocak 2014 Cumartesi

C Sharp Form Uygulamalar N Tane Öğrenicinin Not Ortalmasını ve Standart Sapmasını Hesaplama



KONU : Bir sınıftaki N kadar öğrencinin notları klavyeden giriliyor. Bu öğrencilerin çan eğrisine göre harf notlarını hesaplanabilmesi için sınıfın ortalamasını ve standart sapmasını hesaplayan programı yazınız. Çan eğrisinde harflere karar vermek için sınıf ortalamasının (t) ve standart sapmasının(y) bulunması gerekmektedir. a.Kendisine gönderilen notlara göre ortalamayı hesaplayıp dönen ortalama adındaki fonksiyonu yazınız. b.Kendisine gönderilen notlara göre standart sapmayı hesaplayıp dönen stdsapma dındaki fonksiyonu yazınız. c.)Main/buttonclicked de notlar okunacak.Not okuma işlemi bitince fonksiyonlar çağırılıp sonuçlar ekrana yazılacak.
ETİKETLER: c sharp sapma - c sharp ortalama - c sharp standart sapma - c# sapma - c# ortalama - c sharp math





UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace C_Sharp_N_Tane_Notun_Ortalamasi
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void btnNotGirin_Click(object sender, EventArgs e)
        {
            try
            {
                int not = int.Parse(txtNot.Text);
                if (not >= 0 && not <= 100)
                {
                    lstNotlar.Items.Add(not);
                    lblNotSayisi.Text = lstNotlar.Items.Count.ToString();
                }
                else
                {
                    MessageBox.Show(txtNot.Text + " bu değer not olarak kabul edilemez", "HATA", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            catch (Exception)
            {
                //Hata oldugunda not ekranını sil 
                MessageBox.Show(txtNot.Text + " bu değer not olarak kabul edilemez", "HATA", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            txtNot.Text = "";
        }

        private void btnOrtalamaHesapla_Click(object sender, EventArgs e)
        {
            int[] notlar = new int[lstNotlar.Items.Count];
            for (int i = 0; i < lstNotlar.Items.Count; i++)
            {
                notlar[i] = Convert.ToInt16(lstNotlar.Items[i]);
            }
            lblNotOrtalamasi.Text = OrtalamaHesapla(notlar).ToString();
        }

        private int OrtalamaHesapla(int[] notlar)
        {
            int ortalama = 0;
            int toplam = 0;
            for (int i = 0; i < notlar.Length; i++)
            {
                toplam += Convert.ToInt16(notlar[i]);
            }

            ortalama = toplam / notlar.Length;

            return ortalama;
        }

        private void btnStandartSapma_Click(object sender, EventArgs e)
        {
            int[] notlar = new int[lstNotlar.Items.Count];
            for (int i = 0; i < lstNotlar.Items.Count; i++)
            {
                notlar[i] = Convert.ToInt16(lstNotlar.Items[i]);
            }


            // Madde 1: Aritmetik ortalama:sayıların toplamı / sayıların adedi

            int ortalama = OrtalamaHesapla(notlar);

            // Madde 2: veri – aritmetik ortalama
            // Madde 3: farkların karesi toplanır.

            double farkKarelerininToplami = 0;

            for (int i = 0; i < notlar.Length; i++)
            {
                farkKarelerininToplami += Math.Pow((double)(notlar[i] - ortalama), 2.0);
            }

            // Madde 4: hesaplanan değer, veri sayısının 1 eksiğine bölünür.
            // Madde 5 : Hesaplanan değerin karekökü alınır.

            double standartSapma = Math.Sqrt((double)farkKarelerininToplami / (notlar.Length + -1));

            lblStandartSapma.Text = standartSapma.ToString("0.000");
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            this.AcceptButton = btnNotGirin;
        }
    }
}
   

UYGULAMAYI İNDİR

19 Ocak 2014 Pazar

C Sharp Form Bilgisayarın Bütün Ip ve Mac Adresleri Bulma Programı




KONU : C Sharp ( C# ) form uygulamalar bir bilgisayarın bütün ip ve mac adreslerini tespit etme, c sharp network interface sınıfını kullanarak bilgisayarın mac adreslerini bulma ve listeleme, c# ip address ve dns sınıflarını kullanarak bilgisayarın tüm ip adreslerini bulma ve listeleme örnekleri.






UYGULAMAYI İNDİR




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Net.NetworkInformation;

namespace C_Sharp_Form_Ip_Adres_Mac_Adres_Ogrenme
{
    public partial class Ip_Adres_Mac_Adres_Ogrenme_Form : Form
    {
        public Ip_Adres_Mac_Adres_Ogrenme_Form()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            
            // Burada ağ arayüzünü foreach ile dolaşarak bilgisayarın fiziksel
            // mac adreslerini yazdırıyoruz

            foreach (NetworkInterface networkInterface in NetworkInterface.GetAllNetworkInterfaces())
            {
                var macAddress = networkInterface.GetPhysicalAddress().ToString();
                if (macAddress != string.Empty)
                {
                    listBox1.Items.Add("Mac Adres : " + macAddress);
                }
            }


            // IP Adress sınıfında olusturduğumuz örneğimize DNS deki ip
            // adreslerini alıyoruz ve bunları listemize yadırıyoruz 

            IPAddress[] ipHostAddress = Dns.GetHostAddresses(Dns.GetHostName());

            for (int i = 0; i < ipHostAddress.Length; i++)
            {
                listBox1.Items.Add("Lokal IP Adres : " + ipHostAddress[i].ToString());
            }
        }
    }
}


UYGULAMAYI İNDİR

C Sharp Form Menü Kontrollerini Kullanarak Yazının Stil, Biçim, Font Özelliklerini Ayarlama



KONU : C Sharp ( C# ) form uygulamalar menu kontrolleri yönetmek. Word kontrollerini benzerleri türetmek. C sharp textbox içerisindeki yazıya stil verme, biçim verme, paragraf özelliklerini ayralama, altı çizgili yapma, yazı rengini koyulaştırma, textbox içerindeki yazıyı düz veya italik yazdırma. font özelliklerini değiştirme, c sharp textbox içerisindeki yazıyı sola, ortaya ve sağa yaslama seçenekleri verme, c# textbox içerisindeki yazının font büyüklüğünü değiştirebilme, c sharp textbox içerisinde yazı olan metindeki kelime sayısını hesaplama, c sharp menüyü kullanarak pencere büyüklüklerini ayarlayabilme, c sharp tam ekran yapma, normal gösterme, %50 gösterim yapma, c sharp formu simge durumuna getirme.






UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace C_Sharp_Form_Menu_Kontrolleri
{
    public partial class Menu_Kontrolleri : Form
    {
        public Menu_Kontrolleri()
        {
            InitializeComponent();
        }

        private void Mn_Kalın_Click(object sender, System.EventArgs e)
        {
            (sender as MenuItem).Checked = !(sender as MenuItem).Checked;
            if (Mn_Kalın.Checked)
                textBox.Font = new Font(textBox.Font,
                 textBox.Font.Style | FontStyle.Bold);
            else
                textBox.Font = new Font(textBox.Font,
                 textBox.Font.Style ^ FontStyle.Bold);
        }

        private void Mn_Egik_Click(object sender, System.EventArgs e)
        {
            (sender as MenuItem).Checked = !(sender as MenuItem).Checked;
            if (Mn_Egik.Checked)
                textBox.Font = new Font(textBox.Font,
                 textBox.Font.Style | FontStyle.Italic);
            else
                textBox.Font = new Font(textBox.Font,
                 textBox.Font.Style ^ FontStyle.Italic);
        }

        private void Mn_Altı_Çizili_Click(object sender, System.EventArgs e)
        {
            (sender as MenuItem).Checked = !(sender as MenuItem).Checked;
            if (Mn_Altı_Çizili.Checked)
                textBox.Font = new Font(textBox.Font,
                 textBox.Font.Style | FontStyle.Underline);
            else
                textBox.Font = new Font(textBox.Font,
                 textBox.Font.Style ^ FontStyle.Underline);
        }

        private void Mn_Sola_Click(object sender, System.EventArgs e)
        {
            (sender as MenuItem).Checked = !(sender as MenuItem).Checked;
            Mn_Ortaya.Checked = false;
            Mn_Saga.Checked = false;
            textBox.TextAlign = HorizontalAlignment.Left;
        }

        private void Mn_Ortaya_Click(object sender, System.EventArgs e)
        {
            (sender as MenuItem).Checked = !(sender as MenuItem).Checked;
            Mn_Sola.Checked = false;
            Mn_Saga.Checked = false;
            textBox.TextAlign = HorizontalAlignment.Center;
        }

        private void Mn_Saga_Click(object sender, System.EventArgs e)
        {
            (sender as MenuItem).Checked = !(sender as MenuItem).Checked;
            Mn_Ortaya.Checked = false;
            Mn_Sola.Checked = false;
            textBox.TextAlign = HorizontalAlignment.Right;
        }

 
        private void Menu_Tıklandı(object sender, System.EventArgs e)
        {
            int boyut;
            boyut = int.Parse((sender as MenuItem).Text);
            textBox.Font = new Font(textBox.Font.FontFamily,
                                 boyut,
                                 textBox.Font.Style);
        }

        private void Mn_Kac_Kelime_Var_Click(object sender, EventArgs e)
        {
            string metin = textBox.Text.Trim();

            string[] tumKelimeler = metin.Split(' ');
            int kelimesayisi = 0;
            for (int i = 0; i < tumKelimeler.Length; i++)
            {
                if (tumKelimeler[i].Trim() != "")
                    kelimesayisi++;
            }
            MessageBox.Show("Bu metin " + kelimesayisi + " Adet kelimeden oluşmaktadır. ",
                                                          "Bilgi", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }

        private void Mn_Tam_Ekran_Click(object sender, EventArgs e)
        {
            this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
        }

        private void Mn_Normal_Click(object sender, EventArgs e)
        {
            this.WindowState = System.Windows.Forms.FormWindowState.Normal;
        }

        private void Mn_Simge_Click(object sender, EventArgs e)
        {
            this.WindowState = System.Windows.Forms.FormWindowState.Minimized;
        }

        private void Mn_Yuzde_Elli_Click(object sender, EventArgs e)
        {
            //bu özellik tam ekran aktif iken çalışmaz
            this.Size = new Size(Convert.ToInt32(this.Width * 0.5), Convert.ToInt32(this.Height * 0.5));
        }

        private void Menu_Kontrolleri_Load(object sender, EventArgs e)
        {
            int i;
            for (i = 8; i <= 20; i += 2)
                Mn_Font_Boyutu.MenuItems.Add(i.ToString(), new EventHandler(Menu_Tıklandı));

            textBox.Text = "C# Programlama Dili (si şarp şeklinde telaffuz edilir), Microsoft'un geliştirmiş olduğu" +
"yeni nesil dilidir. Yine Microsoft tarafından geliştirilmiş " +
".NET Teknolojisi için geliştirilmiş dillerden biridir." +
"Microsoft tarafından geliştirilmiş olsa da ECMA ve ISO standartları altına alınmıştır." +
"C programlama dilinde bir tamsayı değişkeni 1 atrırmak için ++ soneki kullanılır" +
" C++ dili adını, C diliyle Nesneye Yönelimli Programlama yapabilmek " +
" için eklentiler (C With Classes) almıştır. " +
"Benzer şekilde C++ diline yeni eklentiler yapılarak ((C++)++) bir adım" +
" daha ileriye götürülmüş ve tamamen nesneye yönelik tasarlanmış C# dilinin" +
" isimlendirilmesinde, + karakterlerinin birbirlerine yakınlaşmış hali ve" +
" bir melodi anahtarı olan C# Major kullanılmıştır." +
"Bu dilin tasarlanmasına Pascal, Delphi derleyicileri ve J++ programlama " +
"dilinin tasarımlarıyla bilinen Anders Hejlsberg liderlik etmiştir." +
"Birçok alanda Java'yı kendisine örnek alır ve C# ta java gibi c ve c++" +
"kod sintaksına benzer bir kod yapısındadır. .NET kütüphanelerini kullanmak" +
"amacıyla yazılan programların çalıştığı bilgisayarlarda uyumlu bir kütüphanenin " +
"ve yorumlayıcının bulunması gereklidir. Bu, Microsoft'un .Net Framewok'u" +
"olabileceği gibi ECMA standartlarına uygun herhangi bir kütüphane ve yorumlayıcı" +
" de olabilir. Yaygın diğer kütüphanelere örnek olarak Portable.Net ve " +
" Mono verilebilir." +
"Özellikle nesne yönelimli programlama kavramının gelişmesine katkıda bulunan en " +
"aktif programlama dillerinden biridir .NET platformunun anadili olduğu bazı " +
" kesimler tarafından kabul görse de bazıları bunun doğru olmadığını savunur." +
"C#.NET orta seviyeli programlama dillerindendir. Yani hem makine diline hem " +
" de insan algısına eşit seviyededir. Buradaki orta ifadesi dilin gücünü " +
" değil makine dili ile günlük konuşma diline olan mesafesini göstermektedir." +
" Örneğin; Visual Basic.NET(VB.NET) yüksek seviyeli bir dildir. Dersek bu dilin" +
"insanların günlük yaşantılarında konuşma biçimine yakın şekilde yazıldığını " +
" ifade etmektedir. Dolayısı ile buradan yola çıkarak VB.NET, C#.NET'ten daha" +
"güclü bir dildir diyemeyiz. Programın çalışması gereken bilgisayarlarda " +
"framework kurulu olması gerekmektedir(Win7 ve Vista'da framework kuruludur)" +
"" +
"" +
"yazı:http://tr.wikipedia.org/wiki/C_Sharp_(programlama_dili)";
        }
    }
}

UYGULAMAYI İNDİR

C Sharp Form Uygulamalar Kaynak Kodlar Bölüm 27

C Sharp Form Uygulamalar Kısayol Oluşturma Programı




KONU : C Sharp ( C# ) form uygulamalar Adresi girilen bir programın veya bir dosyanın kısa yolunu oluşturma, çalışan uygulamının kısa yolunu masaüstüde oluşturma






UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace C_Sharp_Form_Masaustu_Kisa_Yol_Olusturma
{
    public partial class Form1 : Form
    {
        private System.Windows.Forms.Button btnShortCut;
        private System.Windows.Forms.Button btnProgramShortCut;
        private System.Windows.Forms.TextBox txtName;
        private System.Windows.Forms.TextBox txtPath;
        private System.Windows.Forms.TextBox txtProgramName;
        private System.Windows.Forms.GroupBox groupBox1;
        private System.Windows.Forms.GroupBox groupBox2;
        private System.Windows.Forms.Label label2;
        private System.Windows.Forms.Label label1;
        private System.Windows.Forms.Label label3;

        public Form1()
        {
            InitializeComponent();
        }

        private void btnShortCut_Click(object sender, EventArgs e)
        {
            //oluşturmak istediğiniz kısa yolun bağlantı ismini ve kısa yolun 

            //açacağı dosyanın adresini yazın. 

            if (txtName.Text.Trim() == "")
                MessageBox.Show("Kısayol ismi girmelisiniz.", "Uyarı", 
                                              MessageBoxButtons.OK, MessageBoxIcon.Warning);
            else if (txtPath.Text.Trim() == "")
                MessageBox.Show("Kısayol oluşturulacak dosyanın adresini girmelisiniz.",
                                         "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            else
                appShortcutToDesktop(txtName.Text.Trim(), @txtPath.Text.Trim());
            //örnek:  appShortcutToDesktop("application",@"D:\FK\FK WEB SAYFAM\app_data");
        }

        private void btnProgramShortCut_Click(object sender, EventArgs e)
        {
            //sadece kısayolun isminiz girmeniz yeterli

            if (txtProgramName.Text.Trim() == "")

                MessageBox.Show("Kısayol ismi girmelisiniz.", "Uyarı", 
      MessageBoxButtons.OK, MessageBoxIcon.Warning);

            else

                appShortcutToDesktop(txtProgramName.Text.Trim());

            //örnek:   appShortcutToDesktop("application");
        }

        /// Herhangi bir programın masaüstüne kısayolunu oluşturma 

        private void appShortcutToDesktop(string linkName, string path)
        {
            string deskDir = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);
            try
            {
                using (StreamWriter writer = new StreamWriter(deskDir + "\\" + linkName + ".url"))
                {
                    if (path.Trim() != "")
                    {
                        string app = path;

                        writer.WriteLine("[InternetShortcut]");

                        writer.WriteLine("URL=file:///" + app);

                        writer.WriteLine("IconIndex=0");

                        string icon = app.Replace('\\', '/');

                        writer.WriteLine("IconFile=" + icon);

                        writer.Flush();
                    }
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Geçersiz İşlem", "Uyarı", 
     MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
      
        /// Eğer yaptığınız c sharp kendi kısa yolunu yapsın istiyorsanız... 
 
        private void appShortcutToDesktop(string linkName)
        {
            string deskDir = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);

            try
            {
                using (StreamWriter writer = new StreamWriter(deskDir + "\\" + linkName + ".url"))
                {
                    string app = System.Reflection.Assembly.GetExecutingAssembly().Location;

                    writer.WriteLine("[InternetShortcut]");

                    writer.WriteLine("URL=file:///" + app);

                    writer.WriteLine("IconIndex=0");

                    string icon = app.Replace('\\', '/');

                    writer.WriteLine("IconFile=" + icon);

                    writer.Flush();
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Geçersiz İşlem", "Uyarı",
      MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }

        private void btnAc_Click(object sender, EventArgs e)
        {
            OpenFileDialog ac = new OpenFileDialog();

            ac.Filter = " Metin Dosyaları |*.txt| Bütün Dosyalar|*.*";


            if (ac.ShowDialog() == DialogResult.OK)
            {
                StreamReader oku = new StreamReader(ac.FileName);

                //Dosyanın içini okumak için streamreader kullanılır

                txtPath.Text = oku.ReadToEnd();

                oku.Close();

                //Dosyanın adresini text te yazdırma

                txtPath.Text = ac.FileName;   
            }
        }

    }
}


UYGULAMAYI İNDİR

C SHarp Form Uygulamalar Treeview Nesnesinin Kullanımı ve Treeview Nesnesine İkon Ekleme



KONU : C Sharp ( C# ) Form Uygulamalar Treeview Nesnesinin Kullanımı, Alt alta node ekleme, Eklenen nodeların ikonlarını değiştirme, C Sharp Treeview farklı seviyeler için farklı ikon kullanımı, c sharp treeview nesnesine ikon bağlama ve ikon seçme.
ETİKETLER : csharp treeview kullanımı - csharp treeview - csharp treeview example - csharp treeview selected node - c# treeview - c# treeview örnek - c# treeview selected node - c# tree - c# tree view - c# tree node - c# treeview add node - c# treeview add - c# treeview add image to node - c# treeview add root node - c# treeview add nodes dynamically






UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace TreeView
{
    public partial class Form1 : Form
    {

        private System.Windows.Forms.TreeView treeView;
        private System.Windows.Forms.Label lblHangiNodeTiklandi;

        public Form1()
        {
            InitializeComponent();
            InitializeMyComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //treeview ya bir ikon ekleme, burada iki farklı ikon ekle
            //birincisini en üst nodelar için kullan
            //diğer ikonu sadece en alt nodelar için kullan

            ImageList il = new ImageList();
            il.Images.Add(new Icon("folder.ico"));
            il.Images.Add(new Icon("Turkiye.ico"));
            treeView.ImageList = il;

            //treeview için bir node oluştur .Bu ana node olacak  adıda  "System Database" olsun
            
            TreeNode node = new TreeNode("System Database");
            
            ////Ana node altına 4 tane node ekleyelim

            node.Nodes.Add("Attributes");
            node.Nodes.Add("Positions");
            node.Nodes.Add("Radio Trunks");
            node.Nodes.Add("Line Trunks");

            // 2. alt nodun altına da yeni node lar  ekleyelim
           
            for (int i = 0; i < 2; i++)
            {
                node.Nodes[1].Nodes.Add("POS " + (i + 1));
               
                // Bu node un resmini değiştir => türkiye.ico olarak güncelleyelim
                // bunun için bu node un alt node larınının imageindex ini 1 yapmamız yeterli olacak

                node.Nodes[1].Nodes[i].ImageIndex = 1;
            }
            

            // 3. alt nodun altına da yeni node lar  ekleyelim

            for (int i = 0; i < 8; i++)
            {
                node.Nodes[2].Nodes.Add("RADIO" + (i + 1));

                // Bu node un resmini değiştir => türkiye.ico olarak güncelleyelim.

                node.Nodes[2].Nodes[i].ImageIndex = 1;
            }

            // 4. alt nodun altına da yeni node lar  ekleyelim

            for (int i = 0; i < 4; i++)
            {
                node.Nodes[3].Nodes.Add("LINE" + (i + 1));

                // Bu node un da resmini değiştirelim. 
                
                node.Nodes[3].Nodes[i].ImageIndex = 1;
            }

            //ana node u treeview a eklenince ağaç görünümümüz oluştu

            treeView.Nodes.Add(node);
 
        }

        /// treeview da bir eleman seçilmiş veya tıklanmış ise  bu metot tetiklenecek
        /// bu işlemi InitializeMyComponent metodunda treview nesnesinin afterselect olayına
        /// bu metodu bağlayarak gerçeklerştirdim.
        
        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
        {
            //treeview da bir node tıklanınca o node ile ilgili istediğimi  işlemi yaptıralım

            //Eğer seçili bir node yoksa hiçbir şey yapmadan geri dönsün

            if (treeView.SelectedNode == null)
            {
                return;
            }


            //form yerleştirdiğim etikete tıklanan nodun text değerini yazdıracağım

            lblHangiNodeTiklandi.Text = "Tıklanan Node :" + treeView.SelectedNode.Text;

            //Seçilen veya tıklanan node ile ilgili işlemleri aşağıdaki gibi yapabilirim

            if (treeView.SelectedNode.Text == "System Database")
            {
                MessageBox.Show("burada Ana node " + treeView.SelectedNode.Text + 
                    " ile ilgili işlmeler yaptırılır");
            }
            else if (treeView.SelectedNode.Text == "Positions")
            {
                MessageBox.Show("burada Alt node " + treeView.SelectedNode.Text +
                    " ile ilgili işlmeler yaptırılır");
            }
            else if (treeView.SelectedNode.Text == "Radio Trunks")
            {
                MessageBox.Show("burada Alt node " + treeView.SelectedNode.Text +
                    " ile ilgili işlmeler yaptırılır");
            }
            else if (treeView.SelectedNode.Text == "Line Trunks")
            {
                MessageBox.Show("burada Alt node " + treeView.SelectedNode.Text + 
                    " ile ilgili işlmeler yaptırılır");
            }
        }

        /// 
        /// programda kullanılacak kontrollerin ayarlarını yapma.
        /// 
        private void InitializeMyComponent()
        {
            this.treeView = new System.Windows.Forms.TreeView();
            this.lblHangiNodeTiklandi = new System.Windows.Forms.Label();
            this.SuspendLayout();
            // 
            // treeView
            // 
            this.treeView.Location = new System.Drawing.Point(12, 12);
            this.treeView.Name = "treeView";
            this.treeView.Size = new System.Drawing.Size(161, 349);
            this.treeView.TabIndex = 0;
            this.treeView.AfterSelect += new 
                System.Windows.Forms.TreeViewEventHandler(this.treeView1_AfterSelect);
            // 
            // lblHangiNodeTiklandi
            // 
            this.lblHangiNodeTiklandi.AutoSize = true;
            this.lblHangiNodeTiklandi.Location = new System.Drawing.Point(244, 24);
            this.lblHangiNodeTiklandi.Name = "lblHangiNodeTiklandi";
            this.lblHangiNodeTiklandi.Size = new System.Drawing.Size(35, 13);
            this.lblHangiNodeTiklandi.TabIndex = 1;
            this.lblHangiNodeTiklandi.Text = "label1";
            // 
            // Form1
            // 
            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(398, 490);
            this.Controls.Add(this.lblHangiNodeTiklandi);
            this.Controls.Add(this.treeView);
            this.Name = "Form1";
            this.Text = "Treview Application";
            this.Load += new System.EventHandler(this.Form1_Load);
            this.ResumeLayout(false);
            this.PerformLayout();

        }
    }
}

UYGULAMAYI İNDİR

C Sharp Konsol İkilik Tabandan Onluk Tabana Çevirme İşlemi



KONU : C sharp konsol uygulamalar ikilik tabandan onluk tabana çevirme, ikilik tabandaki bir sayıyı onluk tabana çevirme işlemleri.



C Sharp Konsol Uygulamalar İkilik Tabandan Onluk Tabana Çevirme

UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace C_Sharp_Konsol_ikilik_Tabandan_Onluk_Tabana_Cevirme
{
    class ikilik_Tabandan_Onluk_Tabana_Cevirme
    {
        static void Main(string[] args)
        {

            int ikilik_taban = 0, cevrilen_sayi = 0;

            double onluk_taban = 0;
            
 
            while (true)
            {
                Console.WriteLine("\nOnluk tabana çevrilecek ikilik tabandaki sayiyi giriniz  \n<=");

                onluk_taban = 0;

                int devammi = 1; 

                try
                {
                    ikilik_taban = int.Parse(Console.ReadLine());

                    cevrilen_sayi = ikilik_taban;

                    string kontrol_et = cevrilen_sayi.ToString().Trim();

                    for (int i = 0; i < kontrol_et.Length; i++)
                    {
                        if (kontrol_et[i] != '1' && kontrol_et[i] != '0')
                        {
                            devammi = 0;// eğer ikilik tabanda bir değer girilmemişsa işlemi yeniden başlat

                            // console da yazı rengini kırmızı yap(uyarı)

                            Console.ForegroundColor = ConsoleColor.Red;
                            
                            Console.WriteLine("\nSayı ikilik tabanda değil. ikilik tabanda bir sayı 
giriniz...\n");
                            // console da yazı rengini beyaz yap

                            Console.ForegroundColor = ConsoleColor.White;

                            break;

                        }
                    }
                }
                catch (Exception)
                {
                    devammi = 0;
                }

                if (devammi == 1)
                {
                    for (double i = 0; i < ikilik_taban.ToString().Trim().Length; i++)
                    {
                        onluk_taban += (cevrilen_sayi % 10) * Math.Pow(2, i);//son basamağı al ve onluk tabanda, değere ekle
                        cevrilen_sayi /= 10;//bir basamak sola kay
                    }

                    // console da yazı rengini yeşil yap (sonuç)

                    Console.ForegroundColor = ConsoleColor.Green;

                    Console.WriteLine(ikilik_taban + " sayısının onluk tabanda değeri = " + onluk_taban);

                    // console da yazı rengini sarı yap (seçenekler)

                    Console.ForegroundColor = ConsoleColor.Yellow;

                    Console.WriteLine("\n\nonluk tabana çevirmeye devam etmek istiyorsaniz =>1\nObeb hesaplamadan çıkmak istiyorsanız =>0 basiniz.\n<=");

                    // console da yazı rengini beyaz yap(yeni işlem)

                    Console.ForegroundColor = ConsoleColor.White;

                    devammi = int.Parse(Console.ReadLine());

                    //Ebob hesaplamadan çıkmak için 1 e basılmışsa loop dan break komutu ile çıkılır.

                    if (devammi == 0)
                        break;
                }
            }
        }
    }
}

UYGULAMAYI İNDİR

C Sharp Form Uygulamalar Sistem Saati ve Geriye Sayan Saat Uygulaması



KONU : C Sharp ( C# ) form uygulamalar sistem saatini gösterme, geriye doğru sayan saat yapımı, c# timer kullanımı, c# saat uygulaması, c# try catch blok örnekleri.





UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace c_sharp_geriye_dogru_sayma
{
    public partial class Form1 : Form
    {
        DateTime zaman;

        int geriSayanZamanSaniye;

        int i = 1;

        int saat, dakika, saniye;
        
        public Form1()
        {
            InitializeComponent();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            saatiGuncelle();//timer1 başlatıldığında sistem saati güncellesin 

            geriSayanZamanSaniye -= 1; //gerisayım saatini bir azalt

            //text kutularında kalan zamanı göster

            txtSaat.Text = (geriSayanZamanSaniye / 3600).ToString("00");

            txtDakika.Text = ((geriSayanZamanSaniye % 3600) /60).ToString("00");

            txtSaniye.Text = (geriSayanZamanSaniye % 60).ToString("00");

            //Zaman tamamlandıysa timer ı durduralım.

            if (geriSayanZamanSaniye == 0)
                timer1.Stop(); //timerı durdur fonksiyonu

            lblGeriSayanSaat.Text = txtSaat.Text + ":" + txtDakika.Text + ":" + txtSaniye.Text;
        }

        private void btnBaslat_Click(object sender, EventArgs e)
        {
            //etiketimizdeki saati güncellemesini istiyorum

            //amacım sistem saatini görmek

            saatiGuncelle();

            //Geri sayım saatini güncellemek için 

            //saat,dakika ve saniye textbox larındaki değerleri ilk önce kontrol et

            //eğer girilen değer doğru ise işleme devam et

            bool sonuc = geriSayimSaatiniKontrolEt();

            if (sonuc)
            {

                geriSayanZamanSaniye = saat * 60 * 60 + dakika * 60 + saniye;

                timer1.Interval = 1000;

                timer1.Start();
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            saatiGuncelle();

            txtSaat.Text = "01";

            txtDakika.Text = "00";

            txtSaniye.Text = "00";

        }

        private void saatiGuncelle()
        {
            //sistem saatini götüntüleme

            zaman = DateTime.Now;

            lblSaat.Text = zaman.ToLongTimeString();
        }

        private bool geriSayimSaatiniKontrolEt()
        {

            //geri sayım için girilen saat, dakika ve saniye bilgilerini kontrol edelim

            // eğer bir hata varsa programımızın hata yapmaması için uyarı verelim


            try
            {
                //ilk önc girilen değerler rakam mı bunu kpnrol edelim
                
                saat = int.Parse(txtSaat.Text);

                dakika = int.Parse(txtDakika.Text);

                saniye = int.Parse(txtSaniye.Text);
                
                //Şimdi de giriln değerler doğru aralıklarda mı onu kontrol edelim

                if (saniye < 60 && dakika < 60 && saniye > -1 && dakika > -1 && saat > -1)
                    return true;
                else
                {
                    //Eğer bir hata varsa timerı durdurup uyarı verelim.

                    timer1.Stop();

                    return false;
                }
            }
            catch (Exception)
            {
                timer1.Stop();
  
                MessageBox.Show("Değerlerden birinde hata var", "Hata", 
                                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                
                return false;
            }
        }
    }
}

UYGULAMAYI İNDİR

18 Ocak 2014 Cumartesi

C Sharp Uygulamalar Girilen Karakterlerin Sayı Olup Olmadığını Kontrol Etme



KONU : C Sharp Uygulamaları : Konsol Uygulamalar Konsol ekranında girilen bir değerin sayı olup olmadığını kontrol eden kontrol metodu.




UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.Text;

namespace C_Sharp_Konsol_Metot_Girilen_Deger_Sayi_Mi
{
    class Metot_Girilen_Deger_Sayi_Mi
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Bir sayi girininiz");
            
            // Girilen karakter veya karakterleri 'girilen' string değişkenine kaydet

            string girilen = Console.ReadLine();

            // bu metod ile 'girilen' değişkenindeki karakterler for döngüsü ile

            // teker teker dönülerek karakterin sayi olup olmadığını kontrol eder

            bool durum = sayiMi_for(girilen);

            if (durum)
                Console.WriteLine("\nGirilen değer bir sayıdır");
            else
                Console.WriteLine("\nGirilen değer bir sayı değildir");


            Console.WriteLine("\nBir sayi girininiz");

            // Girilen karakter veya karakterleri 'girilen' string değişkenine kaydet

            girilen = Console.ReadLine();


            // bu metod ile 'girilen' değişkenindeki karakterler int.parse() metodu ile

            // sayıya çevrilir. Eğer bu değer sayı ise hata vermes sonraki adıma devam eder

            // Eğer sayı değilse hata veri ve try - catch kontrolünün catch kısmına atlar 

            durum =  sayiMi_try(girilen);

            if (durum)
                Console.WriteLine("\nGirilen değer bir sayıdır");
            else
                Console.WriteLine("\nGirilen değer bir sayı değildir");


            Console.ReadKey();


            /*
             * Programın çıktısı:
             * 
            Bir sayi girininiz
            342143

            Girilen değer bir sayıdır

            Bir sayi girininiz
            32412r3

            Girilen değer bir sayı değildir
            */

        }
        static bool sayiMi_for(string a)
        { 
            bool sonuc=true;
            for (int i = 0; i < a.Length; i++)
                if (!char.IsDigit(a[i]))
                    sonuc = false;      //Eğer karakter sayı değilse false döner

            return sonuc;
        
        }

        static bool sayiMi_try(string deger)
        {
            try
            {
                int.Parse(deger);// deger değişkeni int tipine dönüştürür.
                // Dönüşüm başarılı ise aşağıdaki kodu tamamlayıp catch kısmına girmeden
                // try - catch bloğundan çıkar
                // Dönüştüremezse try ın catch kısmına atlar
                return true;  //Eğer deger sayı ise true döner

            }
            catch (Exception)
            {
                return false; //Eğer deger sayı değilse false döner
            }
        }
    }
}

UYGULAMAYI İNDİR

C Sharp Uygulamalar Formda Listview ve Listviewitem Kullanımı



KONU : C Sharp Uygulamalar - C Sharp ( C# ) listview kullanımı ve listviewitem nesneninin örneğini oluşturarak listview kontrolüne ekleme örneği.
ETİKETLER: c sharp listview - c sharp listviewitem - csharp listview - csharp listview kullanımı - csharp listview example - csharp listview örnek - csharp listviewitem - csharp listviewitem örneği - c# listviewitem - c# listview kullanımı.





UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace listview
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

 
        private void button1_Click(object sender, EventArgs e)
        {
            //listviewitem dan bir örnek oluşturuyoruz.
           
            ListViewItem lstitem = new ListViewItem();

            //Ekle butonuna tıklandığında textbox lardaki değerleri
            //listview daki ilgili kolona yerleştiriyoruz.

            lstitem.Text = txtAd.Text;
            
            lstitem.SubItems.Add(txtSoyad.Text);
            lstitem.SubItems.Add(txtUnvan.Text);
            lstitem.SubItems.Add(txtTelefon.Text);
            
            //Daha sonra listviewitem nesnesini listview kontrolüne ekliyoruz.
           
            listView1.Items.Add(lstitem);
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        } 
    }
}

UYGULAMAYI İNDİR

C Shar Uygulamalar ListView ve ListViewItem Kullanımı - ListView Listesini Temizleme



KONU : C Sharp Uygulamalar - C Sharp ( C# ) listview kullanımı ve listviewitem nesneninin örneğini oluşturarak listview kontrolüne ekleme örneği. Listview listesini temizleme örneği.
ETİKETLER: c sharp listview - c sharp listviewitem - csharp listview - csharp listview kullanımı - csharp listview example - csharp listview örnek - csharp listviewitem - csharp listviewitem örneği - c# listviewitem - c# listview kullanımı - c sharp listview clear - c sharp listview listesini temizleme





UYGULAMAYI İNDİR




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Listview_Eleman_Ekleme
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void btnEkle_Click(object sender, EventArgs e)
        {
            ListViewItem lvi = new ListViewItem();
            lvi.Text = txtAd.Text;
            lvi.SubItems.Add(txtSoyad.Text);
            lvi.SubItems.Add(txtUnvan.Text);
            lvi.SubItems.Add(txtTelefon.Text);
            listView1.Items.Add(lvi);
        }

        private void txtAd_KeyPress(object sender, KeyPressEventArgs e)
        {
            try
            {
                Convert.ToInt32(e.KeyChar.ToString());
                e.Handled = true;
            }
            catch (Exception)
            {         
            }
        }

        private void txtTelefon_KeyPress(object sender, KeyPressEventArgs e)
        {
            try
            {
                Convert.ToInt32(e.KeyChar.ToString());
                
            }
            catch (Exception)
            {
                e.Handled = true;
            }
        }

        private void txtUnvan_KeyPress(object sender, KeyPressEventArgs e)
        {
            try
            {
                Convert.ToInt32(e.KeyChar.ToString());
                e.Handled = true;
            }
            catch (Exception)
            {
            }
        }

        private void txtSoyad_KeyPress(object sender, KeyPressEventArgs e)
        {
            try
            {
                Convert.ToInt32(e.KeyChar.ToString());
                e.Handled = true;
            }
            catch (Exception)
            {
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            listView1.Items.Clear();
        }

        private void btnListeyiTemizle_Click(object sender, EventArgs e)
        {
            listView1.Items.Clear();
        }
    }
}

UYGULAMAYI İNDİR

C Sharp Konsol Uygulama mm Olarak Girilen Uzunluğu Birimlere Göre Gösterme



KONU : C Sharp Uygulamalar - C Sharp ( C# ) konsol uygulama mm olarak girilen uzunluğu uzunluk birimleri ile yazı formatında gösterme.
ETİKETLER: c sharp mm den km çevirici - c sharp konsol uzunluk hesaplama - c sharp uzunluk - csharp uzunluk hesaplama





UYGULAMAYI İNDİR
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace C_Sharp_Km_Mm_Ceviciri
{
    class Program
    {
        static void Main(string[] args)
        {

            while (true)
            {

                int mm = 0;
                int cm = 0;
                int dm = 0;
                int m = 0;
                int dam = 0;
                int hm = 0;
                int km = 0;


                while (true)
                {
                    Console.WriteLine("Yazı olarak yazdırmak istediğiniz uzunluğu mm olarak giriniz : ");
                    Console.Write("->");

                    try
                    {
                        km = Convert.ToInt32(Console.ReadLine());
                        break;
                    }
                    catch (Exception)
                    {
                        Console.WriteLine("Lütfen rakam giriniz...\n\n");
                    }

                }

                mm = km % 10;
                km /= 10;
                cm = km % 10;
                km /= 10;
                dm = km % 10;
                km /= 10;
                m = km % 10;
                km /= 10;
                dam = km % 10;
                km /= 10;
                hm = km % 10;
                km /= 10;

                Console.WriteLine("\n\n Girilen uzunluk : {0} km {1} hm {2} dam {3} m {4} dm {5} cm {6} mm  \n\n", km, hm, dam, m, dm, cm, mm);


                Console.WriteLine("Yeni sayı için 0 giriniz, Çıkmak için 1 giriniz:");

                if (Console.ReadLine() == "1")
                {
                    break;
                }
            }
        }
    }
}


UYGULAMAYI İNDİR