Bulunan 1 den 2 - Toplam 2

Konu: Hesap makinesi(log, kare, küp, karekök alma vb. işlemleri yapıyor) yaptım fakat ....

  1. #1
    Ceviz Üyesi rozfidan Üyenin Avatarı
    Üyelik Tarihi
    15-Nisan-2007
    Mesaj
    61

    Mutsuz Hesap makinesi(log, kare, küp, karekök alma vb. işlemleri yapıyor) yaptım fakat ....

    Kendimi biraz kod ameleliği yapmış gibi hissediyorum sizce daha kısa kodla bu tür bişeyi yapabilir miyim?
    PHP Kodu:
    <?php
    header
    ("Content-Type: text/html; charset=ISO-8859-9");
        
        
    $sayi_1=$_REQUEST['sayi_1'];
        
    $sayi_2=$_REQUEST['sayi_2'];
        
    $islem=$_REQUEST['islem'];
    //abs(); Sayının Mutlak değerini bulmaya yarar.
    //hypot(); Dik üçgende iki kenarı verilen sayının hipotenüsünü bulur
    //round(); En yakın tamsayı değerine yuvarlar.
    function islem($sayi_1,$sayi_2,$islem){
    if(
    $islem=='+'){
        if(!
    filter_var($sayi_2FILTER_VALIDATE_INT)){
        
    $sonuc "***";
        }else{
        
    $sonuc $sayi_1 $sayi_2;
        }
        return 
    $sonuc;
    }elseif(
    $islem=='-'){
        if(!
    filter_var($sayi_2FILTER_VALIDATE_INT)){
        
    $sonuc "***";
        }else{
        
    $sonuc$sayi_1 $sayi_2;
        }
        return 
    $sonuc;
    }elseif(
    $islem=='*'){
        if(!
    filter_var($sayi_2FILTER_VALIDATE_INT)){
        
    $sonuc "***";
        }else{
        
    $sonuc$sayi_1 $sayi_2;
        }
        return 
    $sonuc;
    }elseif(
    $islem=='/'){
        if(!
    filter_var($sayi_2FILTER_VALIDATE_INT)){
        
    $sonuc "***";
        }else{
        
    $sonuc$sayi_1 $sayi_2;
        }
        return 
    $sonuc;
    }elseif(
    $islem=='%'){
        if(!
    filter_var($sayi_2FILTER_VALIDATE_INT)){
        
    $sonuc "***";
        }else{
        
    $sonuc = ($sayi_1/100)*$sayi_2;
        }    
        return 
    $sonuc;
    }elseif(
    $islem=='kok'){
        
    $sonuc round(sqrt($sayi_1),3);
        return 
    $sonuc;
    }elseif(
    $islem=='kare'){
        
    $sonuc round(pow($sayi_1,2),2);
        return 
    $sonuc;
    }elseif(
    $islem=='kup'){
        
    $sonuc round(pow($sayi_1,3),2);
        return 
    $sonuc;
    }elseif(
    $islem=='log'){
        if(!
    filter_var($sayi_2FILTER_VALIDATE_INT)){
        
    $sonuc "***";
        }else{
        
    $sonuc round(log($sayi_1,$sayi_2),3);
        }    
        return 
    $sonuc;
    }else{ 
        
    $sonuc "Hatalı İşlem<br /><a href=".basename($_SERVER['PHP_SELF']).">Geri</a>";
        return 
    $sonuc;
        }
    }
    ?>
    <html>
    <body>
    <?php
    if($_REQUEST['sonuc']=='Hesapla'){
        if(!
    filter_var($sayi_1,FILTER_VALIDATE_INT)){
            echo 
    "Yanlış karakter girişi yaptınız!<br /><a href=".basename($_SERVER['PHP_SELF']).">Geri</a>";
        }else{
        
    $sonuc islem($sayi_1,$sayi_2,$islem);
            if(
    $sonuc == "***"){
                echo 
    "Yanlış karakter girişi yaptınız!<br /><a href=".basename($_SERVER['PHP_SELF']).">Geri</a>";
            }else{
                echo 
    "<left><h2>Hesap Makinesi</h2><br>Sonuc: <b>".$sonuc."</b><br><a href='".basename($_SERVER['PHP_SELF'])."'>Yeni İşlem</a>";
            }
        }
    }else{
        echo 
    "<div align=left><h2>Hesap Makinesi</h2><br><form action='".basename($_SERVER['PHP_SELF'])."' method='POST'>Sayı_1:<input type='text' name='sayi_1'><br>
    Sayı_2:<input type='text' name='sayi_2'><br>İşlem Seç:<select name='islem'><option value='+'>topla</option><option value='-'>çıkar</option>
    <option value='*'>çarp</option><option value='/' >böl</option><option value='%' >yüzde</option><option value='kare' >kare</option>
    <option value='kup' >küp</option><option value='kok' >karekök alma</option><option value='log' >logaritma</option></select><br><input type='submit' name='sonuc' value='Hesapla'>
    <input type='reset'></form><br><div><ul><b>Önemli!; </b><li><u>Eğer rakam girmezseniz sonuç vermez.</u><li>Kare, kök veya karekök alma gibi<br>
    işlemlerde değerleri Sayı_1 bölümüne yazınız.</ul>
    <ul>Logaritma işleminde; <li>Sayı_1: Üstteki sayı<li>Sayı_2: Taban değeri</ul>
    <ul>Yüzde işlemi için; <li>Sayı_1: Yüzdesi alınacak sayı<li>Sayı_2: Yüzde değeri</ul></div></div>"
    ;
    }

    ?>
    </body>
    </html>

  2. #2
    Ceviz Üyesi rozfidan Üyenin Avatarı
    Üyelik Tarihi
    15-Nisan-2007
    Mesaj
    61

    Hoş Cevap verirseniz mutlu olacam....


    Görüşlerinizi belirtirseniz sevinirim...

Konu Bilgileri

Bu Konuya Gözatan Kullanıcılar

Şu anda 1 kullanıcı bu konuyu görüntülüyor. (0 kayıtlı ve 1 misafir)

Yer İmleri

Mesaj Yetkileriniz

  • Yeni konu açmaya yetkiniz yok
  • Cevap yazmaya yetkiniz yok
  • Eklenti yüklemeye yetkiniz yok
  • Mesajınızı düzeltmeye yetkiniz yok
  •