Dúvida com o printf

4 respostas
paloma

Oi pessoal estou com uma dúvida no código abaixo, ñ estou conseguindo exibir as saídas do printf, alguém pode me dar uma ajuda :?:

package cap4.exe17;

import java.util.Scanner;

public class ConsumoTanque {
	
	public void calculoConsumo(){
	
	int km;
	int litrosComb;
	float totalConsumo = 0;
	float totalLitros = 0;
	
	Scanner input = new Scanner (System.in);
	
	
		System.out.print ( "Entre com o km do veículo: " );
		km = input.nextInt();
	
		System.out.print ( "Entre com o consumo de gasolina: ");
		litrosComb = input.nextInt();
	
	while (km != -1 || litrosComb != -1){
		totalConsumo = (float)km / litrosComb; 
		totalLitros += litrosComb;
	}
	
		System.out.printf( "\nTotal Consumo: %.3f",totalConsumo );
		System.out.printf( "\nTotal Litros: %.3f",totalLitros );

	}
}
Essa é a classe teste, o programa roda, mas, ñ exibe !
package cap4.exe17;

public class ConsumoTanqueTest {
	
	public static void main (String [] args){
		
		ConsumoTanque consumoTanque = new ConsumoTanque ();
		
		consumoTanque.calculoConsumo();
		
		System.exit (0);
	}

}

4 Respostas

peczenyj

vai ver seu programa fica preso aqui:

while (km != -1 || litrosComb != -1){ totalConsumo = (float)km / litrosComb; totalLitros += litrosComb; }

como km e litrosComb não mudam de valor dentro do laço while, ele vai executar isso infinitamente.

LPJava

vc ta usando o java 1.5? o printf segundo deitel eh um recurso da nova versao!!

peczenyj
tenta agora
public void calculoConsumo(){
 	
 	int km;
 	int litrosComb;
 	float totalConsumo = 0;
 	float totalLitros = 0;
 	
	Scanner input = new Scanner (System.in); 	

 	do {
			System.out.print ( "Entre com o km do veículo: " );
			km = input.nextInt();
 	
 			System.out.print ( "Entre com o consumo de gasolina: ");
	 		litrosComb = input.nextInt();	
 	
 			totalConsumo = (float)km / litrosComb; 
 			totalLitros += litrosComb;

	 		System.out.printf( "\nTotal Consumo: %.3f",totalConsumo );
 			System.out.printf( "\nTotal Litros: %.3f",totalLitros );

 		}while (km != -1 && litrosComb != -1);
 
 	}
paloma

Obrigada, agora sim tá certinho :smiley:

Criado 4 de novembro de 2006
Ultima resposta 5 de nov. de 2006
Respostas 4
Participantes 3