ESTRUTURAS DE CONTROLE CONDICIONAIS E DE SELEÇÃO
Por: Juliano Vieira dos Santos • 6/10/2019 • Trabalho acadêmico • 1.565 Palavras (7 Páginas) • 353 Visualizações
UNIDADE VI– ESTRUTURAS DE CONTROLE CONDICIONAIS E DE SELEÇÃO
Resolver os exercícios abaixo utilizando Pseudocódigo:
1. Crie um algoritmo que a partir da entrada de um número digitado no formato UDCM (por exemplo: 1234), imprima esse número no formato MCDU (4321). Realizar o teste para saber se o número informado tem quatro dígitos, se tiver realizar a troca de formato, senão tiver informar que o número não é válido e encerrar o algoritmo.
R:
Algoritmo "inversor"
Var
numero, novo: caractere
Inicio
escreval("=== Inversor Milhar ===")
escreva("Digite um numero no formato UDCM (Ex: 1234): ")
leia(numero)
se compr(numero) <> 4 entao
escreval("Numero digitado inválido")
senao
novo:= copia(numero,4,1)
novo:= novo + copia(numero,3,1)
novo:= novo + copia(numero,2,1)
novo:= novo + copia(numero,1,1)
escreval("Numero invertido para MCDU: ",novo)
fimse
Fimalgoritmo
2. Crie um algoritmo que a partir da entrada de uma DATA DE NASCIMENTO
no formato (dd/mm/aaaa) digitada pelo usuário, verifique se ela é VÁLIDA.
Considere ANO VÁLIDO (ANO>1900 e ANO<=ANO ATUAL); MÊS VÁLIDO (1-12)
e DIA VÁLIDO (1-31). Para validar a data crie uma FUNÇÃO que retorne um
valor lógico VERDADEIRO (DATA VÁLIDA) ou FALSO (DATA INVÁLIDA) para os
testes. Ao final imprima o NOME, DATA NASCIMENTO e a IDADE da pessoa.
R:
Algoritmo "ValidaData"
Var
// Seção de Declarações das variáveis
data, dia, mes, ano: caractere
nome: caractere
idade: inteiro
funcao validaData(d, m, a: caractere): logico
var
r: logico
diaData, mesData, anoData: inteiro
inicio
r := falso
diaData := Caracpnum(d)
mesData := Caracpnum(m)
anoData := Caracpnum(a)
se ((anoData > 1900) e (anoData <= 2018)) entao
se ((mesData >= 1) e (mesData <= 12)) entao
se ((diaData >= 1) e (diaData <= 31)) entao
r:= verdadeiro
fimse
fimse
fimse
retorne r
fimfuncao
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
escreval("----------------------------------------")
escreval("ALGORITMO/PROGRAMA PARA VALIDAR UMA DATA")
escreval("----------------------------------------")
escreval("")
escreva("Digite sua data de nascimento no formato (dd/mm/aaaa): ")
leia(data)
dia := Copia(data,1,2)
mes := Copia(data,4,2)
ano := Copia(data,7,4)
se (validaData(dia,mes,ano)) entao
escreva("Digite o seu nome: ")
leia(nome)
idade := 2018 - Caracpnum(ano)
escreval("")
escreval("Nome: ",nome)
escreval("Data de nascimento: ",data)
escreval("Idade: ",idade)
senao
escreval("")
escreva("DATA DE NASCIMENTO INVÁLIDA!")
escreval("")
fimse
Fimalgoritmo
3. Crie um algoritmo que descubra se uma letra digitada pelo usuário é
CONSOANTE, VOGAL ou NÃO É UMA LETRA. Utilize a estrutura de seleção
escolha...caso...outrocaso...fimescolha para resolver o algoritmo.
R
Algoritmo "VogalConsoanteOunaoletra"
Var
letra:caractere
Inicio
escreval("")
escreva("Escreva somente um caractere : ")
leia(letra)
letra := Maiusc(letra)
escolha letra
caso "A","e","i","o","u"
escreval("É uma vogal")
caso "b","c","d","f","g","h","j","k","l","m","n","p","q","r","s","t","v","w","x","y","z"
escreval("É uma consoante")
outrocaso
escreval("Não é uma letra")
fimescolha
Fimalgoritmo
4. Crie um algoritmo que a partir da leitura do valor de um SALÁRIO faça:
a) Acréscimo de 5% ao valor do salário, caso o mesmo seja maior ou
igual a R$ 1000,00;
b) Acréscimo de 10% ao valor do salário, caso o mesmo seja maior
que R$ 500,00 e menor que R$ 1000,00; e,
c) Acréscimo de 20% ao valor do salário, caso o mesmo seja menor ou
igual a R$ 500,00.
R:
Algoritmo "UNIDADE6"
Var
// Seção de Declarações das variáveis
Salario, Acrescimo, SalarioFinal: real
procedimento CalculoSalario()
inicio
escreval("==Calculo Salário==")
escreval("Digite seu Salário: ")
leia(Salario)
se (Salario>=1000) entao //5%
Acrescimo := (Salario*5)/100
SalarioFinal := (Salario+Acrescimo)
escreval("Voce recebeu um Acréscimo de: ",Acrescimo)
escreval("Seu Salario Final é: ",SalarioFinal)
fimse
se ((Salario>500) e (Salario<1000)) entao //10%
Acrescimo := (Salario*10)/100
SalarioFinal := (Salario+Acrescimo)
escreval("Voce recebeu um Acréscimo de: ",Acrescimo)
escreval("Seu Salario Final é: ",SalarioFinal)
fimse
se (Salario<500) entao //20%
Acrescimo := (Salario*20)/100
SalarioFinal := (Salario+Acrescimo)
escreval("Voce recebeu um Acréscimo de: ",Acrescimo)
escreval("Seu Salario Final é: ",SalarioFinal)
fimse
fimprocedimento
Inicio
CalculoSalario()
Fimalgoritmo
5. Crie um algoritmo para ler os coeficientes de uma equação do segundo
grau e calcular as suas raízes, na forma Axw + Bx + C, levando em consideração
a existência de raízes reais (x > 0, a equação possui duas raízes reais e
distintas; x = 0, a equação possui raízes reais iguais; x < 0, a equação não
...