If etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
If etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

26 Aralık 2017 Salı

C Sharp uygulamalar TC no doğrulama





TC Kimlik numaraları 11 basamaktan oluşmaktadır.
İlk 9 basamak arasında kurulan bir algoritma bize 10. basamağı verir.
ilk 10 basamak arasında kurulan algoritma ise bize 11. basamağı verir.
* 11 hanelidir.
* Her hanesi rakamsal değer içerir.
* İlk hane 0 olamaz.
* 1. 3. 5. 7. ve 9. hanelerin toplamının 7 katından, 2. 4. 6. ve 8. hanelerin toplamı çıkartıldığında, elde edilen sonucun 10’a bölümünden kalan 10. haneyi verir.
* 1. 2. 3. 4. 5. 6. 7. 8. 9. ve 10. hanelerin toplamından elde edilen sonucun 10’a bölümünden kalan 11. haneyi verir.



        private void tcNo_dogrulama_Click(object sender, EventArgs e)
        {
            string tcNo = TCNo.Text.Trim();

            if (tcNo.Length != 11)
            {
                MessageBox.Show("TC No hatalıdır.", "Hata", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            string rakam1 = TCNo.Text[0].ToString();
            string rakam10 = TCNo.Text[9].ToString();
            string rakam11 = TCNo.Text[10].ToString();
            int tekler = 0, ciftler = 0;
            if (rakam1 == "0")
            {
                MessageBox.Show("TC No hatalıdır.", "Hata", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            else
            {
                for (int i = 0; i < 10; i++)
                {
                    if (i % 2 == 1)
                        ciftler += int.Parse(tcNo[i].ToString());
                    else tekler += int.Parse(tcNo[i].ToString());
                }

                int sayi10 = ((tekler * 7) - ciftler) % 10;
                int sayi11 = (ciftler + tekler + sayi10) % 10;

                if (rakam10 != sayi10.ToString() || rakam11 != sayi11.ToString())
                    MessageBox.Show("TC No hatalıdır.","Hata",MessageBoxButtons.OK,MessageBoxIcon.Error);
                else
                    MessageBox.Show("TC No Doğrulandı.","Bilgi",MessageBoxButtons.OK,MessageBoxIcon.Information);
            }
        }

 

21 Kasım 2017 Salı

C sharp verilen bir dizide N den fazla tekrarlanan elemanı silme







Liste lst ve sayı N verildiğinde, her lst sayısını en çok N defa içeren, yeniden sıralama yapmadan yeni bir liste oluşturun. Örneğin, N = 2 ve giriş [1,2,3,1,2,1,2,3] ise, [1,2,3,1,2] 'yi alırsınız, bir sonraki [1,2 ], sonuçta 1 ve 2 sonuçta 3 kez olduğundan listeye eklenmez. Ardından 3 2. kez gelir ve dizinin son durumu [1,2,3,1,2,3] olur

Örnek fonksiyon aşağıdaki gibidir:


        public static int[] DeleteNthItem(int[] arr, int x)
        {
            List result = new List();
            for (int i = 0; i < arr.Length; i++)
            {
                if (result.Count(s => s.Equals(arr[i])) < x)
                    result.Add(arr[i]);
            }
            return result.ToArray();
        }


veya


        public static int[] DeleteNth(int[] arr, int x)
        {
            var result = new List();
            foreach (var item in arr)
            {
                if (result.Count(i => i == item) < x)
                    result.Add(item);
            }
            return result.ToArray();
        }





4 Haziran 2017 Pazar

C Sharp Form Access Veri Tabanı Kullanarak Kullanıcı Şifre Güncelleme Formu Oluşturma

KONU : C Sharp Uygulamalar - C Sharp formda kullanıcı adı ve şifresini kullanarak kullanıcı şifre güncelleme formu oluşturma örneği. Kullanıcı şifre güncelleme formunun amacı sisteme giriş yapmış bir kullanıcının, kullanıcı adı ve şifresini kullanarak yeni şifre almasını sağlamaktır. Eğer kullanıcı veri tabanında kayıt ise otomatik olarak yeni girdiği şifre güncellenecek. Eğer kullanıcı veri tabanında kayıtlı değilse “Böyle bir kullanici yok veya şifreyi yanlış girdiniz!” hatasını verilecek. Öncelikle access veri tabanında bir kullanıcılar isminde id,kullanıcı adı ve şifresini listeleyeceğimiz tablo oluşturmamız gerekiyor. Daha sonra c sharp da form uygulama oluşturarak aşağıdaki kodları yazarak kullanıcı giriş formunu oluşturalım.
ETİKETLER: c sharp access - c sharp şifre güncelleme - c# şifre güncelleme - c sharp access şifre güncelleme - c sharp access kullanıcı girişi - c sharp kullanıcı - c sharp access giriş - c sharp veri tabanı giriş ekranı - c sharp giriş formu - c sharp giriş formu oluşturma - c sharp kullanıcı adı - c sharp şifre - c sharp access şifre - kullanıcı giriş formu 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.Data.OleDb;

namespace C_Sharp_Form_Kullanici_Giris_Formu
{
    public partial class SifreDegistir : Form
    {
          /// Bağlantı yapılacak veri tabanı ve kaynak dosyanın ismi
        OleDbConnection baglanti =
 new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Veritabanim.accdb");

        public SifreDegistir()
        {
            InitializeComponent();
        }

        ///  Access veri tabanına bağlantı açma metodu
        public void BaglantiAc()
        {
            try
            {
                if (baglanti.State != ConnectionState.Open)
                {
                    baglanti.Open();
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Veri tabanına bağlantı yapılamıyor.", "Hata",
 MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

        /// Girilen Kullanıcıyı arama metodu. Burada sorgu cümleciği tanımlayarak sorgunun nasıl
        /// yapılacağını belirliyoruz. Eğer veri tabanında giriş yapmaya çalışan kullanıcının bilgileri 
        /// var ise bu metot bulunan kullanıcının id değerini dönecek.
        public int KullaniciAra()
        {
            int id = -1;

            try
            {

                BaglantiAc();
                string sorgu = "Select * from kullanicilar where kullaniciadi='"
 + txtKullaniciAdi.Text + "' And sifre='" + txtKullanilanSifre.Text + "' ";

                OleDbCommand komut = new OleDbCommand(sorgu, baglanti);
             
                OleDbDataReader okuyucu = komut.ExecuteReader();
               
                if (okuyucu.Read())
                {
                    id = int.Parse(okuyucu["id"].ToString());
                }

                baglanti.Close();

            }
            catch (Exception)
            {
                MessageBox.Show("Veri tabanına bağlantı yapılamıyor.","HATA",
 MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            return id;
        }

        private bool SifreGuncelle(string sifre, int id)
        {
            bool onay = false;
         
            try
            {

                BaglantiAc();
            
                OleDbCommand komut = new OleDbCommand();
           
                komut.Connection = baglanti;
               
                //ID değerine göre Kayıt Değiştirme sorgusu belirleniyor
                komut.CommandText = "update kullanicilar set sifre=@Sifre where id=@Id";
                
                //Parametrelerin hangi alanlardan veri alacağı belirleniyor
                komut.Parameters.AddWithValue("@Sifre", sifre);
                komut.Parameters.AddWithValue("@Id", id);

                if (komut.ExecuteNonQuery() == 1)
                {
                    onay = true;
                }
                else
                {
                    onay = false;
                }

                baglanti.Close();

            }
            catch (Exception )
            {
                MessageBox.Show("İşlem yapılamadı","HATA",
 MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            return onay;
        }

        private void btnSifreDegistir_Click(object sender, EventArgs e)
        {
            int kullaniciVarMi = KullaniciAra();

            if (kullaniciVarMi > 0)
            {
                string kullanilanSifre, yeniSifre, yeniSifreTekrar;

                kullanilanSifre = (txtKullanilanSifre.Text).Trim();
                yeniSifre = (txtYeniSifre.Text).Trim();
                yeniSifreTekrar = txtYeniSifreTekrar.Text;

                ///yeni girilen şifler boş olmamalı ve
                ///yeni şifre ve tekra girilen yeni şifre birbirinin aynısı olmalı
                if (yeniSifre == "" || yeniSifreTekrar == "" || yeniSifre != yeniSifreTekrar)
                {
                    MessageBox.Show("Şifreler birbirini tutmuyor. Lütfen tekrar giriş yapınız", 
"HATA", MessageBoxButtons.OK, MessageBoxIcon.Error);

                    txtYeniSifre.Text = "";
                    txtYeniSifreTekrar.Text = "";
                }
                else
                {
                   bool islemTamamlandiMi=  SifreGuncelle(yeniSifre, kullaniciVarMi);
                   if (islemTamamlandiMi)
                   {
                       MessageBox.Show("Şifreniz Güncellendi", "BİLGİ", 
MessageBoxButtons.OK, MessageBoxIcon.Information);
                   }
                   else
                   {
                       MessageBox.Show("Şifre Güncelleme Başarısız", "HATA", 
MessageBoxButtons.OK, MessageBoxIcon.Error);
                   }
                }
            }
            else
            {
                MessageBox.Show("Böyle bir kullanici yok veya şifreyi yanlış girdiniz!", 
"HATA", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

    }
}

UYGULAMAYI İNDİR


C Sharp Form Access Veri Tabanı Kullanarak Kullanıcı Giriş Formu Oluşturma


C Sharp Form Access Veri Tabanı Kullanarak Kullanıcı Şifre Güncelleme Formu Oluşturma


C Sharp Uygulamalar Kitaplık Programı


C Sharp Uygulamalar SQL VeriTabanı Kategorilere Göre Ürünleri Listbox Kutusunda Listeleme


C Sharp Uygulamalar SQL VeriTabanı Kategorilere Göre Ürünleri Combobox Kutusunda Listeleme


C Sharp Form Uygulamar XML Veri Ekleme XML Veri Silme XML Veri Güncelleme XML Veri Tabanı


C Sharp Form Uygulamalar XML Yazma XML Okuma XML Veri Tabanı (XML Reader WML Writer )

8 Nisan 2016 Cuma

C Sharp Uygulamalar Şehir İsmi Bulmaca Oyunu Oyna



KONU : C Sharp Uygulamalar - C Sharp ( C# ) şehir ismi bulmaca oyunu uygulaması. textbox ve label kullanarak kelimeyi harflere bölme. Label nesnesinin backcolor ve forecolor özelliklerini kullanarak oyun alanı oluşturma.
ETİKETLER:





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_Textbox_Label_Uygulamasi
{
    public partial class Form1 : Form
    {

        string bulunacakKelime = "";
        int bulunanHarfSayisi = 0;
        int kalanHak = 4;

        public Form1()
        {
            InitializeComponent();
        }

        private void btnKelimeyiGir_Click(object sender, EventArgs e)
        {
            bulunacakKelime = txtBulunacakKelime.Text;

            txtBulunacakKelime.Text = "";
        }

        private void btnOyunuBaslat_Click(object sender, EventArgs e)
        {
            bulunanHarfSayisi = 0;
            btnHarfGir.Enabled = true;
            lblGirilenHarfler.Text = "";
            kalanHak = 4;
            lblKalanHak.Text = kalanHak.ToString();

            grpOyunAlani.Controls.Clear();

            for (int i = 0; i < bulunacakKelime.Length; i++)
            {
                Label label = new Label();
                label.Location = new Point(20*i+30,20);
                label.Text = bulunacakKelime[i].ToString();
                label.Size = new System.Drawing.Size(15, 13);
                label.BackColor = Color.Red;
                label.ForeColor = Color.Red;
                grpOyunAlani.Controls.Add(label);
            }
        }

        private void btnHarfGir_Click(object sender, EventArgs e)
        {
           
            bool harfVarMi = false;

            if (txtHarf.Text.Length != 1)
            {
                MessageBox.Show("Lütfen tek harf giriniz.", "Uyarı", 
MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                if (lblGirilenHarfler.Text.Contains(txtHarf.Text))
                {
                    MessageBox.Show("Bu harfi daha önce girdiniz.", "Uyarı",
MessageBoxButtons.OK, MessageBoxIcon.Warning);

                    txtHarf.Text = "";
                    txtHarf.Focus();

                    return;
                }

                foreach (Control item in grpOyunAlani.Controls)
                {
                    if (item is Label)
                    {
                        Label label = item as Label;
                        if (label.Text.ToUpper() == txtHarf.Text.ToUpper())
                        {
                            label.ForeColor = Color.Black;
                            label.BackColor = Color.Lime;
                            harfVarMi = true;
                            bulunanHarfSayisi++;
                        }
                    }
                }
            }

            if (!harfVarMi)
            {
                kalanHak--;

                lblKalanHak.Text = kalanHak.ToString();

                if (kalanHak == 0)
                {
                    btnHarfGir.Enabled = false;
                    MessageBox.Show("Oyun Bitti. Kaybettiniz. Yeni Oyun için 
yeni kelime giriniz.", "Bilgi", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }

           
            lblGirilenHarfler.Text += txtHarf.Text + "  ";
          


            if (bulunanHarfSayisi == bulunacakKelime.Length)
            {
                btnHarfGir.Enabled = false;
                MessageBox.Show("Oyun Bitti. Kazandınız. Yeni Oyun için yeni 
kelime giriniz.", "Bilgi", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }

            txtHarf.Text = "";
            txtHarf.Focus();
        }
    }
}

UYGULAMAYI İNDİR

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 = "";
                }
            }
        }
    }
}



28 Kasım 2015 Cumartesi

C Sharp Konsol Mastermind Oyunu




KONU : C Sharp Konsol Mastermind Oyunu
ETİKETLER: c sharp - c# - c sharp uygulamalar - c sharp örnekler - c# applications - c sharp form ve konsol uygulamalar - c sharp oyun - charp game






UYGULAMAYI İNDİR

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

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



            int i, length;

            //int tipine dönüştüreceğimiz sayı
            int digitOk = 0;
            int digitNotOk = 0;

            //basamak değeri: abcd girilen sayımız d -> digitValue[3] olarak temsil edecek
            int[] digitValue = new int[4];

            int[] targetNumber = new int[4];
            Random randomGenerate = new Random();

            int randomNumber = randomGenerate.Next(1000, 10000); 
            
            
            ////Console.WriteLine(randomNumber.ToString());

            //tahmin edilecek sayının basamaklarını oluşturalım
            for (i = 0; i < 4; i++)
            {
                targetNumber[i] = randomNumber % 10; // rand() fonksiyonu ile 0 - 10 arasında bir sayı oluşturuyorum
                randomNumber /= 10;
            }

            while (true)//sonsuz döngü, çıkılmak istenilene kadar devam edecek bir döngü oluşturuyorum.
            {
                digitOk = 0;
                digitNotOk = 0;

                //konsoldan bir sayı giriniz.
                Console.WriteLine("\n\nEnter a number: ");

                //konsoldan girilen sayıyı oku
                int estimatedNumber = 0;
                try
                {
                    estimatedNumber = Convert.ToInt16(Console.ReadLine());
                }
                catch (Exception)
                {

                }

                //okunan dört basamaklı sayıyı int tipine dönüştür
                for (i = 0; i < 4; i++)
                {
                    digitValue[i] = estimatedNumber % 10;

                    estimatedNumber /= 10;

                    bool digitAvailable = false;

                    for (int j = 0; j < 4; j++)
                    {
                        if (digitValue[i] == targetNumber[j])
                        {
                            digitAvailable = true;
                            break;
                        }
                    }

                    if (digitAvailable == true)
                    {
                        if (digitValue[i] == targetNumber[i])
                        {
                            digitOk++;
                        }
                        else
                        {
                            digitNotOk++;
                        }
                    }

                }

                Console.WriteLine(" Information =  + {0}  - {1}", digitOk, digitNotOk);

                if (digitOk == 4)
                {
                    break;
                }
            }

            Console.WriteLine("\n ****Game Over**** ");
            Console.WriteLine("\n ****Game Over**** ");
            Console.ReadKey();
        }
    }
}




UYGULAMAYI İNDİR

27 Kasım 2015 Cuma

C Sharp Form WPF Şehir İsmi Bulma Oyunu




KONU : C Sharp Form WPF de Şehir İsmi Bulma Oyunu uygulaması nasıl yapılır?
ETİKETLER: c sharp - c# - c sharp uygulamalar - c sharp örnekler - c# applications - c sharp form ve konsol uygulamalar - WPF






UYGULAMAYI İNDİR

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace C_sharp_WPF_Sehir_ismi_Bulmaca
{
    /// 
    /// Interaction logic for MainWindow.xaml
    /// 
    public partial class MainWindow : Window
    {

        string[] sehirlerListesi = { "İstanbul", "Ankara", "İzmir", "Adana", "Adıyaman", 
                                       "Afyonkarahisar", "Ağrı", "Aksaray", "Amasya", "Antalya",
                                       "Ardahan", "Artvin", "Aydın", "Balıkesir", "Bartın", "Batman",
                                       "Bayburt", "Bilecik", "Bingöl", "Bitlis", "Bolu", "Burdur", 
                                       "Bursa", "Çanakkale", "Çankırı", "Çorum", "Denizli", 
                                       "Diyarbakır", "Düzce", "Edirne", "Elazığ", "Erzincan", 
                                       "Erzurum", "Eskişehir", "Gaziantep", "Giresun", "Gümüşhane", 
                                       "Hakkari", "Hatay", "Iğdır", "Isparta", "Kahramanmaraş", 
                                       "Karabük", "Karaman", "Kars", "Kastamonu", "Kayseri",
                                       "Kırıkkale", "Kırklareli", "Kırşehir", "Kilis", "Kocaeli",
                                       "Konya", "Kütahya", "Malatya", "Manisa", "Mardin", "Mersin",
                                       "Muğla", "Muş", "Nevşehir", "Niğde", "Ordu", "Osmaniye", "Rize",
                                       "Sakarya", "Samsun", "Siirt", "Sinop", "Sivas", "Şırnak",
                                       "Tekirdağ", "Tokat", "Trabzon", "Tunceli", "Şanlıurfa", "Uşak",
                                       "Van", "Yalova", "Yozgat", "Zonguldak" };

        string bulunacakSehirIsmi = "";
        int bulunanHarfSayisi = 0;
        int kalanHak = 4;
        Random rastgele;

        public MainWindow()
        {
            InitializeComponent();
        }

        private void Grid_Loaded(object sender, RoutedEventArgs e)
        {
            btnHarfGir.IsEnabled = false;
            btnTahminEt.IsEnabled = false;
            rastgele = new Random();

            //this.AcceptButton = btnHarfGir;
        }

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            bulunanHarfSayisi = 0;
            btnHarfGir.IsEnabled = true;
            btnTahminEt.IsEnabled = true;
            lblGirilenHarfler.Content = "";
            kalanHak = 4;
            lblKalanHak.Content = kalanHak.ToString();

            YeniSehirSec();

            gridOyunAlani.Children.Clear();
            int location = 0;
            for (int i = 0; i < bulunacakSehirIsmi.Length; i++)
            {
                Label label = new Label();
                label.Height = 25;
                label.Width = 25;
                label.HorizontalAlignment = HorizontalAlignment.Left;
                label.VerticalAlignment = VerticalAlignment.Top;
                label.Content = bulunacakSehirIsmi[i].ToString().ToUpper();
                label.Foreground = Brushes.Red;
                label.Background = Brushes.Red;
                location = 30 * i;
                label.Margin = new Thickness(location, 25 , 0, 0);

                gridOyunAlani.Children.Add(label);
              
            }
        }

        private void btnHarfGir_Click(object sender, RoutedEventArgs e)
        {
            bool harfVarMi = false;

            if (txtHarf.Text.Length != 1)
            {
                MessageBox.Show("Lütfen tek harf giriniz.", "Uyarı");
                txtHarf.Text = "";
                txtHarf.Focus();
                return;
            }
            else
            {
                if (lblGirilenHarfler.Content.ToString().Contains(txtHarf.Text))  //
                {
                    MessageBox.Show("Bu harfi daha önce girdiniz.", "Uyarı");

                    txtHarf.Text = "";
                    txtHarf.Focus();

                    return;
                }

                foreach (Control item in gridOyunAlani.Children)
                {
                    if (item is Label)
                    {
                        Label label = item as Label;
                        if (label.Content.ToString().ToUpper() == txtHarf.Text.ToUpper())
                        {
                            label.Foreground = Brushes.Black;
                            label.Background = Brushes.Lime;
                            harfVarMi = true;
                            bulunanHarfSayisi++;
                        }
                    }
                }
            }

            if (!harfVarMi)
            {
                kalanHak--;

                lblKalanHak.Content = kalanHak.ToString();

                if (kalanHak == 0)
                {
                    btnHarfGir.IsEnabled = false;
                    btnTahminEt.IsEnabled = false;

                    foreach (Control item in gridOyunAlani.Children)
                    {
                        if (item is Label)
                        {
                            Label label = item as Label;
                            label.Foreground = Brushes.Black;
                        }
                    }

                    MessageBox.Show("Oyun Bitti. Kaybettiniz. Yeni Oyun için yeni kelime giriniz. \n Cevap : " + bulunacakSehirIsmi, "Bilgi");
                }
            }

            lblGirilenHarfler.Content += txtHarf.Text + "  ";
          
            if (bulunanHarfSayisi == bulunacakSehirIsmi.Length)
            {
                btnHarfGir.IsEnabled = false;
                btnTahminEt.IsEnabled = false;
                MessageBox.Show("Oyun Bitti. Kazandınız. Yeni Oyun için yeni kelime giriniz.", "Bilgi"  );
            }

            txtHarf.Text = "";
            txtHarf.Focus();
        }

        private void YeniSehirSec()
        {
            int rastgeleSayi = rastgele.Next(0, sehirlerListesi.Length);

            bulunacakSehirIsmi = sehirlerListesi[rastgeleSayi];
        }

        private void btnTahminEt_Click(object sender, RoutedEventArgs e)
        {
            if (bulunacakSehirIsmi.ToUpper() == txtKelime.Text.ToUpper())
            {
                foreach (Control item in gridOyunAlani.Children)
                {
                    if (item is Label)
                    {
                        Label label = item as Label;
                        label.Foreground = Brushes.Black;
                        label.Background = Brushes.Lime;
                    }
                }
                MessageBox.Show("Oyun Bitti. Tebrikler Kazandınız. Yeni Oyun için yeni kelime giriniz.", "Bilgi");
            }
            else
            {
                foreach (Control item in gridOyunAlani.Children)
                {
                    if (item is Label)
                    {
                        Label label = item as Label;
                        label.Foreground = Brushes.Black; 
                    }
                }
                MessageBox.Show("Oyun Bitti. Kaybettiniz. Yeni Oyun için yeni kelime giriniz. \n Cevap : " + bulunacakSehirIsmi, "Bilgi");
            }

            btnHarfGir.IsEnabled = false;
            btnTahminEt.IsEnabled = false;
        }

 
 
    }
}






UYGULAMAYI İNDİR

5 Temmuz 2015 Pazar

C Sharp Konsolda Girilen Bir Sayıya Kadar Sayının Basamak Değerlerinin Toplamı Kendisine Eşit Olan Sayılar




KONU : Klavyeden girilen bir sayıya kadar sayının basamak değerlerinin küplerinin toplamı kendisine eşit olan sayıları diziye atayan ve ekrana yazdıran uygulama geliştirme.
ETİKETLER: c sharp - c# - c sharp uygulamalar - c sharp örnekler - c# applications - c sharp form ve konsol uygulamalar






UYGULAMAYI İNDİR

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

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

            while (true)
            {
                Console.Clear();
                Console.WriteLine("Bir sayı giriniz");
                int sayi = int.Parse(Console.ReadLine().Trim());
                int kupToplam = 0;
                int basamak = 0;
                int[] KupLeriEsitOlanlar = new int[100];
                int counter = 0;

                for (int i = 1; i < sayi; i++)
                {
                    basamak = 0;
                    kupToplam = 0;

                    for (int j = 0; j < i.ToString().Length; j++)
                    {
                        basamak = (int)((i / Math.Pow(10, j))) % 10;
                        kupToplam += Convert.ToInt32(Math.Pow(basamak, 3));
                    }

                    if (i == kupToplam)
                    {
                        Console.WriteLine("Basamak değerlerinin küpleri toplamı = " + i);
                        KupLeriEsitOlanlar[counter++] = i;
                    }
                }

                //2. yöntem :

                int ilk, orta, son;
                double kupToplami;

                for (int i = 100; i < 1000; i++)
                {
                    int sayı = i;
                    ilk = sayı % 10;
                    sayı = sayı / 10;
                    orta = sayı % 10;
                    son = sayı / 10;

                    kupToplami = Math.Pow(ilk, 3) + Math.Pow(orta, 3) + Math.Pow(son, 3);
                    if (i == kupToplami)
                        Console.WriteLine("Basamakları Küpleri Toplamı = " + sayı);
                }
    
                Console.ReadKey();
            }

        }
    }
}




UYGULAMAYI İNDİR


C Sharp Uygulamaları İkilik Tabandan Onluk Tabana Çevirme İşlemi



C Sharp Uygulamalar İki Tam Sayı Arasındaki Çift Sayılar


C Sharp Uygulamalar İki Tam Sayı Arasındaki Tek Sayıları Bulan Konsol Programı

5 Mart 2015 Perşembe

10.000'in altında kaç Lychrel sayısı olduğunu hesaplama

Eğer 47 sayısını alır ters çevirir ve toplarsak 47+74 = 121 sayısını elde ederiz ki bu sayı palindromik bir sayıdır(sağdan ve soldan yazıldığında aynı). Fakat her sayı bu kadar kolay palindrom üretmez. Örneğin: 349 + 943 = 1292 1292 + 2921 = 4213 4213 + 3124 = 7337 349 sayısının palindrome olması 3 öteleme gerektirdi. Bazı sayılar, henüz kimse kanıtlamadı, asla palindrom sayı üretmezler, 196 gibi. Bu sayılara Lychrel sayıları denir. Biz burada kanıtlanmadığı için en fazla 50 ötelemeye kadar olup olmadığına bakacağız. Eğer 50 ötelemeye kadar bir palindrom üretmediyse Lychrel sayısıdır diyeceğiz. Fakat 50 ötelemenin sonrasında da palindrome olan sayılar var, misal 4668731596684224866951378664 (53 öteleme, 28 basamaklı). Soru: 10.000'in altında kaç Lychrel sayısı vardır?

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

        private void Form6_Load(object sender, EventArgs e)
        {
            long MAX_NUMBER = 10000;
            long Counter = 0;
            long sum = 0;
            int iteration = 50;
            long j, i;
            for (i = 0; i < MAX_NUMBER; ++i)
            {
                sum = i;
                bool notpalindrome = true;
                for (j = 0; j < iteration; ++j)
                {
                    sum = sum + reverse(sum);
                    if (isPalindrome(sum))
                    {
                        notpalindrome = false;
                        break;
                    }
                }

                if (notpalindrome)
                {
                    Counter++;
                    listBox1.Items.Add(i);
                }
            
            }

            this.Text = Counter.ToString();
        }


        private static long reverse(long number)
        {
            long remainder;
            long reversed = 0;
            while (number != 0)
            {
                remainder = number % 10;
                reversed = reversed * 10 + remainder;
                number /= 10;
            }
            return reversed;
        }

        private static bool isPalindrome(long number)
        {
            if (number == reverse(number))
                return true;
            return false;
        }

    }
}

   




UYGULAMAYI İNDİR

22 Kasım 2014 Cumartesi

C Sharp Konsol Dört Basamaklı Sayı Tahmin Etme Oyunu



KONU : C Sharp Uygulamalar - C Sharp ( C# ) konsol ekranına 4 basamaklı sayı tahmin etme oyunu. C sharp konsol uygulamada for, while, if else kullanımı.
ETİKETLER: c sharp konsol - c sharp döngü - c sharp oyun




UYGULAMAYI İNDİR




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

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



            int i, length;

            //int tipine dönüştüreceğimiz sayı
            int digitOk = 0;
            int digitNotOk = 0;

            //basamak değeri: abcd girilen sayımız d -> digitValue[3] olarak temsil edecek
            int[] digitValue = new int[4];

            int[] targetNumber = new int[4];
            Random randomGenerate = new Random();

            int randomNumber = randomGenerate.Next(1000, 10000); Console.WriteLine(randomNumber.ToString());

            //tahmin edilecek sayının basamaklarını oluşturalım
            for (i = 0; i < 4; i++)
            {
                targetNumber[i] = randomNumber % 10; // rand() fonksiyonu ile 0 - 10 arasında bir sayı oluşturuyorum
                randomNumber /= 10;
            }

            while (true)//sonsuz döngü, çıkılmak istenilene kadar devam edecek bir döngü oluşturuyorum.
            {
                digitOk = 0;
                digitNotOk = 0;

                //konsoldan bir sayı giriniz.
                Console.WriteLine("\n\nEnter a number: ");

                //konsoldan girilen sayıyı oku
                int estimatedNumber = 0;
                try
                {
                    estimatedNumber = Convert.ToInt16(Console.ReadLine());
                }
                catch (Exception)
                {

                }

                //okunan dört basamaklı sayıyı int tipine dönüştür
                for (i = 0; i < 4; i++)
                {
                    digitValue[i] = estimatedNumber % 10;

                    estimatedNumber /= 10;

                    bool digitAvailable = false;

                    for (int j = 0; j < 4; j++)
                    {
                        if (digitValue[i] == targetNumber[j])
                        {
                            digitAvailable = true;
                            break;
                        }
                    }

                    if (digitAvailable == true)
                    {
                        if (digitValue[i] == targetNumber[i])
                        {
                            digitOk++;
                        }
                        else
                        {
                            digitNotOk++;
                        }
                    }

                }

                Console.WriteLine(" Information =  + {0}  - {1}", digitOk, digitNotOk);

                if (digitOk == 4)
                {
                    break;
                }
            }

            Console.WriteLine("\n ****Game Over**** ");
            Console.WriteLine("\n ****Game Over**** ");
            Console.ReadKey();
        }
    }
}

   




UYGULAMAYI İNDİR

C Sharp Form Uygulamalar Mayın Tarlası Oyunu

C Sharp Form da mayın tarlası oyunu hazırlama, mayın tarlası oyunu , c sharp mayın tarlası oyun uygulaması hazırlama örneği. C# picturebox ve bitmap sınıfılarının kullanımı ile örnek uygulama. Mayın tarlası oyunu butonlarını dinamik olarak oluşturma ve oluşturulan butonlar event tanımlama. Generic List kullanarak butonları bir listede saklama. C sharp mayın tarlası oyun algoritması oluşturma. C sharp da rastgele tıklanan bir butonu sender parametresinden buton nesnesine dönüştürme. Bitmap alanı oluşturup alanı istenilen renkler ile doldurma. C sharp da tıklanan herhangi bir butonu gizleme. Butonları yan yana ve alt alta gelecek şekilde matriksler şeklinde sıralama veya gösterme. Tıklanan butonun bütün özelliklerine erişme örneği.

C Sharp Oyun | c sharp oyun örnekleri | c sharp oyun yapma | c sharp oyun kodları | csharp oyun programlama | csharp örnek oyun | csharp örnek projeler | csharp örnek programlar| c sharp örnek kodlar | csharp örnek kodları | c sharp örnekleri | csharp örnek | c sharp oyun programları | c# oyun | c# oyun yapımı | c# oyun programlama | c# oyun kodları | c# oyun örnekleri | | c# oyun örnekleri indir | c# örnek oyun | c# mayın tarlası | c sharp mayın tarlası | c sharp mayın tarlası oyunu | c sharp mayın tarlası oyunu yapma | c# mayın tarlsı yapma | c# mayın tarlası kodları | c# mayın tarlası indir | c sharp mayın tarlası oyna | mayın tarlası oyna.

UYGULAMAYI İNDİR

Mayın Tarlası Benzer Uygulama 2




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.Collections;
using Mayın;


namespace MayınTarlası
{
    public partial class MayınTarlası : Form
    {
        

        public MayınTarlası()
        {
            InitializeComponent();
        }

        private void MayınTarlasıOlustur()
        {
            

            if (Mayın_Tarlası.bmp != null)
            {
                Mayın_Tarlası.MayınRengi = Brushes.Red;
                Mayın_Tarlası.ArkaPlan = Brushes.Blue;
                Mayın_Tarlası.ButonRengi = Brushes.White;
            }
            if (Mayın_Tarlası.OyunMayınSayısı == 0)
                Mayın_Tarlası.OyunMayınSayısı = 40;
            pictureBox_MayınTarlası.Visible = false;
            Mayın_Tarlası.MayınYerleştir();
            Mayın_Tarlası.MayınTarlasınıDoldur();
            pictureBox_MayınTarlası.Image = Mayın_Tarlası.bmp;
            pictureBox_MayınTarlası.Refresh();
            int satir=0, sutun=0;
            Mayın_Tarlası.KalanMayınSayısı = Mayın_Tarlası.MayınSayısı;
            Mayın_Tarlası.TespitEdilenMayınSayısı = 0;
            label_kalanmayın.Text = "Kalan Mayın Sayısı :" + Mayın_Tarlası.KalanMayınSayısı.ToString();
            for (int i = 0; i < 400; i++)
            {
                if (i % 20 == 0 && i!=0)
                {
                    satir++;
                    sutun = 0;
                }
                Button tb = new Button();
                tb.Name = i.ToString();
                tb.TabIndex = i;
                tb.TabStop = false;
                tb.Text = "";
                tb.Size = new System.Drawing.Size(20, 20);
                Point p = new System.Drawing.Point(sutun* tb.Width+20, satir* tb.Height+20);
                tb.Location = p;
                tb.FlatStyle =System.Windows.Forms.FlatStyle.Flat ;
                tb.Visible = true;
                tb.BackColor = Color.Gray;
                tb.BringToFront();
                tb.MouseDown += new MouseEventHandler(this.butonlarClick);
                pictureBox_MayınTarlası.Controls.Add(tb);
                pictureBox_MayınTarlası.Size = new Size(440,440);
                this.AutoSize = true;
                Mayın_Tarlası.Butonlar.Add(tb);
                sutun++;
            }
            pictureBox_MayınTarlası.Visible = true;
            Mayın_Tarlası.LineCiz();
         }

        private void butonlarClick(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            Button BasılanButon = (Button)sender;
            if (BasılanButon.BackColor == Color.Gray)
                if (e.Button == MouseButtons.Left)
                {
                    BasılanButon.Visible = false;
                    if (Mayın_Tarlası.MayınVarMı(BasılanButon.Location.X, BasılanButon.Location.Y))
                    {
                        for (int i = 0; i < Mayın_Tarlası.OyunMayınSayısı; i++)
                            ((Button)Mayın_Tarlası.Butonlar[Mayın_Tarlası.MayınYerleri[i]]).Visible = false;
                        MessageBox.Show("Oyun Bitti");
                        for (int i = 0; i < 400; i++)
                            ((Button)Mayın_Tarlası.Butonlar[i]).Enabled = false;
                    }
                    else
                    {
                        if (Mayın_Tarlası.EtiketKoy(BasılanButon) != "0")
                            pictureBox_MayınTarlası.Controls.Add(Mayın_Tarlası.label_buton);
                    }
                    if (Mayın_Tarlası.EtiketKoy(BasılanButon) == "0")
                    {
                        BosYerleriAc(BasılanButon);
                        int i=0;
                        while (Mayın_Tarlası.BakılanButonlar.Count - i > 0)
                        {
                            if (Mayın_Tarlası.EtiketKoy((Button)Mayın_Tarlası.BakılanButonlar[i]) == "0")
                                BosYerleriAc((Button)Mayın_Tarlası.BakılanButonlar[i]);
                            else
                                pictureBox_MayınTarlası.Controls.Add(Mayın_Tarlası.label_buton);
                            i++;                
                        }
                        for (int a = 0; a < Mayın_Tarlası.BakılanButonlar.Count; a++)
                            ((Button)Mayın_Tarlası.BakılanButonlar[a]).Visible = false;
                    }
                }
            if (e.Button == MouseButtons.Right)
            {
                if (((Button)Mayın_Tarlası.Butonlar[int.Parse(BasılanButon.Name)]).BackColor == Color.Gray)
                {
                    ((Button)Mayın_Tarlası.Butonlar[int.Parse(BasılanButon.Name)]).BackColor = Color.GreenYellow;
                    Mayın_Tarlası.KalanMayınSayısı--;
                    for(int i=0;i < Mayın_Tarlası.MayınSayısı;i++)
                        if (((Button)Mayın_Tarlası.Butonlar[int.Parse(BasılanButon.Name)]).Name == Mayın_Tarlası.MayınYerleri[i].ToString())
                            Mayın_Tarlası.TespitEdilenMayınSayısı++;
                }
                else
                {
                    ((Button)Mayın_Tarlası.Butonlar[int.Parse(BasılanButon.Name)]).BackColor = Color.Gray;
                    Mayın_Tarlası.KalanMayınSayısı++;
                    for (int i = 0; i < Mayın_Tarlası.MayınSayısı; i++)
                        if (((Button)Mayın_Tarlası.Butonlar[int.Parse(BasılanButon.Name)]).Name == Mayın_Tarlası.MayınYerleri[i].ToString())
                            Mayın_Tarlası.TespitEdilenMayınSayısı--;
                }                
            }
            label_kalanmayın.Text = "Kalan Mayın Sayısı :" + Mayın_Tarlası.KalanMayınSayısı.ToString();
            Mayın_Tarlası.LineCiz();
            if (Mayın_Tarlası.TespitEdilenMayınSayısı == Mayın_Tarlası.MayınSayısı)
            {
                MessageBox.Show("Oyunu Kazandınız. Tebrikler.");
                for (int i = 0; i < 400; i++)
                    ((Button)Mayın_Tarlası.Butonlar[i]).Enabled = false;
            }
                
                
            
        }

        private void BosYerleriAc(Button ArananButon)
        {
            bool varmı = false;
            int x = ArananButon.Location.X, y = ArananButon.Location.Y;
            if (x <= 400 && x >= 20 && y <= 400 && y >= 20)
            {
                if ( x > 20 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 1] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 1]);
                }
                varmı = false;

                if ( x < 400 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if (int.Parse(ArananButon.Name) + 1 == int.Parse(((Button)Mayın_Tarlası.BakılanButonlar[b]).Name))
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 1]));
                }
                varmı = false;

                if ( x > 20 && y > 20 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 21] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 21]));
                }
                varmı = false;

                if ( x < 400 && y > 20 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 19] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 19]));
                }

                varmı = false;
            
                if ( y > 20 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 20] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 20]));
                }
                varmı = false;

                if ( y < 400 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 20] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 20]));
                }
                varmı = false;

                if ( x > 20 && y < 400 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 19] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 19]));
                }
                varmı = false;

                if (x < 400 && y < 400)
                {
                for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                    if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 21] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                        varmı = true;
                if (!varmı)
                    Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 21]));
                }
            }
        }

        private void button_YeniOyun_Click(object sender, EventArgs e)
        {
            Temizle();
            MayınTarlasıOlustur();   
        }

        private void Temizle()
        {
            Mayın_Tarlası.Butonlar.Clear();
            Mayın_Tarlası.BakılanButonlar.Clear();
            pictureBox_MayınTarlası.Controls.Clear();
            Mayın_Tarlası.gfx.FillRectangle(System.Drawing.Brushes.Blue, Mayın_Tarlası.rect);
            pictureBox_MayınTarlası.Image = Mayın_Tarlası.bmp;
            pictureBox_MayınTarlası.Refresh();
            Mayın_Tarlası.MayınSayısı = 0;    
        }

        private void MayınTarlası_Load(object sender, EventArgs e)
        {
            Define.SiteyiAc();
            Mayın_Tarlası.Load_MayınTarlası();
            MayınTarlasıOlustur();
        }

        private void toolStripMenuItem4_Click(object sender, EventArgs e)
        {
            Mayın_Tarlası.OyunMayınSayısı = 80;
            Temizle();
            MayınTarlasıOlustur();  
        }

        private void toolStripMenuItem3_Click(object sender, EventArgs e)
        {
            Mayın_Tarlası.OyunMayınSayısı = 40;
            Temizle();
            MayınTarlasıOlustur();  
        }

        private void toolStripMenuItem5_Click(object sender, EventArgs e)
        {
            Mayın_Tarlası.OyunMayınSayısı = 100;
            Temizle();
            MayınTarlasıOlustur();  
        }

        private void MayınTarlası_FormClosing(object sender, FormClosingEventArgs e)
        {
            Define.SiteyiAc();
        }

    }
}


