Algoritmos Essenciais: Idade, Consumo e Notas
Classificado em Computação
Escrito em em português com um tamanho de 5,38 KB
Este documento apresenta três exemplos de algoritmos em pseudocódigo, demonstrando a aplicação de estruturas de decisão e cálculo para resolver problemas práticos. Cada algoritmo é detalhado com sua finalidade e a lógica implementada, otimizando a compreensão e a aplicação dos conceitos de programação.
1. Algoritmo "ex35": Classificação de Nadadores por Idade
Este algoritmo classifica nadadores em diferentes categorias etárias, com base na idade informada pelo usuário. É um exemplo claro do uso da estrutura escolha-caso
para múltiplas condições, ideal para sistemas de registro esportivo ou clubes.
Categorias de Idade para Nadadores:
- Infantil A: 5 a 7 anos
- Infantil B: 8 a 10 anos
- Juvenil A: 11 a 13 anos
- Juvenil B: 14 a 17 anos
- Sênior: 18 a 25 anos
- Outras Idades: "Idade fora da faixa etária"
Pseudocódigo do Algoritmo "ex35":
algoritmo "ex35"
var
idade: inteiro
inicio
escreva("Digite a idade do nadador: ")
leia(idade)
escolha idade
caso 5, 6, 7
escreval("Infantil A")
caso 8, 9, 10
escreval("Infantil B")
caso 11, 12, 13
escreval("Juvenil A")
caso 14, 15, 16, 17
escreval("Juvenil B")
caso 18, 19, 20, 21, 22, 23, 24, 25
escreval("Sênior")
outrocaso
escreval("Idade fora da faixa etária")
fimescolha
fimalgoritmo
2. Algoritmo "ex36": Cálculo de Consumo de Energia Elétrica
O algoritmo "ex36" calcula o valor da conta de energia elétrica com base no tipo de residência e na quantidade de quilowatts (KW) consumidos. Ele ilustra como diferentes tarifas podem ser aplicadas dependendo de uma condição específica, sendo útil para simulações de custos ou sistemas de faturamento.
Tipos de Residência e Tarifas por KW:
- 1 - Residência: R$ 0,60 por KW
- 2 - Comércio: R$ 0,48 por KW
- 3 - Indústria: R$ 1,29 por KW
Pseudocódigo do Algoritmo "ex36":
algoritmo "ex36"
var
residencia, kw: inteiro
consumo: real
inicio
escreval("Informe o tipo de residência:")
escreval("1 - Residência")
escreval("2 - Comércio")
escreval("3 - Indústria")
leia(residencia)
escolha residencia
caso 1
escreva("Informe a quantidade de KW gastos no mês: ")
leia(kw)
consumo <- kw * 0.60
escreval("Valor da conta: ", consumo)
caso 2
escreva("Informe a quantidade de KW gastos no mês: ")
leia(kw)
consumo <- kw * 0.48
escreval("Valor da conta: ", consumo)
caso 3
escreva("Informe a quantidade de KW gastos no mês: ")
leia(kw)
consumo <- kw * 1.29
escreval("Valor da conta: ", consumo)
outrocaso
escreval("Tipo de residência inválido!")
fimescolha
fimalgoritmo
3. Algoritmo "ex38": Classificação de Notas de Alunos
Este algoritmo calcula a média ponderada de um aluno com base em três notas (trabalho de laboratório, avaliação semestral e exame final) e atribui uma classificação (A, B, C, D, R). Demonstra o uso de múltiplas estruturas se-senao
aninhadas para definir faixas de classificação, sendo fundamental para sistemas de gestão acadêmica.
Pesos das Notas para Cálculo da Média Ponderada:
- Trabalho de Laboratório: Peso 2
- Avaliação Semestral: Peso 3
- Exame Final: Peso 5
Critérios de Classificação Final:
- A: Média igual ou superior a 8.10
- B: Média igual ou superior a 7.8 (e menor que 8.10)
- C: Média igual ou superior a 6.7 (e menor que 7.8)
- D: Média igual ou superior a 5.6 (e menor que 6.7)
- R: Média inferior a 5.6 (Reprovado)
Pseudocódigo do Algoritmo "ex38":
algoritmo "ex38"
var
nota1, nota2, nota3: real
media: real
nome, classificacao: caractere
matricula: inteiro
inicio
escreva("Digite o nome: ")
leia(nome)
escreva("Informe a matrícula: ")
leia(matricula)
escreva("Digite a nota do trabalho de laboratório: ")
leia(nota1)
escreva("Digite a nota da avaliação semestral: ")
leia(nota2)
escreva("Digite a nota do exame final: ")
leia(nota3)
media <- ((nota1 * 2) + (nota2 * 3) + (nota3 * 5)) / 10
se media >= 8.10 entao
classificacao <- "A"
senao
se media >= 7.8 entao
classificacao <- "B"
senao
se media >= 6.7 entao
classificacao <- "C"
senao
se media >= 5.6 entao
classificacao <- "D"
senao
classificacao <- "R"
fimse
fimse
fimse
fimse
limpatela
escreval("Nome: ", nome)
escreval("Matrícula: ", matricula)
escreval("Nota final: ", media)
escreval("Classificação: ", classificacao)
fimalgoritmo