Fazer um algoritmo que calcule e mostre o imposto de renda de um grupo de 10 contribuintes, considerando:
1 os dados de cada contribuinte (número de CPF, número de dependentes e renda anual) devem ser lidos externamente;
2 para cada contribuinte será feito um desconto de \mathrm{R} \ 6.000,00$ por cada dependente;
3 os valores da alíquota para cálculo do imposto são:
Renda bruta
Alíquota
até \mathrm{R} \ 900,00$
de \mathrm{R} \ 900,01 atéé\mathrm{R} $1.800,00$
acima de \mathrm{R} \ 1.800,00$
isento
15%
25%

Passo 1

O que o problema pede (resumindo com todas as informações que foram dadas):
  • Calcular e mostrar o imposto de renda para um grupo de 10 contribuintes.
  • Para cada contribuinte os dados lidos externamente são:
    • número do CPF;
    • número de dependentes;
    • renda anual.
  • Para cada dependente deve-se aplicar um desconto de 6000 (ou seja, desconto por dependente =6000 em mesmas unidades da renda).
  • As alíquotas (aplicadas sobre a renda após desconto) são:
    • renda até 900: isento (imposto =0);
    • renda de 900{,}01 até 1800: alíquota 15\% (ou seja 0{,}15 em forma decimal);
    • renda acima de 1800: alíquota 25\% (ou seja 0{,}25 em forma decimal).
  • O enunciado pede um algoritmo que leia os dados dos 10 contribuintes, calcule o imposto de cada um e mostre o resultado (presume-se mostrar pelo menos o CPF e o valor do imposto).

Passo 2

Definição de variáveis e fórmulas (explicação didática do que cada variável significa):
  • cpf: texto contendo o número do contribuinte (usado apenas para identificação).
  • dependentes: número inteiro de dependentes informados pelo contribuinte.
  • renda: renda anual lida para o contribuinte (mesma unidade usada nas faixas de imposto).
  • desconto: total de desconto por dependentes. Fórmula: desconto = dependentes \times 6000.Explicação: cada dependente reduz a base de cálculo em 6000; multiplicamos porque o desconto é proporcional ao número de dependentes.
  • renda\_tributavel: base de cálculo do imposto, ou seja a renda já com o desconto aplicado. Fórmula: renda\_tributavel = renda - desconto.Observação importante: se renda\_tributavel ficar negativa (quando o desconto for maior que a renda), devemos tratar a base tributável como 0, porque não existe imposto sobre valor negativo. Assim: \text{se } renda\_tributavel < 0 \text{ então } renda\_tributavel := 0.ã
  • imposto: valor do imposto a pagar, calculado por aplicação da alíquota sobre renda\_tributavel. Regra por faixas: \text{se } renda\_tributavel \le 900 \quad\Rightarrow\quad imposto = 0,
\text{senão se } renda\_tributavel \le 1800 \quad\Rightarrow\quad imposto = 0{,}15 \times renda\_tributavel,ã
\text{senão} \quad\Rightarrow\quad imposto = 0{,}25 \times renda\_tributavel.ã
Explicação de porcentagem: alíquota 15\% significa que o imposto é 15 partes de 100 da base; em cálculo multiplicamos por 0{,}15. O mesmo raciocínio para 25\% com multiplicador 0{,}25.

Passo 3

