Olá! Vi que a maioria das pessoas fazem a operação lógica com os valores do problema. Gostaria de saber qual o impacto de declaras as variáveis com os valores e fazer as operações com essas variáveis, ou já fazer direto as operações lógicas dentro dos IFs. A validação que eu fiz foi assim:
public class TesteIR {
public static void main(String[] args) {
//De 1900.0 até 2800.0, o IR é de 7.5% e pode deduzir na declaração o valor de R$ 142
//De 2800.01 até 3751.0, o IR é de 15% e pode deduzir R$ 350
//De 3751.01 até 4664.00, o IR é de 22.5% e pode deduzir R$ 636
double salario = 2900.0;
double faixa1Minimo = 1900.00;
double faixa1Maximo = 2800.00;
String faixa1IR = "O IR é de 7.5% e pode deduzir na declaração o valor de R$ 142.";
double faixa2Minimo = 2800.01;
double faixa2Maximo = 3751.00;
String faixa2IR = "O IR é de 15% e pode deduzir R$ 350.";
double faixa3Minimo = 3751.01;
double faixa3Maximo = 4664.00;
String faixa3IR = "O IR é de 22.5% e pode deduzir R$ 636.";
if (salario >= faixa1Minimo && salario <= faixa1Maximo) {
System.out.println(faixa1IR);
} else {
if (salario >= faixa2Minimo && salario <= faixa2Maximo) {
System.out.println(faixa2IR);
} else {
if (salario >= faixa3Minimo && salario <= faixa3Maximo) {
System.out.println(faixa3IR);
}
}
}
}
}