• Web sitemizin içeriğine ve tüm hizmetlerimize erişim sağlamak için Web sitemize kayıt olmalı ya da giriş yapmalısınız. Web sitemize üye olmak tamamen ücretsizdir.
  • Sohbetokey.com ile canlı okey oynamaya ne dersin? Hem sohbet et, hem mobil okey oyna!
  • Soru mu? Sorun mu? ''Bir Sorum Var?'' sistemimiz aktiftir. Paylaşın beraber çözüm üretelim.

C Sharp Form Uygulamalar Onluk Tabandan İkilik Taban Çevirme - Onluk Tabandan 2 - 9 Arasındaki Taban

Üyelik Tarihi
7 Ocak 2015
Konular
4,091
Mesajlar
4,274
MFC Puanı
40
Kod:
using System;
using System.Windows.Forms;  
using System.Text;     

namespace C_Sharp_Form_Onluktan_Secilen_Tabanlara_Cevirme
{
    public partial class Form1 : System.Windows.Forms.Form
    {
        int cevrilecekTaban;

        public Form1()
        {
            // Sistemin kendi oluşturduğu elemanların ilk ayarları yapalım

            InitializeComponent();
        }

        // form decimal to all (ikilik, üçlük...diğer  tabanlara çevirme)

        private **** Form1_Load(object sender, EventArgs e)
        {
            //çevirmek istediğim tabanları taban nesnesine ekliyorum.
            //bu program 2 den 9 a kadar olan bütün tabanlara çevirme yapmasını istiyorum.

            for (int i = 2; i < 11; i++)
            {
                this.taban.Items.Add(i);
            }

            FormKontrolleriniDoldur();
        }

        // Girilen bütün karakterler rakam mı diye kontrol eden metot.

        public static bool butunHepsiRakamMi(string deger)
        {
            string rakam = deger.Trim();
            if (rakam.Length == 0)
            {
                return false;

                //Eğer herhangi bir karakter girilmediyse false döndürsün
            }
            for (int indeks = 0; indeks < rakam.Length; indeks++)
            {
                if (!Char.IsDigit(rakam[indeks]))
                {
                    return false;

                    //Eğer girilen karakterlerden herhangi biri rakam değilse false döndürsün
                }
            }

            return true;
            //Eğer girilen karakterlerin hepsi rakam ise true döndürecek
        }

        // Çevir butonuna tıklandığında girilen değer seçilen tabana çevrilecek.

        private **** btnCevir_Click(object sender, System.EventArgs e)
        {
            //herhangi bir taban seçili mi kontrolü yapalım
            //eğer bir taban değeri seçilmediyse uyarı mesajı verelim

            if (taban.SelectedIndex<0)
            {
                MessageBox.Show("Bir Taban Değeri Seçmelisiniz", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                
                // uyarı mesajından sonra hiçbir işlem yapmadan bu metodu sonlandırmak için
                // return kullanıyorum.
                return;
            }

            StringBuilder yeniDeger = new StringBuilder();
          
            string cevrilecekDegerString;
            
            int cevrilecekDeger=0;
            
            int kalan;

            // Girilen karakterlerin hepsinin rakam olup olmadığını kontrol edelim
            
            cevrilecekDegerString = this.girilenText.Text;

            if (butunHepsiRakamMi(cevrilecekDegerString))
            {
                cevrilecekDeger = Int32.Parse(cevrilecekDegerString);
            }
            else
            {
                //Eğer girilen karakterlerin hepsi rakam değilse bu mesajı gösterelim
                
                MessageBox.Show("Sadece rakam girmelisiniz", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                
                girilenText.Focus();
            }



            // Taban combobox unda seçilen değerin doğru olup olmadığını kontrol edelim
           
            if (!butunHepsiRakamMi(cevrilecekTaban.ToString()))
            {
                MessageBox.Show("Bir Taban Değeri Seçmelisiniz", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);
              
                girilenText.Focus();
            }

            // decimal olan değeri combobox tan seçilen taban değerine çevirelim
            if (cevrilecekDeger > 0)
            {
                do
                {
                    kalan = cevrilecekDeger % cevrilecekTaban;

                    cevrilecekDeger = cevrilecekDeger / cevrilecekTaban;

                    yeniDeger.Insert(0, kalan);

                } while (cevrilecekDeger > 0);
            }

            // Decimal dan seçilen tabana çevrilmiş değeri sonuç textbox ına yazdıralım
          
            this.sonucText.Text = yeniDeger.ToString();
            
            //yaptığımız işleme göre etiketi yeniden düzenleyelim
        }

        private **** taban_SelectedIndexChanged(object sender, EventArgs e)
        {
            FormKontrolleriniDoldur();
        }

        private **** FormKontrolleriniDoldur()
        {
            try
            {
                cevrilecekTaban = Convert.ToInt32(taban.SelectedItem.ToString());
            }
            catch (Exception)
            {
                cevrilecekTaban = 2;
                taban.SelectedIndex = 0;
            }


            switch (cevrilecekTaban)
            {
                case 2: label2.Text = "İkilik Tabandaki Değer"; break;
                case 3: label2.Text = "Üçlük Tabandaki Değer"; break;
                case 4: label2.Text = "Dötlük Tabandaki Değer"; break;
                case 5: label2.Text = "Beşlik Tabandaki Değer"; break;
                case 6: label2.Text = "Altılık Tabandaki Değer"; break;
                case 7: label2.Text = "Yedlik Tabandaki Değer"; break;
                case 8: label2.Text = "Sekizlik Tabandaki Değer"; break;
                case 9: label2.Text = "Dokuzluk Tabandaki Değer"; break;
                case 10: label2.Text = "Onluk Tabandaki Değer"; break;
                default: label2.Text = "İkilik Tabandaki Değer"; break;
            }

            btnCevir.Text = "Onluk tabanda girilen değeri " + label2.Text + "e çevir";
        }
    }
}
 
Üst