Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Valor iguais em IFs

Porque ele imprime o segundo IF sendo que tem o mesmo valo tanto no segundo quanto no terceiro IF?

Segundo (salario <= 3751.00) Terceiro(salario >= 3751.00)

Os 2 tem valor igual(=)... não deveria dar conflito?


    public static void main(String[] args) {

         double salario = 3751.00;
         int ir;

         if (salario >= 1900.00 && salario <= 2800.00){
             salario = salario - 142.00;
             System.out.println("IR é de 7.5% " + "Salário = " + salario);
         }
         if (salario >= 2800.00 && salario <= 3751.00){
             salario = salario - 350.00;
             System.out.println("IR é de 15% " + "Salário = " + salario);

         }
         if (salario >= 3751.00 && salario <= 4664.00){
             salario = salario - 636.00;
             System.out.println("IR é de 22.5% " + "Salário = " + salario);

         }
1 resposta
solução!

Cara, com esse código, ele checa separadamente cada IF. Se a condição do 2º for verdade, imprima "salário". E se a do 3º também for verdade, imprima "salário" também.

Ele talvez desse erro se o 3º IF fosse um Else do 2º.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software