UYGULAMAYI İNDİR

16 Ekim 2014 Perşembe

C Sharp Form Uygulamalar Modern Hesap Makinesi

C Sharp form uygulamalar modern hesap makinesi yapma, bir adet textbox kullanarak hesap makinesi yapma. Modern hesap makinesinin özellikleri: toplama, çıkarma, bölme ,çarpa,tersini alma, karekök hesaplama, karesini alma,geri silme, hafıza işlemleri, kapama fonksiyonu. Modern hesap makinesi için örnek kodlar. Buton sınıfının ve string sınıfının kullanımı ile ilgili örnekler. Butonların hepsini tek bir click fonksiyonuna bağlayarak "sender as button" ile tıklanan butonun (sender) özelliklerini çekerek işlem yapma. if-else ve switch-case yapılarının kullanımı ile ilgili örnek kodlar. İç içe if kullanımı.

c sharp hesap makinesi - c sharp hesap makinesi örneği - c sharp hesap makinesi indir - c sharp hesap makinesi yapma - c sharp hesap makinesi kodları - c sharp hesap makinesi kodu - c# hesap makinesi - c# hesap makinesi kodu - c# hesap makinesi örneği - c# hesap makinesi indir - c# hesap makinesi yapımı - c# modern hesap makinesi yapımı - c sharp modern hesap makinesi yapımı


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;