Fluxo do algoritmo (descrito passo a passo, como executar na prática):
  1. Inicializar um contador i para percorrer os 10 contribuintes: i = 1 até i = 10.
  2. Para cada i:
    • Ler externamente cpf (string), dependentes (inteiro) e renda (número; pode ser inteiro ou real).
    • Validar valores: garantir que dependentes \ge 0 e renda \ge 0. Se algum inválido, avisar e pedir reentrada (ou tratar conforme regra do ambiente).
    • Calcular desconto = dependentes \times 6000.
    • Calcular renda\_tributavel = renda - desconto.
    • Se renda\_tributavel < 0 então definir renda\_tributavel := 0.
    • Aplicar as faixas:
      • se renda\_tributavel \le 900 então imposto := 0;
      • senão se renda\_tributavel \le 1800 então imposto := 0{,}15 \times renda\_tributavel;
      • senão imposto := 0{,}25 \times renda\_tributavel.
    • Arredondar imposto para duas casas decimais (opcional, mas prático para exibição).
    • Mostrar (exibir) o resultado na tela: pelo menos cpf e imposto. Por exemplo: “CPF: XXXXXX, Imposto: R$ YYY,YY”.
  3. Repetir até processar os 10 contribuintes.
  4. Opcional: ao final, mostrar um resumo (por exemplo total de impostos cobrados ou quantos isentos). Isso não foi exigido, mas pode ser útil.

Passo 4

Exemplo numérico detalhado (para que você entenda passo a passo como fazer a conta na prova):
  • Suponha um contribuinte com cpf = “12345678900”, dependentes = 2, renda = 30000.
  • Calculamos: desconto = dependentes \times 6000 = 2 \times 6000 = 12000.
renda\_tributavel = renda - desconto = 30000 - 12000 = 18000.
Como renda\_tributavel = 18000 > 1800, aplica-se alíquota 25\%:
imposto = 0{,}25 \times 18000 = 4500.
Logo, para este exemplo o imposto a pagar é 4500. Mostraria-se algo como: “CPF 12345678900 — Imposto a pagar: R$ 4500,00”.
  • Observação: todos os passos de multiplicação e subtração foram feitos em inteiros; se a renda preocupar casas decimais, faça os cálculos em números reais e arredonde o resultado final.

Passo 5

Casos especiais e boas práticas para a prova (o que verificar e o que pode dar errado):
  • Se o enunciado usar “renda anual” e as faixas parecerem mensais, confie no enunciado (regra do enunciado bem formulado). Em prova, use as unidades dadas; se todas as entradas estiverem em reais/ano e as faixas em reais, compare diretamente.
  • Sempre garantir que o desconto por dependente use a mesma unidade da renda. Se alguém inserir renda em centavos, padronize antes.
  • Tratar entradas inválidas (dependentes negativos, renda negativa, CPF vazio): em prova, comente no enunciado que o algoritmo valida e pede reentrada ou pula registro e registra erro.
  • Arredondamento: normalmente mostrar imposto com duas casas decimais. Em pseudocódigo, pode usar uma função round(imposto,2).

Passo 6

Implementação exemplo (pseudocódigo comentado na forma compacta). Este será o algoritmo final que você pode copiar/colar na prova (ou adaptar para a linguagem que preferir). As variáveis numéricas e constantes estão indicadas explicitamente.

Resposta

Algoritmo:
\text{Para } i \leftarrow 1 \text{ até } 10 \; \text{faça}éç
\quad \text{Ler } cpf,\; dependentes,\; renda
\quad \text{Se } dependentes < 0 \text{ ou } renda < 0 \text{ então}ã
\quad\quad \text{mostrar "Entrada inválida" e pedir reentrada (ou pular)}á
\quad \text{FimSe}
\quad desconto \leftarrow dependentes \times 6000
\quad renda\_tributavel \leftarrow renda - desconto
\quad \text{Se } renda\_tributavel < 0 \text{ então } renda\_tributavel \leftarrow 0ã
\quad \text{Se } renda\_tributavel \le 900 \text{ então}ã
\quad\quad imposto \leftarrow 0
\quad \text{Senão se } renda\_tributavel \le 1800 \text{ então}ãã
\quad\quad imposto \leftarrow 0{,}15 \times renda\_tributavel
\quad \text{Senão}ã
\quad\quad imposto \leftarrow 0{,}25 \times renda\_tributavel
\quad \text{FimSe}
\quad imposto \leftarrow \text{round}(imposto,2)
\quad \text{Mostrar "CPF: "},cpf,\; \text{", Imposto: R\$ "},imposto
\text{FimPara}

Exercícios relacionados