Advertisement
LightProgrammer000

Imposto de renda

Feb 20th, 2020
576
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.36 KB | None | 0 0
  1. package Tarefas_1;
  2.  
  3. // Bibliotecas
  4. import java.text.DecimalFormat;
  5. import java.util.Scanner;
  6.  
  7. public class EX_04
  8. {
  9.     public static void main(String[] args)
  10.     {
  11.         System.out.println("# Programa EX_04");
  12.  
  13.         try
  14.         {
  15.             // Variaveis
  16.             double salario;
  17.             double sal_liq;
  18.             double soma_sal = 0;
  19.             double tot_imposto = 0;
  20.  
  21.             // Instanciacao
  22.             Scanner ent = new Scanner(System.in);
  23.             DecimalFormat df = new DecimalFormat("R$ ,##0.00");
  24.  
  25.             // Estrutura de repeticao
  26.             for( int i = 1; i <= 58; i++)
  27.             {
  28.                 // Entrada de dados
  29.                 System.out.printf("\n# Digite salario [%d]: ", i);
  30.                 salario = ent.nextDouble();
  31.  
  32.                 while (salario < 0)
  33.                 {
  34.                     System.out.printf("\n# Digite salario [%d]: ", i);
  35.                     salario = ent.nextDouble();                                        
  36.                 }
  37.  
  38.                 // Imposto de renda
  39.                 tot_imposto = imp_renda(salario, tot_imposto);
  40.  
  41.                 // Folha de pagamento
  42.                 soma_sal = val_tot_pag(soma_sal, salario);
  43.  
  44.                 // Salario liquido (Desconto no INSS)
  45.                 sal_liq = desc_inss(salario);
  46.                 System.out.print("Salario liquido do funcionario [" + i + "]: " + df.format(sal_liq) + "\n");
  47.             }
  48.  
  49.             // Apresentacao
  50.             System.out.println("\n# Valor total do imposto de renda: " + df.format(tot_imposto));
  51.             System.out.println("# Valor total da folha de pagamento: " + df.format(soma_sal));
  52.         }
  53.  
  54.         catch(Exception e)
  55.         {
  56.             //System.err.println(e);
  57.         }
  58.     }
  59.  
  60.     // Funcao: Imposto de renda
  61.     private static double imp_renda(double salario, double tot_imposto)
  62.     {
  63.         double imp_ren = 0;
  64.        
  65.         if (salario <= 1903.98)
  66.         {
  67.             imp_ren = salario * (0/100);
  68.         }
  69.        
  70.         else if (salario <= 2826.65)
  71.         {
  72.             imp_ren = salario * (7.5/100);
  73.         }
  74.  
  75.         else if ( salario <= 3751.05)
  76.         {
  77.             imp_ren = salario * (15.0/100);
  78.         }
  79.        
  80.         else if (salario <= 4664.68)
  81.         {
  82.             imp_ren = salario * (22.5/100);
  83.         }
  84.  
  85.         if (salario > 4664.68)
  86.         {
  87.             imp_ren = salario * (27.5/100);
  88.         }
  89.        
  90.         tot_imposto += imp_ren;
  91.        
  92.         return tot_imposto;
  93.     }
  94.  
  95.     // Funcao: Valor da folha de pagamento
  96.     private static double val_tot_pag(double soma_sal, double salario)
  97.     {
  98.         soma_sal += salario;
  99.        
  100.         return soma_sal;
  101.     }
  102.  
  103.     // Funcao: Salario bruto descontando o inss
  104.     private static double desc_inss(double salario)
  105.     {
  106.         double plano_saude;
  107.         double desc = 0;
  108.         double novo_sal;
  109.        
  110.         if (salario <= 1693.72)
  111.         {
  112.             desc = salario * (8/100);
  113.         }
  114.        
  115.         else if (salario <= 2822.90)
  116.         {
  117.             desc = salario * (9/100);
  118.         }
  119.        
  120.         else if (salario > 2822.90)
  121.         {
  122.             desc = salario * (11/100);
  123.         }
  124.  
  125.         plano_saude = salario * (4.5/100);
  126.         novo_sal = salario - (desc + plano_saude);
  127.        
  128.         return novo_sal;
  129.     }
  130. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement