• 14-02-2009, 03:57:06
    #1
    Üyeliği durduruldu
    slm arkadaşlar dün akşam öylesine kodlarla uğraşırken aklıma herhangi bir tutarın %18 ini nasıl hesaplatacağım takıldı ve kafadan sallama bir kaç kod yazdım...
    $a = 138.36; // ana fiyat
    $b = 18;  // kdv oraný
    $c = 100; // bölüncek sayý
    $d = 10;   // kampanya indirimi  % desi
    //----------------------------------
    $k  = $a / $c;
    $l  = $k * $b;
    $m  = $a + $l;
    $n  = $d * $k;
    $p  = $m - $n;
    echo "Kdv Hariç fiyat&yacute; : ".number_format($a,2)."TL<br>";
    echo "KDV Oran&yacute; + :%".$b."---".number_format($l,2)."TL<br>";
    //echo "Kdv Oran&yacute; ".$e."<br>";
    echo "Kdv Dahil Toplam Fiyat&yacute; :".number_format($m,2)."TL<br>";
    echo "Kampanya indirimi oran&yacute; :%".$d."<br>";
    echo "kampanya Fiyati : ".number_format ($p,2)."TL";
    burdaki program doğrumu kullanmaya kalksam bir yerde sorun yaşarmıyım?

    ekran çıktısıda bu..

    Kdv Hariç Birim fiyatı : 138.36TL
    KDV Oranı + :%18---24.90TL
    Kdv Dahil Toplam Fiyatı :163.26TL
    Kampanya indirimi oranı :%10
    kampanya Fiyati : 149.43TL
  • 14-02-2009, 09:26:49
    #2
    Üyeliği durduruldu
    mizraklar adlı üyeden alıntı: mesajı görüntüle
    slm arkadaşlar dün akşam öylesine kodlarla uğraşırken aklıma herhangi bir tutarın %18 ini nasıl hesaplatacağım takıldı ve kafadan sallama bir kaç kod yazdım...
    $a = 138.36; // ana fiyat
    $b = 18;  // kdv oran&yacute;
    $c = 100; // bölüncek say&yacute;
    $d = 10;   // kampanya indirimi  % desi
    //----------------------------------
    $k  = $a / $c;
    $l  = $k * $b;
    $m  = $a + $l;
    $n  = $d * $k;
    $p  = $m - $n;
    echo "Kdv Hariç fiyat&yacute; : ".number_format($a,2)."TL<br>";
    echo "KDV Oran&yacute; + :%".$b."---".number_format($l,2)."TL<br>";
    //echo "Kdv Oran&yacute; ".$e."<br>";
    echo "Kdv Dahil Toplam Fiyat&yacute; :".number_format($m,2)."TL<br>";
    echo "Kampanya indirimi oran&yacute; :%".$d."<br>";
    echo "kampanya Fiyati : ".number_format ($p,2)."TL";
    burdaki program doğrumu kullanmaya kalksam bir yerde sorun yaşarmıyım?
    ekran çıktısıda bu..
    Kdv Hariç Birim fiyatı : 138.36TL
    KDV Oranı + :%18---24.90TL
    Kdv Dahil Toplam Fiyatı :163.26TL
    Kampanya indirimi oranı :%10
    kampanya Fiyati : 149.43TL

    normal çarpma bölme bunlar sorun yaşamazsınız
  • 14-02-2009, 12:30:34
    #3
    100'e bölüp 18 ile çarpmak yerine 0.18le çarp kod kalabalığından kurtulmuş olursun.
  • 14-02-2009, 14:21:10
    #4
    Üyeliği durduruldu
    Slm Arkadaşlar Yani Sorundan Kastım Doğru Sonuçu alabiliriz değil mi?

    number_format($d,2) burda ,2 doğru bir tespitmidir? sizce
  • 14-02-2009, 14:58:57
    #5
    Üyeliği durduruldu
    bölme işleminde kodu ceil() fonksiyonundan geçirirseniz daha iyi olur
  • 14-02-2009, 15:51:47
    #6
    Üyeliği durduruldu
    mizraklar adlı üyeden alıntı: mesajı görüntüle
    Slm Arkadaşlar Yani Sorundan Kastım Doğru Sonuçu alabiliriz değil mi?
    number_format($d,2) burda ,2 doğru bir tespitmidir? sizce
    verdiginiz kod sonucu gösterirken mevcut sonucun sadece 2 basamagini gösterir
  • 14-02-2009, 18:50:01
    #7
    Üyeliği durduruldu
    sdemirkeser adlı üyeden alıntı: mesajı görüntüle
    verdiginiz kod sonucu gösterirken mevcut sonucun sadece 2 basamagini gösterir
    2 basamağı derken son 2 rakamdan bahsediyoz demi.. yani uzayıp giden kusuratlı sonuçları 2 basamaklı sayıya toparlıyor sanırım..

    mesele 1,250.96595695
    sayısını 1,250.97 ye toparlıyor değil mi?
  • 14-02-2009, 19:14:31
    #8
    Üyeliği durduruldu
    bilgiliweb adlı üyeden alıntı: mesajı görüntüle
    bölme işleminde kodu ceil() fonksiyonundan geçirirseniz daha iyi olur
    Alıntı
    ceil()
    ne anlama geliyor ve görevi nedir? ayrıca sadece bölme işlemlerindemi kullanılır..

    Ayrıca cevaplarınız için şimdiden teşekkür ederim
  • 14-02-2009, 19:28:24
    #9
    Üyeliği durduruldu
    mizraklar adlı üyeden alıntı: mesajı görüntüle
    2 basamağı derken son 2 rakamdan bahsediyoz demi.. yani uzayıp giden kusuratlı sonuçları 2 basamaklı sayıya toparlıyor sanırım..
    mesele 1,250.96595695
    sayısını 1,250.97 ye toparlıyor değil mi?
    evet aynen öyle

    ceil ve number format gibi fonksiyonları manuelden inceleyebilirsiniz

    PHP: ceil - Manual