infinity [resolvido]  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
gustavo_l_walker
Entusiasta Java

Membro desde: 07/08/2006 20:39:01
Mensagens: 23
Offline

Bom pessoal não é um problema, pois já entendi o funcionamento mas gostaria de saber mais o que é esse infinity e pq o resultado de uma divisão de um inteiro resulta em infinity

Segue codigo de exemplo:


Resultado do codigo:

This message was edited 1 time. Last update was at 28/04/2010 07:57:31


Att,
Gustavo Luiz Walker
[MSN]
entanglement
GUJ Hacker

Membro desde: 26/09/2009 09:18:56
Mensagens: 5750
Offline

Quando você divide algo por zero, o que ocorre?

- Se os dois números (o dividendo e o divisor) forem inteiros, ocorre uma exceção.

- Se algum dos números for um double ou um float, então o resultado pode ser +Infinity (dividendo > 0), -Infinity (dividendo < 0) ou NaN (dividendo == 0).

É que, em ponto flutuante (double ou float), zero (0.0) não é o zero matemático, mas algo que é muito próximo de zero.

Quando você divide algo por um número muito próximo de zero, o resultado é um número muito grande. O Java entende que esse número muito grande é "Infinity".

Mas quando você divide 0 por 0, o resultado é indeterminado, e representado pelo Java como "NaN" ("not-a-number"), que quer dizer "não é um número" ou "número indeterminado".

pedroroxd
GUJ Master
[Avatar]

Membro desde: 26/08/2009 14:56:11
Mensagens: 1615
Localização: Santa Rita do Sapucaí - O vale da Eletrônica
Offline

Pensa assim:

10 / 2 = 5
10 / 1 = 10
10 / 0,1 = 100
10 / 0,00001 = 1000000

Então, imagina 10 / 0,000000000000000000000000000000000000000000001
Dá um número gigantesco, por isso que toda divisão por 0, tende a ser infinito.

Ei... você está usando DefaultTableModel no seu projeto?? Não faça isso! Veja Isso!

"Quem quer fazer, arranja um jeito. Quem não quer, uma desculpa."

'The dictionary is the only place that success comes before work!"

"Não diga à Deus que você tem um grande problema, diga ao problema que você tem um grande Deus."

"If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple.
But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas."


"O Brasil é um país geométrico. Tem problemas angulares, discutidos em mesas redondas, por um monte de bestas quadradas."

"Olho por olho, e o mundo acabará cego."

"Se falam pelas costas, é sinal que eu to na frente"
rmendes08
GUJ Master
[Avatar]

Membro desde: 29/05/2008 14:09:28
Mensagens: 1618
Offline

Só para completar, o compilador Java converte os operandos de uma expressão para o tipo mais alto que se encontra nela. Que isso quer dizer ? Se em uma expressão você tem int's e double's então os int's são convertidos em double, e toda a expressão é avaliada como se fosse double.

"A Técnica é transformada em Arte por quem a emprega"

"O futuro pertence àqueles que acreditam na beleza de seus sonhos"

Computadores Fazem Arte

http://www.uaijug.com.br

"É importante estabelecer uma estrutura de alto nível, mas isso não significa criar uma infinidade de diagramas de classes detalhados."
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team