26 Mart 2016 Cumartesi

C Sharp Form Uygulamalar D'Hondt Sistemi Kullanarak Oy Hesaplama İşlemleri



KONU : C Sharp Uygulamalar - C Sharp ( C# ) form uygulamasında oy hesaplama programı hazırlama. D'Hondt sistemi kullanarak oy hesaplama programı hazırlama. Hangi partinin kaç milletvekili çıkardığını hesaplama ve liste biçiminde oyları listeleme. D'Hondt metodunu kullanarak oylara göre milletvekili sayısını hesaplama.
ETİKETLER: c sharp oy hesaplama - c sharp D'Hondt sistemi - c sharp oy - c sharp milletvekili - c sharp hesaplama - c sharp listbox - c sharp groupbox - c sharp milletvekili sayısı hesaplama - c sharp D'Hondt yöntemi - c sharp D'Hondt method - c sharp D'Hondt metodu





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_Form_Oy_Hesaplama
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        int a, b, c, mvekilisayi;

        void temizle()
        {
            txtPartiA.Clear();
            txtPartiB.Clear();
            txtPartiC.Clear();
            txtMilletvekiliSayisi.Clear();
        }

        List< Parti > partiler = new List< Parti >();

        void hesapla()
        {
            partiler.Clear();

            mvekilisayi = Convert.ToInt32(txtMilletvekiliSayisi.Text);

            List< int > oylar = new List< int >();

            oylar.Add(Convert.ToInt32(txtPartiA.Text));
            oylar.Add(Convert.ToInt32(txtPartiB.Text));
            oylar.Add(Convert.ToInt32(txtPartiC.Text));

            Parti parti;
            for (int i = 0; i < 3; i++)
            {
                parti = new Parti();
                parti.MilletvekiliSayisi = 0;
                parti.Bolen = 1;
                parti.ToplamOy = oylar[i];
                partiler.Add(parti);

            }

            string data = String.Format("{0,-50}", "");

            for (int i = 0; i < partiler.Count; i++)
            {
                string temp  = (i+1).ToString() + ". Parti";

                data += String.Format("{0,-15}", temp);
            }
        
            listBox.Items.Add(data);

            data =  String.Format("{0,-38}", "Oy");
          
            for (int i = 0; i < partiler.Count; i++)
            {
                data += String.Format("{0,14}", partiler[i].ToplamOy);
            }

            listBox.Items.Add(data);

            while (mvekilisayi-- != 0)
            {


                parti = partiler[0];
              
                for (int i = 1; i < partiler.Count; i++)
                {
                    if (partiler[i].ToplamOy / partiler[i].Bolen > parti.ToplamOy / parti.Bolen)
                    {
                        parti = partiler[i];
                    }
                }



                data = String.Format("{0,-36}", (7-mvekilisayi).ToString() + ".milletvekili");
 
                for (int i = 0; i < partiler.Count; i++)
                {
                    data += String.Format("{0,14}", partiler[i].HesaplanOy);
                }

                listBox.Items.Add(data);

                parti.MilletvekiliSayisi++;
                parti.Bolen++;
            }


            data = String.Format("{0,-34}", "Milletvekili Sayıları");

            for (int i = 0; i < partiler.Count; i++)
            {
                data += String.Format("{0,14}", partiler[i].MilletvekiliSayisi.ToString("00000"));
            }
           
            listBox.Items.Add(data);

        }

        private void btnHesapla_Click(object sender, EventArgs e)
        {
            listBox.Items.Clear();
            hesapla();
        }
    }

    class Parti
    {
        public Parti()
        {
 
        }

        private int hesaplananOy ;
        private int bolen;
        private int milletvekiliSayisi;
        private int toplamOy;

        public int Bolen
        {
            get
            {
                return bolen;
            }
            set
            {
                bolen = value;
            }
        }

        public int MilletvekiliSayisi
        {
            get
            {
                return milletvekiliSayisi;
            }
            set
            {
                milletvekiliSayisi = value;
            }
        }

        public int ToplamOy 
        { 
            get
            {
                return toplamOy;
            }
            set
            {
                toplamOy = value;
            } 
        }

        public int HesaplanOy
        {
            get
            {
                return toplamOy / bolen;
            }
        }
    }
}

UYGULAMAYI İNDİR

22 Mart 2016 Salı

C Sharp Sos Oyunu 5x5 Rastgele Otomatik Doldurma










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_Sos_5x5
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        Random rastgele = null;
        int satır_sayısı = 5;
        int sütun_sayısı = 5;
        TextBox[,] alanlar;

        private void Form1_Load(object sender, EventArgs e)
        {
            rastgele = new Random();

            alanlar = new TextBox[satır_sayısı, sütun_sayısı];
            for (int i = 0; i < satır_sayısı; i++)
            {
                for (int j = 0; j < sütun_sayısı; j++)
                {

                    TextBox yenitextBox = new TextBox();
                    yenitextBox.Location = new System.Drawing.Point(50 + j * 25, i * 25 + 50);
                    yenitextBox.Name = i + " * " + j;
                    yenitextBox.Size = new System.Drawing.Size(20, 20);
                    yenitextBox.TabIndex = 1;
                    yenitextBox.BorderStyle = BorderStyle.FixedSingle;

                    yenitextBox.KeyUp += new KeyEventHandler(yenitextBox_KeyUp);
                    this.Controls.Add(yenitextBox);

                    alanlar[i, j] = yenitextBox;

                }
            }
        }

        void yenitextBox_KeyUp(object sender, KeyEventArgs e)
        {
            (sender as TextBox).Text = (sender as TextBox).Text.ToUpper();
            if ((sender as TextBox).Text.Length > 1)
                (sender as TextBox).Text = (sender as TextBox).Text.Substring(0,1);
            else
            {
                bool oyunbitti = false;
                oyunbitti = SosOlanlariBoya(oyunbitti);

            }
        }

        private bool SosOlanlariBoya(bool oyunbitti)
        {
            for (int i = 0; i < satır_sayısı; i++)
            {
                for (int j = 0; j < sütun_sayısı; j++)
                {
                    if (alanlar[i, j].Text.ToUpper() == "S")
                    {
                        try
                        {
                            if (alanlar[i, j + 1].Text.ToUpper() == "O" && alanlar[i, j + 2].Text.ToUpper() == "S")
                            {
                                oyunbitti = true;
                                alanlar[i, j].BackColor = Color.Lime;
                                alanlar[i, j + 1].BackColor = Color.Lime;
                                alanlar[i, j + 2].BackColor = Color.Lime;
                            }
                        }
                        catch (Exception)
                        {
                        }

                        try
                        {
                            if (alanlar[i + 1, j + 1].Text.ToUpper() == "O" && alanlar[i + 2, j + 2].Text.ToUpper() == "S")
                            {
                                oyunbitti = true;
                                alanlar[i, j].BackColor = Color.Lime;
                                alanlar[i + 1, j + 1].BackColor = Color.Lime;
                                alanlar[i + 2, j + 2].BackColor = Color.Lime;
                            }
                        }
                        catch (Exception)
                        {
                        }
                        try
                        {
                            if (alanlar[i + 1, j].Text.ToUpper() == "O" && alanlar[i + 2, j].Text.ToUpper() == "S")
                            {
                                oyunbitti = true;
                                alanlar[i, j].BackColor = Color.Lime;
                                alanlar[i + 1, j].BackColor = Color.Lime;
                                alanlar[i + 2, j].BackColor = Color.Lime;
                            }
                        }
                        catch (Exception)
                        {
                        }
                        try
                        {
                            if (alanlar[i + 1, j - 1].Text.ToUpper() == "O" && alanlar[i + 2, j - 2].Text.ToUpper() == "S")
                            {
                                oyunbitti = true;
                                alanlar[i, j].BackColor = Color.Lime;
                                alanlar[i + 1, j - 1].BackColor = Color.Lime;
                                alanlar[i + 2, j - 2].BackColor = Color.Lime;
                            }
                        }
                        catch (Exception)
                        {
                        }


                    }
                }
            }


            return oyunbitti;
        }


        private void btnYeniOyun_Click(object sender, EventArgs e)
        {

            for (int i = 0; i < satır_sayısı; i++)
            {
                for (int j = 0; j < sütun_sayısı; j++)
                {
                    alanlar[i, j].Text = "";
                    alanlar[i, j].BackColor = Color.LightGray;
                    if (rastgele.Next(2) == 0)
                    {
                        alanlar[i, j].Text = "S";
                    }
                    else
                    {
                        alanlar[i, j].Text = "O";
                    }
                }
            }

            SosOlanlariBoya(false);
      
        }
    }
}



21 Mart 2016 Pazartesi