//Bu uygulamada modern hesap makinesi nasıl yapılacağını anlatacağım.

// Modern_Hesap_Makinesi isminde bir form uygulaması projesi oluşturalım.
// bu uygulamaya Modern_Hesap_Makinesi  isminde bir form sınıfı ekleyelim.
// Görselde gördüğünüz kadar butonu bu forma ekleyelim. Butonların Text özellğinini
// güncelleyerek rakamları ve matematiksel işaretleri ekleyelim.
// Formun kod kısmına geçelim. Burada global olarak birinciSayi, ikinciSayi, hafiza
// değiklerini decimal, islem değişkenini string olarak ve sonuclandi değikenini boolean
// olarak tanılayalım. 

namespace Modern_Hesap_Makinesi
{
    public partial class Modern_Hesap_Makinesi : Form
    {
        decimal birinciSayi, ikinciSayi, hafiza;

        string islem;

        Boolean sonuclandi;

        public Modern_Hesap_Makinesi()
        {
            InitializeComponent();
        }

 
        // formun load olayında formu başlığını ve formun CancelButton özellğinini
        // atayalım. Load olayını oluşturmak için form design kısmına geçelim.
        // Burada form seçelim ve F4 basarak property sayfasını açılım. Sonra Event
        // kısmını seçelim ve Form_Load üzerinde gelim mouse ile çift tıklayalım.
        // Aşağıdaki gibi bir fonksiyon oluşacak ve burada aşağıdaki gibi özellikleri ayarlayalım.

