5.00 / 1 oy

PHP ile Faktöriyel Hesabı Yapmak

Faktöriyel işlemi, sayının kendi de dahil olmak üzere bir sayıdan başlayarak bire kadar azalarak arada kalan tüm sayılarla çarpılması anlamına gelen matematiksel bir işlemdir ve yapısı gereği de döngülerin anlaşılabilmesi için en pratik örneklerden birisidir. Sitede de daha önce örneklerinin farklı programlama dilleri ile paylaşıldığını gördüğüm için bu geceye bir de PHP faktöriyel uygulaması eklemek istedim.

bkz: Python'da Faktöriyel Hesaplamak (Factorial)

bkz: Sıfır Faktöriyel Neden Sıfırdır?

bkz: Matlab'da Faktöriyel Hesaplayan Function

bkz: Matlab'da Faktöriyel Hesaplayan Function

PHP ile faktöriyel hesabı yaparken for ya da while döngüsü kullanabiliriz, her ikisinin de mantığı aynı olduğu için ben azalan for döngüsü kullanmayı tercih ettim.

Örnek: 6! değerini PHP ile bularak yazdırın.

Çözüm:

<?php  
    $carpim = 1;
    $sayi = 6;
    echo "$sayi! = ";
    for ($sayi; $sayi>=1; $sayi--)
    {
        $carpim *= $sayi;
    }
    echo "$carpim";
?>

Çıktı: 720

Örnek 2: 10'a kadar olan sayıların faktöriyel değerlerini bularak yazdırın.

Çözüm:

<?php  
    $sayi = 1;
    
    while ($sayi <= 10)
    {
        $carpim = 1;
        echo "$sayi! = ";
        
        for ($i = $sayi; $i>=1; $i--)
        {
            $carpim *= $i;
        }
        
        echo "$carpim\n\r";
        $sayi++;
    }
?>

Çıktı:

1! = 1
2! = 2
3! = 6
4! = 24
5! = 120
6! = 720
7! = 5040
8! = 40320
9! = 362880
10! = 3628800

bkz: PHP'de While Döngüsü Kullanımı ve Örnekleri

bkz: PHP'de Do While Döngüsü Kullanımı ve Örnekleri

bkz: PHP'de While Döngüsü ile Sonsuz Döngü Oluşturmak

bkz: PHP'de While Döngüsü ile Sonsuz Döngü Oluşturmak

PhpCoder

05.03.2021 03:44

Bu soru henüz yanıtlanmamış.

Bu soruya sadece kayıtlı kullanıcılar yanıt yazabilirler. Yanıt yazmak için lütfen giriş yapınız.

Reitix
PHP ile Faktöriyel Hesabı Yapmak

İnternet sitemizdeki deneyiminizi iyileştirmek için çerezler kullanıyoruz. Bu siteye giriş yaparak çerez kullanımını kabul etmiş sayılıyorsunuz. Daha fazla bilgi.