punkyep 0 Denunciar post Postado Janeiro 14, 2015 com a seguinte function: private int pctval (int valor, int pct){ double pcte = pct / 100; return (int)((double)pcte * (int)valor); } independente do valor que eu chame a function, ela sempre retorna zero, já tentei usar double, e retornou: "0.0", já tentei outros métodos, mas não deu certo, meu objetivo e retornar o valor inteiro de um numero, de acordo com a porcentagem.. também tive o mesmo problema com esta function: private int pctAtual (int atual, int max){ return (atual / max) * 100; } mas consegui resolver trocando para: private int pctAtual (int atual, int max){ return (atual * 100) / max; } como posso resolver? Exemplo pctval(44,25); // Valor retornado: 11 Compartilhar este post Link para o post Compartilhar em outros sites
punkyep 0 Denunciar post Postado Janeiro 16, 2015 após um tempo testando varias possibilidades diferentes, consegui resolver o problema.. private int pctval (int valor, int pct){ float p1 = valor/100f; double value = p1 * pct; return (int)value; } obrigado a todos, e desculpem o incomodo =] Compartilhar este post Link para o post Compartilhar em outros sites