| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 11:56:34
|
wizardkronuz
Smalltalk
Membro desde: 05/06/2007 12:56:56
Mensagens: 4
Offline
|
alguem poderia me dizer se o codigo abaixo da o resultado correto ?
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 12:03:23
|
joede.fadel
Virtual Machine Man
![[Avatar]](/images/avatar/9729c9467900e712f46044a2e54da67f.jpg)
Membro desde: 15/08/2007 00:42:59
Mensagens: 536
Localização: Curitiba/Pr
Offline
|
dando uma rápida olhada no seu código ele vai dar o resultado certo sim, mas você deu uma complicada em algumas partes do seu código que poderia se simplificado.
|
Joe S2 Jo
UTFPR - Universisdade Tecnologica Federal do Paraná
Java-PHP-PL/SQL |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 12:09:32
|
Lavieri
GUJ Master
![[Avatar]](/images/avatar/7b41bfa5085806dfa24b8c9de0ce567f.png)
Membro desde: 27/01/2004 13:39:31
Mensagens: 1851
Localização: João Pessoa / PB
Offline
|
depende de qual é o resultado que vc espera ^^
|
Sun Certified Java Programmer (SCJP 6)
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
Meu blog -> http://blog.tomazlavieri.com.br/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 12:34:41
|
rodrigo.bossini
GUJ Master
![[Avatar]](/images/avatar/3b6fe2dc98ceed6e1608e7cfc662ab11.jpg)
Membro desde: 01/07/2008 20:59:17
Mensagens: 1055
Offline
|
Cara, se entendi direito, vc ta querendo fazer a soma de 1 até n. Assim: 1 + 2 + 3 + 4 + ....+ n. Correto?
Se for isso, vc nem precisa de laço.
Se n for par, a soma de 1 até n é igual a: (n(n+1))/2.
Se n for impar a soma de 1 até n é igual a: ((n(n-1))/2) + n.
Em java:
|
http://www.rodrigobossini.com.br/
Meu Twitter:@rodrigobossini Se uma pessoa fala português há 30 anos e ainda não aprendeu, por que é que vou acreditar que ela está programando em alguma linguagem de programação há apenas 10 anos e sabe o que está fazendo? |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 12:40:48
|
wizardkronuz
Smalltalk
Membro desde: 05/06/2007 12:56:56
Mensagens: 4
Offline
|
rod.Attack
o exercicios é
n! significa n * (n - 1)! = n * ... * 3 * 2 * 1
Encontre a soma dos dígitos do número 100!
pesquisei um pouco e encontrei o resultado de 648
só não sei se o código está correto
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 12:48:47
|
rodrigo.bossini
GUJ Master
![[Avatar]](/images/avatar/3b6fe2dc98ceed6e1608e7cfc662ab11.jpg)
Membro desde: 01/07/2008 20:59:17
Mensagens: 1055
Offline
|
wizardkronuz wrote:
rod.Attack
o exercicios é
n! significa n * (n - 1)! = n * ... * 3 * 2 * 1
Encontre a soma dos dígitos do número 100!
pesquisei um pouco e encontrei o resultado de 648
só não sei se o código está correto
Fatorial é a multiplicação de n números, começando em n e terminando em 1.
A soma dos digitos não é a mesma coisa que fatorial. Não entendi.
|
http://www.rodrigobossini.com.br/
Meu Twitter:@rodrigobossini Se uma pessoa fala português há 30 anos e ainda não aprendeu, por que é que vou acreditar que ela está programando em alguma linguagem de programação há apenas 10 anos e sabe o que está fazendo? |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 12:54:21
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Estou vendo que um monte de gente quer a solução para este problema:
"Ache a soma dos dígitos da representação decimal do fatorial de 100".
Obviamente, o fatorial de 100 é, em representação decimal, 93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000 , como se pode constatar fazendo um programa qualquer. Esse pessoal quer achar a soma desses dígitos, que é 648.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 13:04:42
|
JaVa_MaChInE
JavaBaby
Membro desde: 05/06/2007 16:43:16
Mensagens: 96
Offline
|
Não é que eu também tinha dúvida nesse exercício
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 13:19:46
|
wizardkronuz
Smalltalk
Membro desde: 05/06/2007 12:56:56
Mensagens: 4
Offline
|
thingol wrote:Estou vendo que um monte de gente quer a solução para este problema:
"Ache a soma dos dígitos da representação decimal do fatorial de 100".
Obviamente, o fatorial de 100 é, em representação decimal, 93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000 , como se pode constatar fazendo um programa qualquer. Esse pessoal quer achar a soma desses dígitos, que é 648.
hummmmm
seria algo assim então ?
o problema que depois do fatorial de 65 ele vira 0
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 13:31:43
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
A idéia do tal exercício é que você não use long ou int, mas um outro tipo de dado (java.math.BigInteger), ou então você bole uma maneira de achar a soma dos dígitos do fatorial de outra forma que não calculando o fatorial.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 13:47:56
|
rodrigo.bossini
GUJ Master
![[Avatar]](/images/avatar/3b6fe2dc98ceed6e1608e7cfc662ab11.jpg)
Membro desde: 01/07/2008 20:59:17
Mensagens: 1055
Offline
|
thingol wrote:A idéia do tal exercício é que você não use long ou int, mas um outro tipo de dado (java.math.BigInteger), ou então você bole uma maneira de achar a soma dos dígitos do fatorial de outra forma que não calculando o fatorial.
Resolvido com BigInteger:
This message was edited 1 time. Last update was at 04/03/2009 13:48:30
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 13:52:28
|
wizardkronuz
Smalltalk
Membro desde: 05/06/2007 12:56:56
Mensagens: 4
Offline
|
uhuuuuuuuuuuuuuuuuuuuuu
VALEW rod.attack
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 14:05:19
|
Lavieri
GUJ Master
![[Avatar]](/images/avatar/7b41bfa5085806dfa24b8c9de0ce567f.png)
Membro desde: 27/01/2004 13:39:31
Mensagens: 1851
Localização: João Pessoa / PB
Offline
|
Não sei fazer sem calcular o fatorial, se alguem conseguiu, por favor me ajude ^^
This message was edited 3 times. Last update was at 04/03/2009 14:44:50
|
Sun Certified Java Programmer (SCJP 6)
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
-Martin Fowler et al, Refactoring: Improving the Design of Existing Code, 1999
Meu blog -> http://blog.tomazlavieri.com.br/ |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 14:23:19
|
David
JavaEvangelist
![[Avatar]](/images/avatar/77431ca7981f1f1483ae8a58bcbb6e0e.jpg)
Membro desde: 18/03/2005 13:10:33
Mensagens: 450
Localização: Natal/RN
Offline
|
rod.attack wrote:
Se n for par, a soma de 1 até n é igual a: (n(n+1))/2.
Se n for impar a soma de 1 até n é igual a: ((n(n-1))/2) + n.
Na verdade, (n(n+1))/2 é a mesma coisa que ((n(n-1))/2) + n.
(n(n+1))/2 = ((n(n-1))/2) + n
(n^2 + n) / 2 = (n^2 - n) / 2 + 2n / 2
(n^2 + n) / 2 = (n^2 - n + 2n) / 2
(n^2 + n) / 2 = (n^2 + n) / 2
0 = 0.
Não é necessário fazer esse teste, basta usar sempre a primeira fórmula.
|
David Pereira
Engenheiro de Computação - UFRN
Mestre em Engenharia Elétrica
Doutorando em Engenharia Elétrica |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/03/2009 14:24:08
|
rodrigo.bossini
GUJ Master
![[Avatar]](/images/avatar/3b6fe2dc98ceed6e1608e7cfc662ab11.jpg)
Membro desde: 01/07/2008 20:59:17
Mensagens: 1055
Offline
|
Lavieri wrote:Não sei fazer sem calcular o fatorial, se alguem conseguiu, por favor me ajude ^^
calcule o fatorial de forma recursiva:
This message was edited 1 time. Last update was at 04/03/2009 14:24:53
|
http://www.rodrigobossini.com.br/
Meu Twitter:@rodrigobossini Se uma pessoa fala português há 30 anos e ainda não aprendeu, por que é que vou acreditar que ela está programando em alguma linguagem de programação há apenas 10 anos e sabe o que está fazendo? |
|
|
 |
|
|