KONU : C Sharp Uygulamalar - C Sharp ( C# ) form onluk tabandan ikilik tabana çevirme programı. Onluk tabandan 2 - 9 arasındaki bütün tabanlara çeviren program. 10 luk tabandan istenilen tabana çevirme işlemleri.
UYGULAMAYI İNDİR
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 void 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 void 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 void taban_SelectedIndexChanged(object sender, EventArgs e)
{
FormKontrolleriniDoldur();
}
private void 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";
}
}
}

Hiç yorum yok :
Yorum Gönder