Our social:

3 Kasım 2013 Pazar

C#'ta textboxa girilen sayıyı yazıyla yazdırma

Bu yazıda textboxa girilen sayıyı ekrana okunuşuyla beraber yazdırmayı anlatacağım. Yani textboxa 678 sayısını girip butona tıkladığımızda labelda altı yüz yetmiş sekiz yazacak.

Programı yazarken hatırlatmam gereken işlem, kalanı bulmaya yaran % işlemi. Örneğin 12 % 5 yaparsak 2 değerini elde ederiz.

Yazdığım program binler basamağına kadar, yani en fazla dört basamaklı sayıları yazdırıyor ancak tabi ki de bu kolayca geliştirilebilir.

İlk olarak formuma bir textbox, bir button ve bir de label ekliyorum.



Ardından butonuma çift tıklayarak kodları yazmaya başlıyorum.

İlk olarak textboxın içindeki değeri integera çeviriyorum.

int sayi = Convert.ToInt32(textBox1.Text);

Ardından binler, yuzler, onlar ve birler adında integer değişkenler oluşturuyorum.

int binler, yuzler, onlar, birler;

Şimdi en önemli kısma geldik. Binler basamağını bulmak için sayıyı 1000'e bölüyorum. Örneğin sayım 8943 ise bana 8 değerini verecek. Yani binler basamağını bulacağım.

binler = sayi / 1000;

Ardından yüzler basamağını bulmak için önce sayıyı 100'e bölüyorum. Yani 8943 / 100 işleminden bana 89 sayısını veriyor. Bunu da 89 % 10 yapıyorum ve böylece 9 değerini yani yüzler basamağını buluyorum.

yuzler = (sayi / 100) % 10;

Onlar basamağını bulmak için de yüzler basamağındakine benzer işlem yapıyorum.

onlar = (sayi / 10) % 10;

Son olarak da birler basamağını buluyorum. Sayının 10'a bölümünden kalanı bularak birler basamağını elde ediyorum.

birler = sayi % 10;

Şimdi ekrana yazdırmaya geldi. Switch - case komutunu kullanıyorum.

Binler basamağı için


switch (binler)
            {
                default: return;
                case 0: label1.Text = label1.Text + ""; break;
                case 1: label1.Text = label1.Text + "bin"; break;
                case 2: label1.Text = label1.Text + "iki bin"; break;
                case 3: label1.Text = label1.Text + "üç bin"; break;
                case 4: label1.Text = label1.Text + "dört bin"; break;
                case 5: label1.Text = label1.Text + "beş bin"; break;
                case 6: label1.Text = label1.Text + "altı bin"; break;
                case 7: label1.Text = label1.Text + "yedi bin"; break;
                case 8: label1.Text = label1.Text + "sekiz bin"; break;
                case 9: label1.Text = label1.Text + "dokuz bin"; break;
            }

Yüzler basamağı için


switch (yuzler)
            {
                default: return;
                case 0: label1.Text = label1.Text + ""; break;
                case 1: label1.Text = label1.Text + " yüz"; break;
                case 2: label1.Text = label1.Text + " iki yüz"; break;
                case 3: label1.Text = label1.Text + " üç yüz"; break;
                case 4: label1.Text = label1.Text + " dört yüz"; break;
                case 5: label1.Text = label1.Text + " beş yüz"; break;
                case 6: label1.Text = label1.Text + " altı yüz"; break;
                case 7: label1.Text = label1.Text + " yedi yüz"; break;
                case 8: label1.Text = label1.Text + " sekiz yüz"; break;
                case 9: label1.Text = label1.Text + " dokuz yüz"; break;
            }

Onlar basamağı için


switch (onlar)
            {
                default: return;
                case 0: label1.Text = label1.Text + ""; break;
                case 1: label1.Text = label1.Text + " on"; break;
                case 2: label1.Text = label1.Text + " yirmi"; break;
                case 3: label1.Text = label1.Text + " otuz"; break;
                case 4: label1.Text = label1.Text + " kırk"; break;
                case 5: label1.Text = label1.Text + " elli"; break;
                case 6: label1.Text = label1.Text + " altmış"; break;
                case 7: label1.Text = label1.Text + " yetmiş"; break;
                case 8: label1.Text = label1.Text + " seksen"; break;
                case 9: label1.Text = label1.Text + " doksan"; break;
            }

Birler basamağı için


switch (birler)
            {
                default: return;
                case 0: label1.Text = label1.Text + ""; break;
                case 1: label1.Text = label1.Text + " bir"; break;
                case 2: label1.Text = label1.Text + " iki"; break;
                case 3: label1.Text = label1.Text + " üç"; break;
                case 4: label1.Text = label1.Text + " dört"; break;
                case 5: label1.Text = label1.Text + " beş"; break;
                case 6: label1.Text = label1.Text + " altı"; break;
                case 7: label1.Text = label1.Text + " yedi"; break;
                case 8: label1.Text = label1.Text + " sekiz"; break;
                case 9: label1.Text = label1.Text + " dokuz"; break;
            }

Programdan görüntü



1 yorum:

Adsız dedi ki...

YA DEĞERLİ ADMİN(YÖNTECİ) C# FORM TEXTBOXA GİRİLEN SAYIYI YAZIYLA YAZDIRMANIN TERSİNİ DE PAYLAŞABİLİR MİSİNİZ?
NOT:SİZ RAHAT OKUYUN DİYE BÜYÜK YAZDIM