Uma empresa do ramo metalmecânico está realizando uma pesquisa junto a transportadoras para verificar o preço do transporte de seus produtos que serão entregues a seus clientes em outros estados. Ao final da pesquisa, foi selecionada uma transportadora, com a qual foi fechado o transporte dos produtos.
O cliente pode selecionar se quer a sua entrega com rastreamento ou não. Assim, deverá ser feita uma pergunta ao cliente. Deseja rastreamento (S-Sim e N-Não)? Se a resposta for “sim”, será cobrada uma taxa de R$ 200,00 pela carga.
Cálculo do frete (calcular o valor pelo número de peças transportadas):
• Três variáveis influenciam o valor do frete: o número de peças, a região e a distância em quilômetros.
• Até mil peças – o valor será conforme a região apresentada na tabela abaixo. O valor é cobrado por cada peça transportada.
• Acima de mil peças – valor normal para até mil peças; o número de peças que ultrapassar mil tem desconto conforme a região.
Exemplo:
Se um cliente comprar 1.200 peças, as quais serão enviados à região 1, que é Sudeste.
Será cobrado frete da seguinte forma: para as mil peças, R$ 1,20 cada peça. Para as 200 a mais, será dado um desconto de 12% sobre o valor de R$ 1,20, pagando 1,056 pelo frete de cada peça das 200 restantes.
Ficará (1000 * 1.2) + (200* 1.056) = R$ 1.411,20 de frete pelas peças transportadas.
A distância para o transporte deve ser informada, pois, para cada quilômetro, é cobrado um litro de combustível, que deverá ser lido ao iniciar o algoritmo.
Por questões de logística, a empresa realiza entregas somente para as regiões Sul, Sudeste e Centro-oeste, e cada uma possui um valor de frete com relação à quantidade de peças transportadas, conforme a tabela:
A região deverá ser impressa na tela em forma de menu, conforme abaixo:
Regiões para frete
1 - Sul
2 - Sudeste
3 - Centro-oeste
Digite a região:
Desenvolva um algoritmo que efetue a leitura da distância em quilômetros do frete, a quantidade de peças que serão transportadas, a região (em número) e determine se o cliente quer rastreamento.
Calcule e imprima o valor final do frete.
Ao término, devem ser exibidas as seguintes informações:
Taxa do rastreamento: 999,99
Valor do frete pelas peças: 9999.99
Valor do frete por quilômetro: 999.99
Total do frete: 999.99
Vamos lá! Agora é a sua vez de construir o algoritmo em pseudocódigo para resolver o problema do frete para a empresa. Para o cálculo do frete por região, deve-se utilizar o comando de seleção aninhado/encadeado.
Soluções para a tarefa
Resposta:
PADRÃO DE RESPOSTA ESPERADO
Explicação:
Algoritmo "frete"
Var
valor_litro,valor_peca, valor_desconto, taxa,valor1000, valoralem,distancia, frete_km,
total_frete: real
pecas, qtd_alem, regiao: inteiro
rastreia:caracter
inicio
Escreva("Digite o total de peças: ")
Leia (pecas)
Escreva("Digite o valor do litro de combustível utilizado: ")
Leia (valor_litro)
Escreval("Quer com rastreamento S para Sim e N para não:")
leia(rastreia)
se (rastreia = "S") entao
taxa <- 200.00 // armazena o valor da taxa para rastreamento da carga
senao
taxa <- 0 // se não quer com rastreamento, coloca zero no valor da taxa
fimse
Escreval("Digite a distância em Km: ")
Leia (distancia)
Escreval("Regiões para Frete é: ")
Escreval("1-Sul: ")
Escreval("2-Sudeste: ")
Escreval("3-centro Oeste: ")
Escreval("Digite a região: ")
Leia(regiao)
se (pecas <=1000) entao // teste da condição se é menos de 1000 peças
se (regiao =1) entao
valor_peca <- 1.00 * pecas
senao
se (regiao=2 ) entao
valor_peca <- 1.20 * pecas
senao
valor_peca <- 1.30 *pecas
fimse
fimse
senao // se número de peças é maior que 1000
qtd_alem <- (pecas - 1000) // calcula quantas peças ultrapassam as 1000
se (regiao =1) entao
valor_desconto <- 1.00 - (1.0 *10/100) // calcula o preço com 10% de
desconto
valor1000 <- 1000 * 1.00 // calcula o frete das 1000 peças
valoralem <- qtd_alem * valor_desconto // calcula o frete das peças além de
1000
valor_peca <- valor1000 + valoralem // soma os dois fretes
senao
se (regiao=2 ) entao
valor_desconto <- 1.20 - (1.20 *12/100) // calcula o preço com 12% de
desconto
valor1000 <- 1000 * 1.20 // calcula o frete das 1000 peças
valoralem <- qtd_alem * valor_desconto // calcula o frete das peças
além de 1000
valor_peca <- valor1000 + valoralem // soma os dois fretes
senao
valor_desconto <- 1.30 - (1.30 *13/100) // calcula o preço com 12% de desconto
valor1000 <- 1000 * 1.30 // calcula o frete das 1000 peças
valoralem <- qtd_alem * valor_desconto // calcula o frete das
peçasalém de 1000
valor_peca <- valor1000 + valoralem // soma os dois fretes
fimse
fimse
fimse
frete_km <- distancia * valor_litro // calculo do frete por km
total_frete <- taxa + valor_peca+frete_km // soma os três tipos de fretes
Escreval("Valor da taxa do frete(rastreamento) = ", taxa)
Escreval("Valor frete pelas peças e região = ", valor_peca)
Escreval("Valor Total por Km = ", frete_km)
Escreval("Valor Total do Frete = ", total_frete)
fimalgoritmo
Resposta:
Algoritmo "frete"
// Disciplina : [Lógica de Programação]
// Descrição : Faça a leitura da distancia em quilometros do frete
// Autor(a) : Jhennyfer costa
// Data atual : 30/07/2021
Var
// Seção de Declarações das variáveis
litro_combus, valor_pecas, valor_desconto, taxa, valor_1000, valor_maior_1000, distancia, frete_km, total_frete: real
pecas, quant_maior, regiao: inteiro
rastreio: caractere
Inicio
escreval ("Digite a quantidade das peças: ")
leia (pecas)
escreval ("Digite o valor do litro do combustivel: ")
leia (litro_combus)
escreval ("Digite se quer rastreamento, sim ou não: ")
leia (rastreio)
se (rastreio = "sim") entao
taxa <- 200
senao
taxa <- 0
fimse
escreval ("Digite o numero correspondente a sua região: ")
escreval
escreval ("regiao sul - 1: ")
escreval ("regiao sudest - 2: ")
escreval ("regiao centro oeste - 3: ")
leia (regiao)
escreval ("Digite a distancia em km: ")
leia (distancia)
se (pecas <= 1000) entao
se (regiao = 1) entao
valor_pecas <- 1.0 * pecas
senao
se (regiao = 2) entao
valor_pecas <- 1.20 * pecas
senao
valor_pecas <- 1.30 * pecas
fimse
fimse
senao
quant_maior <- (pecas - 1000)
se (regiao = 1) entao
valor_desconto <- 1.0 - (1.0 * 10/100)
valor_1000 <-1000 * 1.0
valor_maior_1000 <- valor_desconto
valor_pecas <- valor_1000 + valor_maior_1000
senao
se (regiao = 2) entao
valor_desconto <- 1.20 - (1.20 * 12/100)
valor_1000 <- 1000 * 1.20
valor_maior_1000 <- valor_desconto
valor_pecas <- valor_1000 + valor_maior_1000
senao
valor_desconto <- 1.30 - (1.30 * 13/100)
valor_1000 <- 1000 * 1.30
valor_maior_1000 <- valor_desconto
valor_pecas <- valor_1000 + valor_maior_1000
fimse
fimse
fimse
frete_km <- distancia * litro_combus
total_frete <- taxa + valor_pecas + frete_km
escreval ("valor da taxa do rastreamento = ", taxa)
escreval ("valor pelas pecas por regiao = ", valor_pecas)
escreval ("valor total por km = ", frete_km)
escreval ("valor total do frete = ", total_frete)
Fimalgoritmo