C# Sayı Tabanını Değiştirme

C# Sayı Tabanını Değiştirme

20 Mart 2019 0 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 60
Yaklaşık okuma süresi : 5 DK
C# Fibonacci Dizisi Yapımı
C# CM INCH Dönüşümü
C# Sayı Tabanını Değiştirme
5 (100%) 2 Oy

C# Sayı Tabanını Değiştirme, yazım ile C# Eğitim setime devam ediyorum. Bu dersimizde bir sayının tabanını değiştirmeyi göreceğiz. Bu konuyu lisede döneminde görüyoruz. Örneğin biz mevcutta sayıları onluk tabanda kullanırız. Şimdi bu sayı tabanları arasında dönüşüm yapabilecek kodlarımızı verelim.

 

C# Sayı Tabanını Değiştirme

Lise dönemindeki matematik konularından birisidir sayı tabanları. Ama yine de kısa bir hatırlamaya çalışalım.

Mevcutta sayıları onluk tabanda kullanırız. Rakam olarak en büyük rakam 9 dur. Örneğin tabanı dört olan bir sayıda en büyük rakam 3 olabilir. Tabanı 7 olan bir sayıdaki en büyük rakam da 6 olabilir.

Küçük bir hatırlatmadan sonra bu işlemi C# üzerinde nasıl yapacağımıza bir bakalım.

C# Sayı Tabanını Değiştirme

Form tasarımı yukarıdaki gibidir.

 

Şimdi kodlarımıza bakalım. Öncelikle taban dönüşümünü yapacak metodumuzu verelim.

 string TabanCevir(long x, int n)
        {
            if (n < 2) 
                return "-1";

            long b; 
            string s = ""; 

            while (x >= n)
            {
                b = x % n; 
                x = x / n;  
                if (b > 9)  
                    s = (char)(55 + b) + s; 
                else
                    s = b + s;
            }
            if (x > 9)
                s = (char)(55 + x) + s;
            else
                s = x + s;
            return s;
        }

Kodlarımızı açıklayalım.

Eğer taban değeri 2 den küçük girilirse taban 2’den küçük olamayacağı için direk -1 değerini döndürüyoruz.

Mod değerlerini tutmak için long tipinde bir değişken tanımlıyoruz. String tipinde bir değişken tanımlıyoruz, sonuç değeri bu değişkende tutulacak.

While döngümüzde, sayı tabandan küçük olana kadar döngümüz çalışacak

Sayının tabandaki kalanı alınıp, b değişkenine aktarılıyor.

Sayı sürekli tabana bölünüyor ve x in değeri sürekli değişiyor.

Eğer Sayının tabana bölümünde kalan 9 dan büyükse ASCII karakter tablosunda başlangıç olan A harfinin değeri 65 olduğundan burada böyle bir işlem kullanıyoruz. 9 dan büyük rakamlar harfe çevrilecek.

İlgili İçerik  C# GUID ve Sıralı GUID Oluşturma

Şimdi de butonumuzun click eventindeki kodlarını verelim.

        private void button1_Click(object sender, EventArgs e)
        {

            long x; 
            int n;  
            try     
            {
                x = int.Parse(txt_sayi.Text);      
                n = int.Parse(txt_taban.Text);      
                txt_sonuc.Text = TabanCevir(x, n); 
            }
            catch (Exception)
            {
                throw; 
            }
        }

C# Sayı Tabanını Değiştirme

Ekran çıktısı yukarıdaki görselde olduğu gibidir.


C# Sayı Tabanını Değiştirme yazım da bu kadardır arkadaşlar. Diğer derslerimizde görüşmek üzere.

C Sharp Eğitim Seti eğitimi sayfasına gitmek için tıklayınız.

Derslerime özel olarak hazırladığım Github Projeme buradan ulaşabilirsiniz…

Takipte ve Sağlıcakla kalın. 😉

 

 

C# Fibonacci Dizisi Yapımı
C# CM INCH Dönüşümü