[R-br] Programa para calcular expoente de um número inteiro
Benilton Carvalho
beniltoncarvalho em gmail.com
Quarta Agosto 20 14:57:15 BRT 2014
ja' q e' mesmo para fins didaticos, considere a seguinte solucao:
myexp <- function(B,C){
stopifnot(is.integer(C), C >= 0)
if (C == 0)
return(1)
B*myexp(B, C-1L)
}
myexp(2, 5L)
b
ps: o L depois do 5 esta' dizendo pro R que e' p garantir que o 5 e' do
tipo inteiro e nao o valor real "5".
Em 20 de agosto de 2014 14:46, Felipe <felipe.e.barletta em gmail.com>
escreveu:
> Obrigado Marcus.
>
>
>
> On 20-08-2014 14:35, Marcus Nunes wrote:
>
> Digite
>
> B
>
> no prompt do R e perceba que o valor de B é NULL. O mesmo vale para C.
> Eles não estão recebendo os valores numéricos. Fazendo
>
> > exp(2, 5)
> O valor de B = 2 elevado a C = 5 é: 32
>
> dá tudo certo.
>
>
>
> 2014-08-20 14:31 GMT-03:00 Felipe <felipe.e.barletta em gmail.com>:
>
>> Prezdos colegas,
>>
>> Fiz um simples programa para calcular um número real elevado à um
>> expoente inteiro, para treinar um pouco programação no R.
>> Porém não rodou com o seguinte código e erro:
>>
>>
>> B <- cat("entre com a base")
>> 2
>> C <- cat("entre com o expoente inteiro C")
>> 5
>> exp <- function(B,C)
>> {
>> if (C - as.integer(C)!= 0)
>> cat("Entre com expoente inteiro")
>> else{
>> if (C < 0)
>> cat("Só aceitamos expoentes positivos")
>> else if (C == 0)
>> resp = 1
>> else{
>> resp = 1
>> for (i in 1:C)
>> resp = resp*B
>> cat ("O valor de B =",B,"elevado a C =",C,"é:",resp)}}
>> }
>> exp(B,C)
>>
>> Erro em if (C - as.integer(C) != 0) cat("Entre com expoente inteiro")
>> else { (from #3) :
>> argumento tem comprimento zero
>>
>> Se alguém puder ajudar, ficarei muito grato!!
>>
>>
>> _______________________________________________
>> R-br mailing list
>> R-br em listas.c3sl.ufpr.br
>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
>> código mínimo reproduzível.
>>
>
>
>
> --
> Marcus Nunes
> http://marcusnunes.me/
>
>
> _______________________________________________
> R-br mailing listR-br em listas.c3sl.ufpr.brhttps://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
>
>
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>
--
[image: Benilton Carvalho on about.me]
Benilton Carvalho
about.me/benilton
<http://about.me/benilton>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20140820/a188f288/attachment.html>
Mais detalhes sobre a lista de discussão R-br