Bvural41 1
Bvural41
mannaxxx 1
mannaxxx
Agora Metin2 1
Agora Metin2
Mt2Hizmet 1
Mt2Hizmet
berkmenoo 1
berkmenoo
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle

PHP ile onluk tabanı ikilik tabana çevirme

  • Konuyu başlatan Konuyu başlatan umit99
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 1K

Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!

Merhaba arkadaşlar. Çok uzun süredir birşeyler karalamadığım sayfama ahde vefa göstermek adına, geçenlerde uğraşarak oluşturduğum basit bir sayı tabanı çevirme betiğini yazayım dedim. Umarım buna ihtiyacı olanlar vardır ve benim bu naçizane betiğim sizlerin işini görür.


Betiğimiz aşağıda, kodlarımızın önündeki açıklamalar ile hangi kod ile ne yapıldığını daha iyi anlayabilirsiniz.

Önce bir formumuz var.

PHP:
<form method="post"> Çevirmek istediğiniz sayıyı giriniz<br> <input type="text" name="sayi"> <input type="submit" value="Hesapla!"> </form>
Şimdi de php kodlarımız:

PHP:
function taban10to2($sayi) {  // sayımızı girip işlem yaptıracağımız bir fonksiyon oluşturuyoruz. 
     
    while($sayi>1) { // 2'lik tabana çevirdiğimiz için sayımız 1'den büyük olduğu sürece döngümüzün devam etmesini sağlıyoruz. 
         
        $kalan[] = $sayi%2; // sayımızın 2'ye bölümünden kalanları bir diziye atıyoruz. 
         
        $sayi = $sayi/2; // sonra sayımızdan kalan bölümü tekrar $sayi değişkenine atıyoruz. 
             
    } 
     
    echo "Sayının ikilik tabandaki karşılığı: "; 
    for($a=count($kalan);$a>=0;$a--) { // dizimizin elemanlarını tersten yazdırdık. hatırlarsanız matematikte taban işlemlerini yaparken sayıyı 1 veya 0 olana kadar 2'ye bölüyorduk ve sonra kalanları tersten yazıyorduk. 
         
        echo @$kalan[$a]; 
     
    } 
 
} 
 
if(empty($_POST['sayi'])) { // eğer kutucuğa sayı yazılmadan basılırsa... 
     
    echo "Bir sayı girmelisiniz."; 
     
} elseif($_POST['sayi'] >= 0 && $_POST['sayi'] < 2) { // eğer kutucuğa basılan sayı 0 ya da 1 ise... 
     
    echo "Sayının ikilik tabandaki karşılığı: ".$_POST['sayi']; 
 
} elseif($_POST['sayi'] == 2) { // eğer kutucuğa girilen sayı 2 ise... 
     
    echo "Sayının ikilik tabandaki karşılığı: 10"; 
     
} else { // kutucuğa girilen sayı 0 1 ve 2'den farklı ise... 
     
    $sayi = $_POST['sayi']; 
     
    taban10to2($sayi); // fonksiyonumuzu çalıştırıyoruz.. 
     
}

Herhangi bir eksiğini görmedim, girdiğim sayıları doğru bir şekilde 2'lik tabana çevirdi. Eğer siz bir yanlışını görürseniz bana bildirin, icabına bakalım
smile.gif
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst