Este post faz parte da série Introdução a algoritmos
Oi pessoal. Hoje sigo com a resolução dos exercícios da série de Introdução a Algoritmos
Artigo Comando de Controle While
Exercícios IF
Algoritmo "exercicio_1"
// Uma empresa decidiu dar uma gratificação de Natal a seus funcionários, baseada no número de horas extras e no número de horas que
// o funcionário faltou ao trabalho. O valor do prêmio é obtido pela consulta à tabela que se segue
Var
nome : caractere
salarioMinimo, salarioFinal, horasExtras, horasFaltas, premio, horas : real
Inicio
escreval("Digite o valor do salário mínimo: ")
leia(salarioMinimo)
escreval("Digite o nome do funcionário: ")
leia(nome)
escreval("Digite o total de horas extras: ")
leia(horasExtras)
escreval("Digite o total de horas que o funcionário faltou: ")
leia(horasFaltas)
horas <- horasExtras - ((2/3) * horasFaltas)
se (horas < 600 ) entao
premio <- 100.00
senao(horas <= 1200) entao
premio <- 200.00
senao(horas <= 1800) entao
premio <- 300.00
senao(horas <= 2400) entao
premio <- 400.00
senao
premio <- 500.00
fimse
salarioFinal <- salarioMinimo + premio
escreval("Horas Extras: ", horasExtras)
escreval("Horas não trabalhadas: ", horasFaltas)
escreval("Horas trabalhadas: ", horas)
escreval("Valor do premio: ", premio)
escreval("O salário final é: ", salarioFinal)
Fimalgoritmo
Algoritmo "exercicio_2"
// Faça um programa que receba a idade e o peso de uma pessoa. De acordo com a tabela a seguir, verifique e mostre em qual grupo de
// risco essa pessoa se encaixa.
Var
idade, risco : inteiro
peso : real
Inicio
escreval("Digite o peso: ")
leia(peso)
escreval("Digite a idade: ")
leia(idade)
se (idade<20) entao
se (peso<60) entao
risco <- 9
senao
se (peso<=90) entao
risco <- 8
senao
risco <- 7
fimse
fimse
senao
se (idade<=50) entao
se (peso<60) entao
risco <- 6
senao
se (peso<=90) entao
risco <- 5
senao
risco <- 4
fimse
fimse
senao
se (peso<60) entao
risco <- 3
senao
se (peso<=90) entao
risco <- 2
senao
risco <- 1
fimse
fimse
fimse
escreval("Idade: ", idade)
escreval("Peso: ", peso)
escreval("Grupo de risco: ", risco)
Fimalgoritmo
Algoritmo "exercicio_3"
// Faça um programa que receba a idade de um nadador e mostre sua categoria, usando as regras a seguir. Para idade inferior a 5,
// deverá mostrar mensagem.
Var
idade : inteiro
categoria : caractere
Inicio
escreval("Digite a idade: ")
leia(idade)
se (idade<5) entao
categoria <- "nenhuma"
senao
se (idade<=7) entao
categoria <- "infantil"
senao
se (idade<=10) entao
categoria <- "juvenil"
senao
se (idade<=15) entao
categoria <- "adolescente"
senao
se (idade<=30) entao
categoria <- "adulto"
senao
se (idade>30) entao
categoria <- "sênior"
fimse
fimse
fimse
fimse
fimse
fimse
escreval("Idade: ", idade)
escreval("Categoria: ", categoria)
Fimalgoritmo
Algoritmo "exercicio_4"
// Faça um programa que receba o salário bruto de um funcionário e, usando a tabela a seguir, calcule e mostre o valor a receber.
// Sabe-se que este é composto pelo salário bruto acrescido de gratificação e descontado o imposto de 7% sobre o salário.
Var
salarioBruto, salarioFinal, gratificacao, salarioComDesconto, desconto: real
Inicio
escreval("Digite o salario bruto: ")
leia(salarioBruto)
se (salarioBruto <= 350) entao
gratificacao <- (salarioBruto + 100)
senao
se (salarioBruto<=600) entao
gratificacao <- (salarioBruto + 75)
senao
se (salarioBruto<=900) entao
gratificacao <- (salarioBruto + 50)
senao
gratificacao <- (salarioBruto + 35)
fimse
fimse
fimse
desconto <- (salarioBruto * 0.7)
salarioComDesconto <- (salarioBruto - desconto)
salarioFinal <- (salarioComDesconto + gratificacao)
escreval("Salario Bruto: ", salarioBruto)
escreval("Desconto: ", desconto)
escreval("Gratificação: ", gratificacao)
escreval("Salario Final: ", salarioFinal)
Fimalgoritmo
Exercícios While
Algoritmo "exercicio_while_1"
// Uma empresa possui dez funcionários com as seguintes características: código, número de horas trabalhadas no mês, turno de trabalho // (M – matutino; V – vespertino; N – noturno), categoria (O – operário; ou G – gerente), valor da hora trabalhada. Sabendo-se que
// essa empresa deseja informatizar sua folha de pagamento, faça um programa que: a) Leia as informações dos funcionários, exceto o
// valor da hora trabalhada, não permitindo que sejam informações dos turnos e nem categorias inexistentes. Trabalhe sempre com a
// digitação de letras maiúsculas; b) Calcule o valor da hora trabalhada, conforme a tabela 1. Adote o valor de R$450,00 para o
// salário mínimo; c) Calcule o salário inicial dos funcionários com base no valor da hora trabalhada e no número de horas
// trabalhadas; d) Calcule o valor do auxílio alimentação recebido pelo funcionário de acordo com seu salário inicial, conforme a
// tabela 2; e) Mostre o código, número de horas trabalhadas, valor da hora trabalhada, salário inicial, auxílio alimentação e salário
// final (salário inicial + auxílio alimentação).
Var
codigo : inteiro
turno, categoria : caractere
valorHoraTrabalhada, horasTrabalhadas, salarioMinimo : real
nome : caractere
Inicio
i = 1
enquanto(i<=10) faça
escreva("Digite o nome do funcionário ")
leia(nome)
escreva("digite as horas trabalhadas ")
leia(horasTrabalhadas)
escreva("digite o valor das horas trabalhadas ")
leia(valorHoraTrabalhada)
escreva("digite o valor do salário mínimo ")
leia(salarioMinimo)
escreva("digite o turno de trabalho: M – matutino; V – vespertino; N – noturno ")
leia(turno)
escreva("digite a categoria: O – operário; ou G – gerente ")
leia(categoria)
se (categoria == "G") entao
se (turno == "N")) entao
horaTrabalhada <- salarioMinimo * 0.18
senao
horaTrabalhada <- (salarioMinimo * 0.15)
fimse
senao (categoria == "O")
se (turno == "N") entao
horaTrabalhada <- (salarioMinimo * 0.13)
senao
horaTrabalhada <- (salarioMinimo * 0.10)
fimse
fimse
se(salarioMinimo <= 300) entao
auxilio <- (salarioMinimo * 0.20)
senao (salarioMinimo <= 600) entao
auxilio <- (salarioMinimo * 0.15)
senao (salarioMinimo > 600) entao
auxilio <- (salarioMinimo * 0.5)
fimse
salarioFinal = salario + auxilio
escreva("Nome: ", nome)
escreva("Categoria: ", categoria)
escreva("Horas Trabalhadas: ", horasTrabalhadas)
escreva("Valor por hora: ", valorHoraTrabalhada)
escreva("Valor do auxilio alimentacao: ", auxilio)
escreva("Salário ", salarioFinal)
i = i + 1
fimenquanto
Fimalgoritmo
Algoritmo "exercicio_2"
// Faça um programa que leia o número de termos, determine e mostre os
// valores de acordo com a série a seguir: SÉRIE = 2, 7, 3, 4, 21, 12,
// 8, 63, 48, 16, 189, 192, 32, 567, 768, …
Var
I, NUM_TERMOS, NUM1, NUM2, NUM3 : inteiro
Inicio
escreval("Digite o número de termos: ")
leia(num_termos)
num1 <- 2
num2 <- 7
num3 <- 3
i <- 4
enquanto(i<>num_termos)faça
num1 <- (num1*2)
escreval(num1)
i <- (i+1)
se (i<>num_termos) entao
num2 <- (num2*3)
escreval(num2)
i <- (i + 1)
se (i<>num_termos) entao
num3 <- (num3*4)
escreval(num3)
i <- (i + 1)
fimse
fimse
fimenquanto
Fimalgoritmo
Algoritmo "exericio_3"
// Faça um programa que receba o salário de um funcionário chamado Carlos. Sabe-se que outro funcionário, João, tem salário
// equivalente a um terço do salário de Carlos. Carlos aplicará seu salário integralmente na caderneta de poupança, que rende 2% ao
// mês, e João aplicará seu salário integralmente no fundo de renda fixa, que rende 5% ao mês. O programa deverá calcular e mostrar a
// quantidade de meses necessários para que o valor pertencente a João iguale ou ultrapasse o valor pertencente a Carlos
Var
salarioCarlos, salarioJoao : real
meses : inteiro
Inicio
escreval("Digite o valor do salário do Carlos: ")
leia(salarioCarlos)
salarioJoao <- (salarioCarlos/3)
meses <- 0
enquanto (salarioJoao < salarioCarlos) faça
salarioCarlos <- salarioCarlos + (salarioCarlos * 2 / 100)
salarioJoao < - salarioJoao + (salarioJoao * 5 / 100)
meses <- meses + 1
fimenquanto
escreval(meses)
Fimalgoritmo
Algoritmo "exercicio_4"
// Faça um programa que leia um conjunto não determinado de valores e
// mostre o valor lido, seu quadrado, seu cubo e sua raiz quadrada.
// Finalize a entrada de dados com um valor negativo ou zero.
Var
num: inteiro
quadrado, cubo, raizQuadrada : real
Inicio
escreval("Digite o número de iterações que deseja: ")
leia(num)
enquanto(num>0)faça
quadrado <- numero * numero
escreval(quadrado)
cubo <- exp (numero, 3)
escreval(numero)
escreval(RaizQ(numero)
escreval("Digite o número de iterações que deseja ou zero para sair: ")
leia(num)
fimenquanto
Fimalgoritmo
Termino este artigo aqui! Se tiverem quaisquer dúvidas, por favor, deixem nos comentários. Até o próximo.









Muito bom o conteúdo.
obrigada =)