        private void Modern_Hesap_Makinesi_Load(object sender, System.EventArgs e)
        {
            this.Text = "Hesap Makinesi";

            txtSonuc.Text = "";

            this.CancelButton = btnKapat;
        }
 
        // Projenin desing sayfasında rakam olan butonları ctrl tuşuna basarak hepsini 
        // Seçelim. Seçtikten sonra F4 butonuna vasarak property sayfasını açalım. 
        // Burada Event sayfasını seçerek Click olayının karşısına rakamlar yazalım.
        // Click olayının üzerine mouse ile çift tıklayarak aşağıdaki gibi rakamlar 
        // Fonksiyonunu oluşturalım. Burada sadece rakamlara basıldığında yapacağımız işlemleri
        // yapacağız. sonuclandi true ise yeni işleme başlayacağız. txtSonuc.Text e hangi rakama
        // basıldıysa text o rakamı yazdıracağız.  sonuclandi false ise txtSonuc.Text e hangi rakama
        // basıldıysa textdeki rakamın sağına o rakamı ekleyeceğiz. Herhangi işlem butonuna basılmadığı
        // için sonuclandi değişkenini false yapacağız.

        private void rakamlar(object sender, System.EventArgs e)
        {
            if (sonuclandi)
                txtSonuc.Text = (sender as Button).Text;
            else
            {
                txtSonuc.Text = txtSonuc.Text + (sender as Button).Text;
            }
            sonuclandi = false;
        }