C Sharp Sos Oyunu 5x5










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_Sos_5x5
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }


        int satır_sayısı = 5;
        int sütun_sayısı = 5;
        TextBox[,] alanlar;

        private void Form1_Load(object sender, EventArgs e)
        {

            alanlar = new TextBox[satır_sayısı, sütun_sayısı];
            for (int i = 0; i < satır_sayısı; i++)
            {
                for (int j = 0; j < sütun_sayısı; j++)
                {

                    TextBox yenitextBox = new TextBox();
                    yenitextBox.Location = new System.Drawing.Point(50 + j * 25, i * 25 + 50);
                    yenitextBox.Name = i + " * " + j;
                    yenitextBox.Size = new System.Drawing.Size(20, 20);
                    yenitextBox.TabIndex = 1;
                    yenitextBox.BorderStyle = BorderStyle.FixedSingle;

                    yenitextBox.KeyUp += new KeyEventHandler(yenitextBox_KeyUp);
                    this.Controls.Add(yenitextBox);

                    alanlar[i, j] = yenitextBox;

                }
            }
        }

        void yenitextBox_KeyUp(object sender, KeyEventArgs e)
        {
            (sender as TextBox).Text = (sender as TextBox).Text.ToUpper();
            if ((sender as TextBox).Text.Length > 1)
                (sender as TextBox).Text = (sender as TextBox).Text.Substring(0,1);
            else
            {
                bool oyunbitti = false;
                try
                {
                    for (int i = 0; i < satır_sayısı; i++)
                    {
                        for (int j = 0; j < sütun_sayısı; j++)
                        {
                            if (!oyunbitti && alanlar[i, j].Text.ToUpper() == "S")
                            {
                                if (alanlar[i, j + 1].Text.ToUpper() == "O" && alanlar[i, j + 2].Text.ToUpper() == "S")
                                {
                                    oyunbitti = true;
                                    alanlar[i, j].BackColor = Color.Lime;
                                    alanlar[i, j + 1].BackColor = Color.Lime;
                                    alanlar[i, j + 2].BackColor = Color.Lime;
                                }
                                else if (alanlar[i + 1, j + 1].Text.ToUpper() == "O" && alanlar[i + 2, j + 2].Text.ToUpper() == "S")
                                {
                                    oyunbitti = true;
                                    alanlar[i, j].BackColor = Color.Lime;
                                    alanlar[i + 1, j + 1].BackColor = Color.Lime;
                                    alanlar[i + 2, j + 2].BackColor = Color.Lime;
                                }
                                else if (alanlar[i + 1, j].Text.ToUpper() == "O" && alanlar[i + 2, j].Text.ToUpper() == "S")
                                {
                                    oyunbitti = true;
                                    alanlar[i, j].BackColor = Color.Lime;
                                    alanlar[i + 1, j].BackColor = Color.Lime;
                                    alanlar[i + 2, j].BackColor = Color.Lime;
                                }
                                else if (alanlar[i + 1, j - 1].Text.ToUpper() == "O" && alanlar[i + 2, j - 2].Text.ToUpper() == "S")
                                {
                                    oyunbitti = true;
                                    alanlar[i, j].BackColor = Color.Lime;
                                    alanlar[i + 1, j - 1].BackColor = Color.Lime;
                                    alanlar[i + 2, j - 2].BackColor = Color.Lime;
                                }


                            }
                        }
                    }
                }
                catch (Exception)
                {

                }

            }
        }

        private void btnYeniOyun_Click(object sender, EventArgs e)
        {
            for (int i = 0; i < satır_sayısı; i++)
            {
                for (int j = 0; j < sütun_sayısı; j++)
                {
                    alanlar[i, j].Text = "";
                }
            }
        }
    }
}



19 Mart 2016 Cumartesi

C Sharp Form Uygulamalar Double Bir Sayıyı 8 Byte Dataya Dönüştürme 64 bit Long Dataya Dönüştürme



KONU : C Sharp ( C# ) Form Uygulamalar double tipinde girilen bir sayıyı 64 bit long tipine çevirme, double sayıyı 8 byte data olarak parçalara ayırma, 8 byte olarak verilen bir sayıyı double tipine çevirme, 64 bitlik double sayısını 64 bit long dataya dönüştürme ve 64 bitlik long datayı tekrar double tipine dönüştürme.





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_Dobule_To_64Bits_64Bits_To_Double
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //Orijinal olarak bir double değer yazalım.

            double doubleValue = 154156.11658785;

            //Double Değeri ekrana yazdıralım

            lblDouble.Text = doubleValue.ToString();

            //Double değeri long 64 bit değere çevirme, bu işlem için bitconveter sınıfı kullanılır

            long longValue = 0;

            longValue = BitConverter.DoubleToInt64Bits(doubleValue);

            //Dönüştürülen 64 bit Değeri ekrana yazdıralım

            lbl64BitLong.Text = longValue.ToString();

            //64 bitlik datayı 8 bitlik byte data olarak ekrana yazdıralım

            byte[] bytes = new byte[8];

            for (int i = 0; i < bytes.Length; i++)
            {
                bytes[i] = (byte)((longValue >> (8 * i)) & 0xFF);

            }

            for (int i = 0; i < bytes.Length; i++)
            {
                lblBytes.Text += string.Format("{0:X2} ",bytes[i]);
            }

            //64 bit long değeri tekrar dobule değer dönüştürme
 
            double createdNumber = BitConverter.ToDouble(bytes, 0);

            // Tekrar oluşturulan double değeri ekran yazdıralım

            lblNewDouble.Text = createdNumber.ToString();
        }
    }
}



UYGULAMAYI İNDİR