Mauro,
Por isso eu escrevi que não havia testado os códigos.
Se vc quiser testar a função, tente com
factorial = function(x){
stopifnot(x>=0)
produto=1
if (x>1)
for (i in 1:x) produto =
i* produto
produto
}
Sobre o stopifnot, leia o manual da função para entender o uso da
função.
b
On Monday, 27 February 2012, Mauro Sznelwar wrote:
Estava rodando os scripts
e vi que o stopifnot(x>=0) se retirado não altera nada. No caso iterativo
do factorial não funciona se fizer factorial(0)=0, como forçar para
factorial(0)=1?
f2 <- function(x){
stopifnot(x>=0)
if(x<=1){
1
}else{
x*f2(x-1)
}
}