        // +/-butonuna basıldığında yapılacak işlemleri bu fonsiyona yazacağız.
        // Bu fonksiyonu oluşturmak için yine design sayfasında +/- butonunu seçelim. 
        // F4 butonuna basarak property sayfasında Event sayfasını seçelim.
        // Event sayfasında Click olayını bulup mouse ile üzerinde çift tıklayalım.
        // Böylece aşağıdaki fonksiyonu oluşturmuş olacağız.

        private void btnArtiEksi_Click(object sender, System.EventArgs e)
        {
            if (txtSonuc.Text.Length > 0)

                if (txtSonuc.Text.Substring(0, 1) == "-")

                    //Sayinin basinda - varsa sil

                    txtSonuc.Text = txtSonuc.Text.Substring(1);

                else
                    //- yoksa - ekle
                    txtSonuc.Text = "-" + txtSonuc.Text.Substring(0);
        }

        // Virgül butonuna basıldığında yapılacak işlemleri bu fonsiyona yazacağız.
        // Bu fonksiyonu oluşturmak için yine design sayfasında Virgül butonunu seçelim. 
        // F4 butonuna basarak property sayfasında Event sayfasını seçelim.
        // Event sayfasında Click olayını bulup mouse ile üzerinde çift tıklayalım.
        // Böylece aşağıdaki fonksiyonu oluşturmuş olacağız.

