Faktorial Sederhana dengan PHP

Screen Shot 2013-11-10 at 7.11.26 PM

apa itu faktorial ? faktorial adalah hasil perkalian antara bilangan bulat positif yang kurang dari atau sama dengan n. faktorial disebut sebagai n! dimana n adalah nilai dan ! dibaca faktorial. Contoh:

misalnya ada angka

1 = Dibaca 1(Satu)

kalau ditambah tanda seru (!)

1! = Dibaca 1(Satu) Faktorial

Oke saya emang lagi mudeng mtk atau gimana karena ini adalah rumus yang menurut saya paling gampang sekali yang saya temukan di smester 5 ini, caranya hanya men-kali kan bilangan bilangan yang ada. misalnya.

5! = 5x4x3x2x1=120

Gampang kan ? gimana kalau kita pake PHP ? tinggal pake fungsi while dan semua akan terungkap

$f = 10; //Faktorial nya
$x = 1;

while ($f < 0) {
    echo $f.($f == 1 ? ' = ' : ' · ');
    $x = $x * $f;
    $f--;
}
echo $x;

Di variabel $f itu anda bisa kasih nilai faktorial nya (yang di atas berarti 10!).

Fungsi while ($f > 0) itu artinya script akan melakukan perintah apabila nilai $f lebih besar dari 0 maka akan melanjutkan penghitungan kalau sudah mencapai angka lewat dari 0 atau == 0 maka berhenti.

Variabel $x akan bertambah nilainya pada saat dikalikan oleh perintah $x = $x * $f;

kode $f--; untuk mengurangi 1 angka ketika looping terjadi, jadi yang tadinya $f = 5 hasilnya akan berkurang pada saat looping $f = 4; $f = 3 dst.. sampai angka 1.

perintah echo di line 5 untuk men-print angka yang akan dikalikan beserta simbol kali-nya dan variable $f akan berkurang sewaktu-waktu oleh perintah looping sampai angka 1.

dan untuk perintah ($f == 1 ? ' = ' : ' · '); untuk memberi logika Apabila variable $f sudah mencapai angka 1, maka akan menprint sama dengan (=) bukan titik lagi / kali

dan perintah terakhir echo $x; untuk men-print hasilnya.

Pusiyng yah?? iya sama :hammer:

maka hasilnya adalah....

10 · 9 · 8 · 7 · 6 · 5 · 4 · 3 · 2 · 1 = 3628800

mari kita beri eplous !! (red:tepuk tangan) :D

  • http://cinta2maret.com/ Cinta 2 Maret

    kayaknya ini gabakal jalan dah om.

    $f = 10; //Faktorial nya
    $x = 1;

    while ($f 0. supaya lebih komplit ditambah kriteria dari faktorial nol

    $f = 10; //Faktorial nya
    $x = 1;

    if ($f > 0) //cek apakah faktorialnya lebih besar sama dengan nol
    {while ($f < 0) {
    echo $f.($f == 1 ? ' = ' : ' · ');
    $x = $x * $f;
    $f–;
    }
    }
    else if ($f == 0) {
    $x = 1; //default faktorial dari 0 adalah 1
    }
    else if ($f < 0) {
    $x = 'Mungkin input anda salah';
    }
    echo $x;

    CMIIW ah kalau salah…

  • Kesatria Berkelamin

    pake http://www.php.net/manual/en/function.gmp-fact.php

    gmp_fact — Factorial

    all hope is done

    • Kesatria Berkelamin

      $fact1 = gmp_fact(5); // 5 * 4 * 3 * 2 * 1
      echo gmp_strval($fact1) . “n”;

      $fact2 = gmp_fact(50); // 50 * 49 * 48, … etc
      echo gmp_strval($fact2) . “n”;

      • Kesatria Berkelamin

        function factorial($number) {

        if ($number < 2) {
        return 1;
        } else {
        return ($number * factorial($number-1));
        }
        }

  • pedox

    heuhh terimakasih koreksi nya, maklum ga terlalu mahir sama matematika haha