quarta-feira, 3 de outubro de 2018

URI PROBLEMA 1051 - Imposto de Renda SOLUÇÃO EM JAVA

URI Online Judge | 1051

Imposto de Renda

Por Neilor Tonin, URI  Brasil
Timelimit: 1
Em um país imaginário denominado Lisarb, todos os habitantes ficam felizes em pagar seus impostos, pois sabem que nele não existem políticos corruptos e os recursos arrecadados são utilizados em benefício da população, sem qualquer desvio. A moeda deste país é o Rombus, cujo símbolo é o R$.
Leia um valor com duas casas decimais, equivalente ao salário de uma pessoa de Lisarb. Em seguida, calcule e mostre o valor que esta pessoa deve pagar de Imposto de Renda, segundo a tabela abaixo.
Lembre que, se o salário for R$ 3002.00, a taxa que incide é de 8% apenas sobre R$ 1000.00, pois a faixa de salário que fica de R$ 0.00 até R$ 2000.00 é isenta de Imposto de Renda. No exemplo fornecido (abaixo), a taxa é de 8% sobre R$ 1000.00 + 18% sobre R$ 2.00, o que resulta em R$ 80.36 no total. O valor deve ser impresso com duas casas decimais.

Entrada

A entrada contém apenas um valor de ponto flutuante, com duas casas decimais.

Saída

Imprima o texto "R$" seguido de um espaço e do valor total devido de Imposto de Renda, com duas casas após o ponto. Se o valor de entrada for menor ou igual a 2000, deverá ser impressa a mensagem "Isento".



import java.io.IOException;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) throws IOException {
        Scanner sc = new Scanner(System.in);
        float n, r, f1, f2, f3;
        n = sc.nextFloat();

        if (n <= 2000) {
            System.out.print("Isento\n");
        } else {
            if (n > 2000 && n <= 3000) {
                f1 = n - 2000;
                f1 = ((f1 * 8) / 100);
                r = f1;
            } else if (n > 3000 && n <= 4500) {
                f1 = n - 2000;
                f2 = f1 - 1000;
                f1 -= f2;
                f1 = ((f1 * 8) / 100);
                f2 = ((f2 * 18) / 100);
                r = f2 + f1;
            } else {
                f1 = n - 2000;
                f2 = f1 - 1000;
                f3 = f2 - 1500;
                f1 -= f2;
                f2 -= f3;
                f1 = ((f1 * 8) / 100);
                f2 = ((f2 * 18) / 100);
                f3 = ((f3 * 28) / 100);
                r = f3 + f2 + f1;
            }
            System.out.printf("R$ %.2f\n", r);
        }

    }

}

Nenhum comentário:

Postar um comentário

URI PROBLEMA 1133 - Resto da Divisão SOLUÇÃO EM C

URI Online Judge | 1133 Resto da Divisão Adaptado por Neilor Tonin, URI   Brasil Timelimit: 1 Escreva um programa que leia 2 valo...