Introduktion till Factorial i PHP

Innan vi börjar lära oss Factorial i PHP, låt oss förstå termen factorial. Factorial för ett nummer är produkten av alla nummer som börjar från 1 upp till själva numret. Vid beräkning av produkten av alla siffror ingår numret självt.

Factorial för ett nummer beräknas endast för positiva heltal. Faktoriet till 0 är alltid 1 och faktoriet för ett negativt antal finns inte. Det är betecknat med '!' föregås av numret. Exempel n! där n är antalet

Så,

Factorial av 5! betyder factorial av 5

Factorial av 7! betyder factorial av 7

Till exempel är faktorn för nummer 5:

5! = 5 * 4 * 3 * 2 * 1 = 120

På samma sätt är faktorn för nummer 7:

7! = 7 * 6 * 5 * 4 * 3 * 2 * 1 = 5040

och så vidare..

Hur hittar vi faktoriet nu, kan vi göra det med hjälp av

  1. för slinga (utan rekursion)
  2. med rekursion

Faktorisk logik

Logiken bakom att få siffran är enligt följande.

  1. Få det antal vars faktorium ska beräknas.
  2. Få alla siffror från 1 upp till det numret.
  3. Få multiplikation av alla siffror.

Kom ihåg fakultetet 0! = 1.

Hur hittar man Factorial i PHP?

Vi kommer att lära oss ytterligare med hjälp av olika metoder för att beräkna fakultet för det givna numret med PHP-kod. Som att använda rekursion, rekursion med användarinmatning, utan rekursion, utan rekursion med användarinmatning.

Om rekursion

Liksom andra språk stöder PHP också rekursion. Vad är rekursion? När en funktion kallar sig kallas rekursion. En rekursiv funktion kallar sig inom funktionen.

Exempel 1

I följande PHP-program beräknas faktorn för nummer 5. Detta är ett enkelt program som använder för loop. Denna för slinga itereras på sekvensen med siffror som börjar från siffran till 1 uppnås.

Koda:

<_?php
//example to calculate factorial of a number using simple for loop
//declaring the input number as 5
$input=5;
//declaring the fact variable as 1
$fact =1;
//iterating using for loop
for($i=$input; $i>=1;$i--) (
// multiply each number up to 5 by its previous consecutive number
$fact = $fact * $i;
)
// Print output of the program
echo '
'. 'The factorial of the number 5 is '. $fact
?>

Utgång :

Exempel 2

I nedanstående program har vi använt en enkel HTML-formulär med en inmatningstext och en skicka-knapp. Inmatningsrutan används för att få användarinmatning. Skicka-knappen används för att skicka formulärdata. Följt av det är PHP-koden för att iterera för loop där all logik finns, vilket vi lärde oss i det föregående programmet. Så nu används samma logik med en inmatningsformulär.

Om användaren matar in ett positivt tal genom inmatningsrutan i formen beräknas faktorn för det numret och resultatet skrivs ut.

Koda:


Factorial Program

Enter a number

// example to demonstrate factorial of a number using form
if($_POST('submit') == "Submit") (
$input = $_POST('number');
$fact=1;
//iterating using for loop
for($i=$input; $i>=1;$i--) (
$fact = $fact * $i;
)
// Print output of the program
echo '
'. 'The factorial of the number '.$input.' is ' . $fact;
)
?>
<_?php

Factorial Program

Enter a number

// example to demonstrate factorial of a number using form
if($_POST('submit') == "Submit") (
$input = $_POST('number');
$fact=1;
//iterating using for loop
for($i=$input; $i>=1;$i--) (
$fact = $fact * $i;
)
// Print output of the program
echo '
'. 'The factorial of the number '.$input.' is ' . $fact;
)
?>

Utgång:

Exempel 3

I ovanstående två program lindade vi inte logiken inom en funktion. Här har vi bifogat huvudlogiken i en funktion och sedan kallat den funktionen för att beräkna faktoriet för det givna numret i PHP. Här är funktionens namn Factorial_Function som hittar fakultetet till nummer 8.

Koda:

//example to calculate factorial of a number using function
//defining the factorial function
function Factorial_Function($number) (
$input = $number;
$fact=1;
//iterating using for loop
for($i=$input; $i>=1;$i--) (
$fact = $fact * $i;
)
return $fact;
)
//calling the factorial function
$result = Factorial_Function(8);
echo 'Factorial of the number 8 is '.$result;
?>

Utgång :

Exempel 4

Vi vet att rekursion kallar en funktion inom en funktion. I följande exempel kommer vi att använda rekursion och hitta faktorn för numret med PHP-kod. Huvudlogiken är lindad i ett funktionsnamn Factorial_Function. Inom denna funktion om ingången är större än en, kallas samma funktion igen och om ingången är mindre än eller lika med 1 återgår en.

Använda rekursion

Koda:

<_?php
//Example to demonstrate factorial of a number using recursion
//function containing logic of factorial
function Factorial_Function($input)
(
// if the input is less than or equal to 1 then return
if($input <=1) (
return 1;
)
// else do a recursive call and continue to find the factorial
return $input * Factorial_Function($input-1); //doing a recursive call
)
echo "Factorial of 9 is ".Factorial_Function(9);
?>

Utgång :

Exempel 5

Vi har nu lärt oss om rekursion. I följande program har vi använt rekursion, rekursionen tillämpas på numret som är ingången från användaren i detta exempel.

Koda:


Factorial Program

Enter a number

// example to demonstrate factorial of a number using form
function Factorial_Function($input)
(
// if the input is less than or equal to 1 then return
if($input <=1) (
return 1;
)
// else do a recursive call and continue to find the factorial
return $input * Factorial_Function($input-1); //doing a recursive call
)
if(!empty($_POST('number')))(
$input = $_POST('number');
// Print output of the program
echo '
'. 'The factorial of the number '.$input.' is ' . Factorial_Function($input);
)
?>
<_?php

Factorial Program

Enter a number

// example to demonstrate factorial of a number using form
function Factorial_Function($input)
(
// if the input is less than or equal to 1 then return
if($input <=1) (
return 1;
)
// else do a recursive call and continue to find the factorial
return $input * Factorial_Function($input-1); //doing a recursive call
)
if(!empty($_POST('number')))(
$input = $_POST('number');
// Print output of the program
echo '
'. 'The factorial of the number '.$input.' is ' . Factorial_Function($input);
)
?>

Produktion:

Slutsats

Den här artikeln har täckt alla förklaringar och exempel för att hitta faktorn för ett nummer med PHP. Exempel förklaras med hjälp av rekursiva och icke-rekursiva sätt, tillsammans med rekursionsförklaring i sammanhang med programmet. Hoppas att den här artikeln hittades informativ för att lära och förstå bra.

Rekommenderade artiklar

Detta är en guide till Factorial i PHP. Här diskuterar vi det grundläggande konceptet och hur man hittar faktorn för ett nummer i PHP med olika exempel. Du kan också titta på följande artikel för att lära dig mer -

  1. Översikt över PHP-matematikfunktioner
  2. Exempel på PHP-strängfunktioner
  3. Hur ansluter man databas till PHP?
  4. Introduktion till PHP
  5. PHP-konstanter
  6. Introduktion till Factorial i Java

Kategori: