Galera estou com uma baita DOR DE CABEÇA do !@!%$&!@%$&!@… HADUIOHASUIOHDIOASHI…Por não conseguir entender o porque desse erro maldito na minha classe. Não chega a ser um erro informado pelo compilador, é um erro no código acredito eu e em tempo de execução. Vou pedir que copiem e colem em suas IDE’S e vejam o que acontece:
Tudo esta ok, menos isso…
Quando eu seleciono para cadastrar um novo vendedor, ou seja, aperto s ou S , pela primeira vez ele me pede para informar o total de vendas, eu informo. Ok. POREM, ai que esta o maldito erro que não entendo. Quando eu insiro o total ele tem que perguntar novamente se eu quero cadastrar um novo vendedor, so que ele pergunta e logo depois diz que a reposta é inválida. Está ai o código para quem puder me ajudar.
// Exercício 7.10: Comissoes.java
import java.util.Scanner;
public class Comissoes
{
public static void main( String[] args )
{
Scanner input = new Scanner( System.in );
String resposta = "";
boolean continuar = true;
int[] contador = new int[ 11 ];
double vendas;
while( continuar )
{
while( resposta.equals( "S" ) || !resposta.equals( "N" ) )
{
System.out.print( "Cadastrar novo funcionario? [S/N]: " );
resposta = input.nextLine();
resposta = resposta.toUpperCase();
if( resposta.equals( "N" ) )
continuar = false;
else if( !resposta.equals( "S" ) )
System.out.println( "Resposta inválida !" );
if( resposta.equals( "S" ) )
{
System.out.print( "Total de vendas do funcionário: " );
vendas = 200 + ( 0.09 * input.nextDouble() ); // R$200 + %9 do total das vendas
if( vendas >= 200 && vendas < 300 )
++contador[2];
else if( vendas >= 300 & vendas < 400 )
++ contador[3];
else if( vendas >= 400 & vendas < 500 )
++ contador[4];
else if( vendas >= 500 & vendas < 600 )
++ contador[5];
else if( vendas >= 600 & vendas < 700 )
++ contador[6];
else if( vendas >= 700 & vendas < 800 )
++ contador[7];
else if( vendas >= 800 & vendas < 900 )
++ contador[8];
else if( vendas >= 900 & vendas < 10000 )
++ contador[9];
else if( vendas >= 10000 )
++ contador[10];
} // fim da condição caso resposta seja SIM
}
} // fim do loop continuar
for( int cont = 2; cont < contador.length; cont++ )
{
if( cont == 10 )
System.out.printf( "R$1.000 e acima: %d\n", contador[cont] );
else
System.out.printf( "R$%d-%d99: %7d\n", cont *100, cont, contador[cont] );
}
}
}