        private void btnVirgul_Click(object sender, System.EventArgs e)
        {
            //sayida virgul yoksa

            if (txtSonuc.Text.IndexOf(",") <= 0)

                if (txtSonuc.Text.Length == 0)

                    //hiç karakter yoksa 0, ekle

                    txtSonuc.Text = "0,";

                else

                    //sayi varsa sonuna virgul ekle
                    txtSonuc.Text = txtSonuc.Text + ",";
        }

        // Sil butonuna basıldığında yapılacak işlemleri bu fonsiyona yazacağız.
        // Bu fonksiyonu oluşturmak için yine design sayfasında sil butonunu seçelim. 
        // F4 butonuna basarak property sayfasında Event sayfasını seçelim.
        // Event sayfasında Click olayını bulup mouse ile üzerinde çift tıklayalım.
        // Böylece aşağıdaki fonksiyonu oluşturmuş olacağız.

        private void btnSil_Click(object sender, System.EventArgs e)
        {
            txtSonuc.Text = "";
        }

        // GeriSil butonuna basıldığında yapılacak işlemleri bu fonsiyona yazacağız.
        // Bu fonksiyonu oluşturmak için yine design sayfasında GeriSil butonunu seçelim. 
        // F4 butonuna basarak property sayfasında Event sayfasını seçelim.
        // Event sayfasında Click olayını bulup mouse ile üzerinde çift tıklayalım.
        // Böylece aşağıdaki fonksiyonu oluşturmuş olacağız.

