2
respostas

Minha resolução

Antes eu havia feito sem os "else if { }", mas percorrendo pelo fórum vi que é uma boa prática parar a execução se encontrado algum if = true no caminho. Muito bom!

public class ProgramaIR {

    public static void main(String[] args) {

        double salario = 4800.00;

        if (salario <= 1903.98) {
            System.out.println("Você não precisa deduzir o IR!");
        }

        if (salario >= 1903.99 && salario <= 2826.65) {
            System.out.println("Alíquota de 7.7% deve ser aplicada.");
            System.out.println("Você pode deduzir R$142,80.");

        } else if (salario >= 2826.66 && salario <= 3751.05) {
            System.out.println("Alíquota de 15% deve ser aplicada.");
            System.out.println("Você pode deduzir R$354,80.");

        } else if (salario >= 3751.06 && salario <= 4664.68) {
            System.out.println("Alíquota de 22,5% deve ser aplicada.");
            System.out.println("Você pode deduzir R$636,13.");

        } else if (salario > 4664.68) {
            System.out.println("Alíquota de 27,5% deve ser aplicada.");
            System.out.println("Você pode deduzir R$869,36.");
        }
    }

}
2 respostas

Muito bom, thiago.

Eu só deixaria o segundo if como um "else if" também e no último else if deixaria apenas "else":

public static void main(String[] args) {

    double salario = 4800.00;

    if (salario <= 1903.98) {
        System.out.println("Você não precisa deduzir o IR!");
    } else if (salario >= 1903.99 && salario <= 2826.65) {
        System.out.println("Alíquota de 7.7% deve ser aplicada.");
        System.out.println("Você pode deduzir R$142,80.");

    } else if (salario >= 2826.66 && salario <= 3751.05) {
        System.out.println("Alíquota de 15% deve ser aplicada.");
        System.out.println("Você pode deduzir R$354,80.");

    } else if (salario >= 3751.06 && salario <= 4664.68) {
        System.out.println("Alíquota de 22,5% deve ser aplicada.");
        System.out.println("Você pode deduzir R$636,13.");

    } else {
        System.out.println("Alíquota de 27,5% deve ser aplicada.");
        System.out.println("Você pode deduzir R$869,36.");
    }
}

Realmente, não me atentei a isso. Muito obrigado Otávio!