Ir para conteúdo
  • 0

[Resolvido] [Ajuda] Calculo Java


LuizB

Pergunta

Porque quando eu divido as Kills E Deaths Do player e ambas for igual a 0 

o Score n aparece ?

 

int kills = Kd.getKills(p);
int Deaths = Kd.getDeaths(p);

Score galocego = obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f" + kills / Deaths));

galocego.setScore(7);

Agora quando ambas são igual a 1 ou mais aparece perfeitamente

Link para o comentário
Compartilhar em outros sites

26 respostass a esta questão

Posts Recomendados

Manda uma print do score

@Edit

Esqueci de ler a última frase '-'

Bom essa é uma regra básica da matemática cara você não pode dividir um número por zero então é só fazer uma checagem:

 

Score kdrScore = null;

if (kills > 0 && deaths > 0) 
kdrScore =obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f" + kills / Deaths));
else kdrScore =obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f0"));



Editado por Gabriel__
Link para o comentário
Compartilhar em outros sites

Faça em porcentagem '-'

 

ex:

 

double kills = 34;

double deaths = 3;

 

double res = (kills/(kills+deaths))*100;

 

res = 91%

fica mais bonitinho '-'

Como assim vc deu 2 valores pra res ;-;

Acho que isso não funciona. Um número divido por 0, não é zero.

 

Eu faria assim:

if (deaths == 0) {

//Código para setar zero na score

}

e Como asssim Codigo pra setar 0 ?

Link para o comentário
Compartilhar em outros sites

 

Manda uma print do score

 

@Edit

 

Esqueci de ler a última frase '-'

 

Bom essa é uma regra básica da matemática cara você não pode dividir um número por zero então é só fazer uma checagem:

 

 

Score kdrScore = null;

if (kills > 0 && deaths > 0) 
kdrScore =obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f" + kills / Deaths));
else kdrScore =obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f0"));



Vo tentar xD

Link para o comentário
Compartilhar em outros sites

 

Manda uma print do score

 

@Edit

 

Esqueci de ler a última frase '-'

 

Bom essa é uma regra básica da matemática cara você não pode dividir um número por zero então é só fazer uma checagem:

 

 

Score kdrScore = null;

if (kills > 0 && deaths > 0) 
kdrScore =obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f" + kills / Deaths));
else kdrScore =obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f0"));



No galocego.setScore(4);

 

Pege pra criar a variavel galocego sendo que ela existe no

 

 

if (kills > 0 && Deaths > 0) {
				Score galocego = obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f" + kills / Deaths));
			}

kdrScore =obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f0"));

ahhh ta

Link para o comentário
Compartilhar em outros sites

No galocego.setScore(4);

 

Pege pra criar a variavel galocego sendo que ela existe no

 

 

if (kills > 0 && Deaths > 0) {
				Score galocego = obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f" + kills / Deaths));
			}

ahhh ta

é só você mudar o nome da variável

Link para o comentário
Compartilhar em outros sites

 

Assim:

 

 

 

Score novogalocego = null;

if (kills > 0 && deaths > 0){
 novogalocego = obj.getScore...;

}

// Continua como estava

Precisa Colocar static ?

 

aqui pediu e quando eu coloquei 

 

pediu pra remover O

 

 

Score novogalocego = obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f" + kills / Deaths));
Link para o comentário
Compartilhar em outros sites

mano, faz só isso

 

if(deaths == 0) deaths++;

if(kills == 0) kills++;

 

e use seu antigo código, pronto.

Bananinha me fala pra que serve esse ++

 

è pra acrescentar algo né ?

Link para o comentário
Compartilhar em outros sites

Porque quando eu divido as Kills E Deaths Do player e ambas for igual a 0 

 

o Score n aparece ?

 

 

int kills = Kd.getKills(p);
int Deaths = Kd.getDeaths(p);

Score galocego = obj.getScore(Bukkit.getOfflinePlayer("§4Kdr:" + " §f" + kills / Deaths));

galocego.setScore(7);

Agora quando ambas são igual a 1 ou mais aparece perfeitamente

 

int kills = Kd.getKills(p); (criou uma varíavel local)

int Deaths = Kd.getDeaths(p); (criou uma varíavel local)

 

if(kills==0) kills++;

if(Deaths==) Deaths++;

 

agora só fazer os cálculos.

 

o ++ adiciona 1 ao valor em questão. Como é uma variável local, quando o jogador matar outro por exemplo, esse 1 não vai contar mais, o mesmo para se morrer...

 

(o não vai pois é uma variável local é uma resposta ao outro usuário)

Editado por BananaDePijama
Link para o comentário
Compartilhar em outros sites

int kills = Kd.getKills(p); (criou uma varíavel local)

int Deaths = Kd.getDeaths(p); (criou uma varíavel local)

 

if(kills==0) kills++;

if(Deaths==) Deaths++;

 

agora só fazer os cálculos.

 

o ++ adiciona 1 ao valor em questão. Como é uma variável local, quando o jogador matar outro por exemplo, esse 1 não vai contar mais, o mesmo para se morrer...

 

(o não vai pois é uma variável local é uma resposta ao outro usuário)

Obrigado Pela Explicação 

 

 

Like

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...