Analisei a questão de forma lógica. Foi apresentado um range. ou seja, uma janela de valores Sendo elas
valor minimo - 1.900,00 valor máxim - 4.664,00
*janela minima e máxima de forma macro.
o mesmo para os valores de deduções menor dedução - 142,00 maior dedução- 636,00
*janela minima e máxima de forma macro.
após isso, me perguntei acerca dos valores que não podem ser encontradas nessa janela. Então pensei em considerar os valores que não se encontram como "não haverá deduções"para valores abaixo de 1.900,00 e considerar a dedução de 869,00 para valores acima de 4.664,01. (essa dedução de 869,00 é ref. a alíquita de 27,5%)
Meu código, então, ficou assim.
package sintaxe_variaveis_e_fluxo;
public class TesteImpostoDeRenda {
public static void main(String[] args) {
double salario = 3300.0;
double menorDeducao = 142.0;
double mediaDeducao = 350.0;
double maiorDeducao = 636.0;
double deducaoMaxima = 869.0;
if (salario < 1900.0) {
System.out.println("Não haverá deduções");
}
if (salario >= 1900.0 && salario <= 2800.0) {
System.out.println("A dedução será de " + menorDeducao);
}
if(salario >= 2800.01 && salario <= 3751.0) {
System.out.println("A dedução será de " + mediaDeducao);
}
if(salario >= 3751.01 && salario <= 4664.00){
System.out.println("A dedução será de " + maiorDeducao);
}
if(salario > 4664.01) {
System.out.println("A dedução será de " + deducaoMaxima);
}
}
}
me ajudem e deixem feedback para melhorias!! :D