        private void btnGeriSil_Click(object sender, System.EventArgs e)
        {
            if (txtSonuc.Text.Length > 0)
            {
                txtSonuc.Text = txtSonuc.Text.Substring(0, txtSonuc.Text.Length - 1);
            }
        }

        private void hafiza_islemleri(object sender, System.EventArgs e)
        {
            if (txtSonuc.Text.Length == 0)
            {
                txtSonuc.Text = "0";
            }

            switch ((sender as Button).Text)
            {
                case "MC":

                    hafiza = 0;
                    break;
                case "M+":

                    hafiza = hafiza + decimal.Parse(txtSonuc.Text);
                    break;
                case "M-":

                    hafiza = hafiza - decimal.Parse(txtSonuc.Text);
                    break;
                case "MR":

                    txtSonuc.Text = hafiza.ToString();
                    break;
            }
        }

        // hangi işlem tuşuna basıldığını ve birinci sayıyı kaydetmek için bu fonsiyona yazacağız.
        // Bu fonksiyonu oluşturmak için yine design sayfasında işlem butonlarının hepsini seçelim. 
        // F4 butonuna basarak property sayfasında Event sayfasını seçelim.
        // Event sayfasında Click olayını bulup yanındaki boş kısma Dört_islem yazıp, mouse ile 
        // üzerinde çift tıklayalım. Böylece aşağıdaki fonksiyonu oluşturmuş olacağız.

