Sissejuhatus faktooriumisse R
Kõigi numbrite korrutis ühest ühele määratud arvuni nimetatakse kindlaksmääratud numbri faktoriaaliks. Number järgneb! sümbol tähistab numbri faktoriaal, tähendab! sümbol, mida kasutatakse faktoriaalse tähistamiseks. N arvu faktoreali leidmiseks kasutatav valem on n! = n * (n - 1) * (n - 2) * (n - 3)…. Vaatame näiteid faktooriumi leidmiseks -
Faktoriaal 0 = 0! = 1.
Faktoriaal 1 = 1! = 1.
Faktoriaal 2 = 2! = n * (n - 1) = 2 * (2 - 1) = 2 * 1 = 2.
Faktoriaal 3 = 3! = n * (n - 1) * (n - 2) = 3 * (3 - 1) * (3 - 2) = 3 * 2 * 1 = 6.
Faktoriaal 4 = 4! = n * (n - 1) * (n - 2) * (n - 3) = 4 * (4 - 1) * (4 - 2) * (4 - 3) = 4 * 3 * 2 * 1 = 24 .
Faktoriaal 5 = 5! = n * (n - 1) * (n - 2) * (n - 3) * (n - 4) = 5 * (5 - 1) * (5 - 2) * (5 - 3) * (5 - 4) = 5 * 4 * 3 * 2 * 1 = 120. Ja nii edasi.
Nagu ülaltoodud arvutuse puhul, nägime, et koefitsient 0 on 1, samal ajal kui negatiivse arvu faktoriaal pole määratletud, R-ga saame NAN-i negatiivse arvu faktoriaalide väljundina.
Kuidas leida faktoreid R-programmeerimisel?
Siin käsitleme faktoriaalide arvutamise programmi erinevate meetodite abil.
Näide nr 1 - faktoorne lause if-else kasutades
facto <- function()(
# accept the input provided by the user and convert to integer
no = as.integer( readline(" Input a number to find factorial : "))
fact = 1
# checking whether the number is negative, zero or positive
if(no < 0) (
print(" The number is negative the factorial does not exist. ")
) else if(no == 0) (
print(" The factorial result is 1 ")
) else (
for( i in 1:no) (
fact = fact * i
)
print(paste(" The factorial result is ", no, "is", fact ))
)
)
facto()
Ülaltoodud koodi väljund positiivse arvu jaoks -
Ülaltoodud koodi väljund negatiivse arvu jaoks -
Ülaltoodud koodi puhul kontrollib if-else lause esmalt, kas no on negatiivne või mitte, kui no on negatiivne, siis ei ole <0 tingimus tõene, siis väljundinäidikul “Number on negatiivne, faktoriaali ei eksisteeri”. Kui aga tingimus on vale, siis juhul, kui ükski tingimus pole == 0, kontrollib, kas väljundinäit “Faktoriaal on 1” on tõene, arvutades for-loop abil faktoriaal- ja arvutatud väärtuse kui väljundi.
Näide nr 2 - faktuaalne kasutamine silmuse jaoks
facto <- function()(
no = as.integer( readline(prompt=" Enter a number to find factorial : "))
fact = 1
for( i in 1:no) (
fact = fact * i
)
print(paste(" The factorial of ", no, "is", fact ))
)
facto()
Ülaltoodud koodi väljund -
Ülaltoodud koodi puhul on tegu faktoorme leidmisega, kontrollimata, kas arv on negatiivne või mitte.
Näide 3 - faktoorne rekursioonimeetodit kasutades
fact <- function( no ) (
# check if no negative, zero or one then return 1
if( no <= 1) (
return(1)
) else (
return(no * fact(no-1))
)
)
Ülaltoodud koodi väljund positiivse arvu jaoks -
Ülaltoodud koodi väljund negatiivse arvu jaoks -
Ülaltoodud koodi väljund nullnumbri jaoks -
Ülaltoodud koodi väljund positiivse arvu jaoks -
Ülaltoodud kood, mis kasutab rekursiivset funktsiooni fakt (), funktsiooni fakt () sees, mida faktoriaal leiab iga numbri korrutise järgi rekursiivselt rea tagasituleku abil (no * fakt (nr-1)). Oletame, et nimetame faktifunktsiooni faktina (7), siis funktsiooni fakt () rekursiivselt, nagu allpool toodud -
ei = 7
if (pole vale
tagasi ei * fakt (no-1) => 7 * fakt (6) => 7 * 6 * fakt (5) => => 7 * 6 * 5 * fakt (4) => 7 * 6 * 5 * 4 * fakt (3) => 7 * 6 * 5 * 4 * 3 * fakt (2) => 7 * 6 * 5 * 4 * 3 * 2 * fakt (1) => 7 * 6 * 5 * 4 * 3 * 2 * 1 => 5040. Seega on lõpptulemus 5040.
Näide # 4 - faktoorne, kasutades sisseehitatud funktsiooni
Faktoriaal () on R-keele sisseehitatud funktsioon, mida kasutatakse arvu arvutamiseks. Funktsiooni süntaks on -
faktoorne (ei)
ei - arvvektor
Mõned näited erinevate parameetritega funktsionaalse (mitte) funktsiooni kohta -
# find the factorial of -1
> factorial(-1)
(1) NaN
# find the factorial of 0
> factorial(0)
(1) 1
# find the factorial of 1
> factorial(1)
(1) 1
# find the factorial of 7
> factorial(7)
(1) 5040
# find the factorial for vector of each elements 2, 3, 4
> factorial(c(2, 3, 4))
(1) 2 6 24
Järeldus
- Kõigi arvude 1-st täpsustatud arvuni korrutist nimetatakse kindlaksmääratud numbri faktoriaaliks.
- N arvu faktoreali leidmiseks kasutatav valem või loogika on n! = n * (n - 1) * (n - 2) * (n - 3)….
- Faktoriaal 0 on 1, kõigi negatiivsete arvude faktoriaal pole R-s määratletud, see väljastab NAN-i.
- R-keeles saab numbri faktoriaal leida kahel viisil: üks kasutab neid silmuse jaoks ja teine viis kasutab rekursiooni (funktsiooni kutsumine rekursiivselt).
Soovitatavad artiklid
See on juhend Factorialile R. Siin käsitleme Factoriali tutvustamist R-is koos programmidega koos näidetega. Lisateavet leiate ka meie muudest soovitatud artiklitest -
- Faktuur Pythonis
- Faktoriaal C-s
- Pöördarv C-ga
- Faktoriaal PHP-s
- Rekursiivne funktsioon JavaScriptis