problema com divisão na hora de rodas o programa [resolvido]  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
Jadir
Debugger

Membro desde: 15/03/2011 22:47:25
Mensagens: 66
Offline

então na meu netbeans quando eu coloco um numero para dividir ele aparece apenas como 0, eu to fazendo um exercício e nele eu teria que fazer a seguinte conta porc1 = (acm1 * acmtodos) / 100; para acha porcentagem, dai eu tentei coloca pra dividir 25/100 e mesmo assim deu problema, sera que é o programa que esta com pau?

This message was edited 1 time. Last update was at 15/06/2011 09:14:42

Jadir
Debugger

Membro desde: 15/03/2011 22:47:25
Mensagens: 66
Offline

o exercício ta como double!

e eu tentei dividir agora 8/4 e deu, mas quando tento dividir um numero menor por o divisor ele da erro o que poderia ser?
analyser
JavaEvangelist
[Avatar]

Membro desde: 26/02/2007 09:31:49
Mensagens: 329
Offline

Cola o código aqui.

Analyser
Jadir
Debugger

Membro desde: 15/03/2011 22:47:25
Mensagens: 66
Offline

Jadir
Debugger

Membro desde: 15/03/2011 22:47:25
Mensagens: 66
Offline

desconsidera aquele porc1 = 8/4
analyser
JavaEvangelist
[Avatar]

Membro desde: 26/02/2007 09:31:49
Mensagens: 329
Offline

Imagine que acm1 = 0

porc1 = ((0 * acmtodos) / 100);

porc1 sempre vai dar zero.

Analyser
Jadir
Debugger

Membro desde: 15/03/2011 22:47:25
Mensagens: 66
Offline

não, mas ali, tem um que é o acumulador, conforme a pessoa digita o numero 1 é acumulado ali
analyser
JavaEvangelist
[Avatar]

Membro desde: 26/02/2007 09:31:49
Mensagens: 329
Offline

Se não entrar no case, não vai acumular.

Analyser
Jadir
Debugger

Membro desde: 15/03/2011 22:47:25
Mensagens: 66
Offline

acumula sim! testei dando um System.out.println(acm1) pra ver se tava acumulando!
Jadir
Debugger

Membro desde: 15/03/2011 22:47:25
Mensagens: 66
Offline

é outra, eu testei dividir apenas 25/100 que era pra dar 0,25 e deu 0.0
analyser
JavaEvangelist
[Avatar]

Membro desde: 26/02/2007 09:31:49
Mensagens: 329
Offline

Pq vc esta divivindo int neh, tenta assim "new Double(25) / new Double(100)", ai vai dar certo.

Analyser
Z
JavaGuru
[Avatar]

Membro desde: 05/08/2008 14:28:02
Mensagens: 227
Localização: Brasília
Offline

analyser wrote:Imagine que acm1 = 0

porc1 = ((0 * acmtodos) / 100);

porc1 sempre vai dar zero.


experimenta 100.0 (double)


----------------- Z -----------------
Senhor dai-me força para compilar o que pode ser compilado, paciência para debugar o que está bugado e sabedoria para encontrar um culpado.
Jadir
Debugger

Membro desde: 15/03/2011 22:47:25
Mensagens: 66
Offline

boa cara, com 100.0 funcionou
mas achei um pau nervoso isso! ¬¬

agradeço
analyser
JavaEvangelist
[Avatar]

Membro desde: 26/02/2007 09:31:49
Mensagens: 329
Offline

Não precise colocar o 100 como double.

double a = 25;
double b = a / 100;

System.out.println(b);
0.25

O que não pode é usar dois inteiros e esperar um double.


Analyser
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team