        private void Dört_islem(object sender, System.EventArgs e)
        {
            islem = (sender as Button).Text;

            if (txtSonuc.Text.Length == 0)
            {
                txtSonuc.Text = "0";
            }

            birinciSayi = decimal.Parse(txtSonuc.Text);

            sonuclandi = true;
        }

        // Eşit butonuna basıldığında yapılacak işlemleri bu fonsiyona yazacağız.
        // Bu fonksiyonu oluşturmak için yine design sayfasında Eşit  butonunu seçelim. 
        // F4 butonuna basarak property sayfasında Event sayfasını seçelim.
        // Event sayfasında Click olayını bulup mouse ile üzerinde çift tıklayalım.
        // Böylece aşağıdaki fonksiyonu oluşturmuş olacağız.

        private void Button_Esit_Click(object sender, System.EventArgs e)
        {
            if (txtSonuc.Text.Length == 0)
            {
                txtSonuc.Text = "0";
            }

            decimal sonuc = 0;

            ikinciSayi = decimal.Parse(txtSonuc.Text);

            switch (islem)
            {
                case "+":

                    sonuc = birinciSayi + ikinciSayi;
                    break;
                case "-":

                    sonuc = birinciSayi - ikinciSayi;
                    break;
                case "*":

                    sonuc = birinciSayi * ikinciSayi;
                    break;
                case "/":

                    if (ikinciSayi == 0)
                        return;
                    sonuc = birinciSayi / ikinciSayi;
                    break;
            }

            sonuclandi = true;

            txtSonuc.Text = sonuc.ToString();

            birinciSayi = sonuc;
        }

        private void islem_Yap_2(object sender, System.EventArgs e)
        {
            decimal sayi;

            if (txtSonuc.Text.Length == 0)

                txtSonuc.Text = "0";


            sayi = decimal.Parse(txtSonuc.Text);

            switch ((sender as Button).Text)
            {
                case "Kök":

                    if (sayi >= 0)
                        txtSonuc.Text = Math.Sqrt((double)sayi).ToString();
                    break;
                case "x²":

                    txtSonuc.Text = (sayi * sayi).ToString();
                    break;
                case "1/x":

                    if (sayi != 0)
                        txtSonuc.Text = (1 / sayi).ToString();
                    break;
            }
        }

        private void kapat_Click(object sender, EventArgs e)
        {
            //Programı Kapat
            this.Close();
        }
    }
}



UYGULAMAYI İNDİR



C Sharp Form Uygulamalar Dört İşlem Hesap Makinesi



C Sharp Form Uygulamalar Hesap Makinesi Yapımı - Dört İşlem



C Sharp Uygulamalar Modern Hesap Makinesi