Help-me, problema em projeto java!
É o seguinte pessoal, estou desenvolvendo um projeto e me deparo com a seguinte situação: " 1 -Numa pista de 100 voltas, a cada 10 voltas o carro perde 5% de gasolina, aumenta uma marcha e aumenta em 15% a sua velocidade atual.
2 -A velocidade calculada não pode ser maior do que a velocidade estabelecida para o carro.
3 -A quantidade de marchas não pode ser maior do que a quantidade estabelecida para o carro."
Eu consegui fazer a 1 parte, estou tendo dificuldade na hora de informar que quando a variável for maior do que a que o usuário informou aparecer uma mensagem informando. Segue o exemplo:
if(velocidadeMax > velocidadeMax ) {
System.out.println("A velocidade calculada não pode ser maior do que a velocidade estabelecida para o carro!");
}else{
System.out.println("A velocidade ainda não atingiu o máximo estabelicido para o carro.");
}
if(quantidadeMarchas > quantidadeMarchas) {
System.out.println("A quantidade de marchas não pode ser maior do que a quantidade estabelecida para o carro!");
}else{
System.out.println("A quantidade de marchas ainda não atingiu o máximo estabelicido para o carro.");
}
}
Ele só está entrando no else.
Obs: Eu informei que o limite de marchas é 4, se eu der 50 voltas o carro estará na 5ª marcha, o programa cai no else.(Mesma coisa na velocidade)
Eu sabendo que o limite é 4 posso fazer: if(quantidadeMarchas > 4) {Executa o método}
ele funciona certinho. Como resolver esse problema?
2 -A velocidade calculada não pode ser maior do que a velocidade estabelecida para o carro.
3 -A quantidade de marchas não pode ser maior do que a quantidade estabelecida para o carro."
Eu consegui fazer a 1 parte, estou tendo dificuldade na hora de informar que quando a variável for maior do que a que o usuário informou aparecer uma mensagem informando. Segue o exemplo:
if(velocidadeMax > velocidadeMax ) {
System.out.println("A velocidade calculada não pode ser maior do que a velocidade estabelecida para o carro!");
}else{
System.out.println("A velocidade ainda não atingiu o máximo estabelicido para o carro.");
}
if(quantidadeMarchas > quantidadeMarchas) {
System.out.println("A quantidade de marchas não pode ser maior do que a quantidade estabelecida para o carro!");
}else{
System.out.println("A quantidade de marchas ainda não atingiu o máximo estabelicido para o carro.");
}
}
Ele só está entrando no else.
Obs: Eu informei que o limite de marchas é 4, se eu der 50 voltas o carro estará na 5ª marcha, o programa cai no else.(Mesma coisa na velocidade)
Eu sabendo que o limite é 4 posso fazer: if(quantidadeMarchas > 4) {Executa o método}
ele funciona certinho. Como resolver esse problema?
Wagner Vasconcelos
Curtidas 0
Respostas
Eduardo Pessoa
07/12/2014
Exercicio estilo de logica de programação.
GOSTEI 0
Ronaldo Lanhellas
07/12/2014
O errado na sua lógica é a comparação da mesma variável, por isso ele sempre cai no else, veja:
A condição acima nunca será verdade, pois quantidadeMarchas = quantidadeMarchas independente de qualquer fator. Você teria que fazer algo assim:
if(quantidadeMarchas > quantidadeMarchas) {
}elsE{
}
A condição acima nunca será verdade, pois quantidadeMarchas = quantidadeMarchas independente de qualquer fator. Você teria que fazer algo assim:
if(quantidadeMarchasAtual > quantidadeMarchasPermitida) {
}elsE{
}
GOSTEI 0