Linguagens de Programação I - Lista 02 Resolvida
-
Upload
pryncesa-ck -
Category
Documents
-
view
216 -
download
0
description
Transcript of Linguagens de Programação I - Lista 02 Resolvida
![Page 1: Linguagens de Programação I - Lista 02 Resolvida](https://reader035.fdocumentos.tips/reader035/viewer/2022081813/563db825550346aa9a90f8ea/html5/thumbnails/1.jpg)
OBS: Agradecimentos ao prof. Cláudio Miguel (Unidade Ipanema) pela concessão deste material
Linguagens de Programação I
2a Lista de Exercícios
Assunto: Tomada de decisão
OBS: Onde etá “programa”, leia-se “algoritmo
Exercícios de Fixação
1. Faça um programa que leia um número e imprima uma mensagem dizendo se é par ou impar.
Algoritmointeiro nleia (n)se (n MOD 2 == 0) então
imprima (“Par”) senão
imprima (“Par”)fim_se
fim
2. Faça um programa que leia 2 números e imprima uma mensagem dizendo se são iguais ou
diferentes.
Algoritmointeiro n1, n2leia (n1, n2)se (n1 == n2) então
imprima (“Iguais”) senão
imprima (“Diferentes”)fim_se
fim
3. Faça um programa que leia 2 números e imprima uma mensagem dizendo o maior deles.
Suponha que os números serão diferentes.
Algoritmointeiro n1, n2leia (n1, n2)se (n1 > n2) então
imprima (“Maior e o n1 = “, n1) senão
![Page 2: Linguagens de Programação I - Lista 02 Resolvida](https://reader035.fdocumentos.tips/reader035/viewer/2022081813/563db825550346aa9a90f8ea/html5/thumbnails/2.jpg)
2/8
imprima (“Maior e o n2 = “, n2)fim_se
fim
4. Faça um programa que leia 2 números e imprima uma mensagem dizendo o maior deles. Detalhe:
se os números forem iguais, imprima uma mensagem avisando ao usuário.
Algoritmointeiro n1, n2leia (n1, n2)se (n1 > n2) então
imprima (“Maior e o n1 = “, n1) senão
se (n2 > n1) então imprima (“Maior e o n2 = “, n2) senão imprima (“Iguais = “, n1)fim_se
fim_se
fim
5. Faça um programa que leia da entrada padrão um número e imprima o seu valor absoluto (sem o
sinal).
Algoritmoreal nleia (n)se (n < 0) então
imprima (-n) senão
imprima (n)fim_se
fim
6. Faça um programa que leia 3 números e imprima o menor deles.
Algoritmoreal n1, n2, n3leia (n1, n2, n3)se (n1 < n2) e (n1 < n3) então
imprima (n1)
![Page 3: Linguagens de Programação I - Lista 02 Resolvida](https://reader035.fdocumentos.tips/reader035/viewer/2022081813/563db825550346aa9a90f8ea/html5/thumbnails/3.jpg)
3/8
senãose (n2 < n3) então imprima (n2) senão imprima (n3)fim_se
fim_se
fim
7. Faça um programa que leia 3 números e os imprima em ordem crescente.
Algoritmoreal n1, n2, n3leia (n1, n2, n3)se (n1 <= n2) e (n2 <= n3) então
imprima (n1, n2, n3) senão
se (n1 <= n3) e (n3 <= n2) então imprima (n1, n3, n2) senão
se (n2 <= n1) e (n1 <= n3) então imprima (n2, n1, n3) senão
se (n2 <= n3) e (n3 <= n1) então imprima (n2, n3, n1) senão
se (n3 <= n2) e (n2 <= n1) então
imprima (n3, n2, n1)senão
imprima (n3, n1, n2) fim_se fim_sefim_se
fim_se
fim
Outra forma:
Algoritmoreal n1, n2, n3, maior, meio, menor, restante1, restante2leia (n1, n2, n3)
![Page 4: Linguagens de Programação I - Lista 02 Resolvida](https://reader035.fdocumentos.tips/reader035/viewer/2022081813/563db825550346aa9a90f8ea/html5/thumbnails/4.jpg)
4/8
se (n1 < n2) e (n1 < n3) então
menor = n1restante1 = n2restante2 = n3
senãose (n2 < n3) então menor = n2
restante1 = n1restante2 = n3
senão menor = n3
restante1 = n1restante2 = n2
fim_sefim_se
se (restante1<restante2) então
meio = restante1maior = restante2
senãomeio = restante2maior = restante1
fim_se
imprima (menor, meio, maior)
fim
8. Faça um programa que leia 3 números e os imprima em ordem decrescente.
Similar ao anterior (só muda a ordem)
9. Faça um programa que leia 3 números e imprima o valor intermediário, entre o menor e o maior
número. Suponha que os números serão diferentes.
Algoritmoreal n1, n2, n3leia (n1, n2, n3)se (n2 < n1) e (n1 < n3) ou (n3 < n1) e (n1 < n2) então
imprima (n1) senão
se (n1 < n2) e (n2 < n3) ou (n3 < n2) e (n2 < n1) então imprima (n2)
![Page 5: Linguagens de Programação I - Lista 02 Resolvida](https://reader035.fdocumentos.tips/reader035/viewer/2022081813/563db825550346aa9a90f8ea/html5/thumbnails/5.jpg)
5/8
senãoimprima (n3)
fim_sefim_se
fim
10. Faça um programa que leia 3 números e imprima uma das seguintes mensagens:
• todos os números são iguais;
• todos os números são diferentes; ou
• apenas dois números são iguais.
Algoritmoreal n1, n2, n3leia (n1, n2, n3)se (n1 == n2) e (n2 == n3) então
imprima (“todos os números são iguais”) senão
se (n1 == n2) ou (n1 == n3) ou (n2 == n3) então
imprima (“apenas dois são iguais”) senão
imprima (“todos os números são diferentes”)fim_se
fim_sefim
11. Faça um programa que leia três notas de um aluno, calcule sua média aritmética e imprima uma
mensagem dizendo se o aluno foi aprovado, reprovado ou deverá fazer prova final. O critério de
aprovação é o seguinte:
• aprovado (média ≥ 7);
• reprovado (média < 3) e
• prova final ( 3 ≤ média < 7).
Algoritmoreal n1, n2, n3, medialeia (n1, n2, n3)media = (n1+n2+n3)/3se (media >= 7) então
imprima (“Aprovado”) senão
se (media < 3) então
![Page 6: Linguagens de Programação I - Lista 02 Resolvida](https://reader035.fdocumentos.tips/reader035/viewer/2022081813/563db825550346aa9a90f8ea/html5/thumbnails/6.jpg)
6/8
imprima (“Reprovado”) senão
imprima (“Prova final”)fim_se
fim_sefim
12. Faça um programa que leia a idade de uma pessoa e informe sua classe eleitoral:
• não eleitor (abaixo de 16 anos);
• eleitor obrigatório (entre 18 e 65 anos) e
• eleitor facultativo (entre 16 e 18 anos e acima dos 65 anos).
Algoritmointeiro idadeleia (idade)se (idade < 16) então
imprima (“Não eleitor”) senão
se (idade >=18 e idade < 65) então
imprima (“Eleitor obrigatorio”) senão
imprima (“Eleitor facultativo”)fim_se
fim_se
fim
13. Faça um programa que calcula a área de determinadas figuras geométricas. O programa deveráapresentar um menu com as seguintes opções:
• quadrado ( lado2 )
• retângulo (comprimento * largura)
• círculo (3,14 * raio2 )
• trapézio ((base maior + base menor) * altura / 2)
De acordo com a opção, o programa deve pedir os valores necessários para realizar o cálculo.
Algoritmoreal lado, comprimento, largura, raio, baseMaior, baseMenor, alturainteiro opcaoimprima (“[1] Quadrado”)imprima (“[2] Retângulo”)imprima (“[3] Círculo”)imprima (“[4] Trapézio”)imprima (“Digite sua opção: “)
![Page 7: Linguagens de Programação I - Lista 02 Resolvida](https://reader035.fdocumentos.tips/reader035/viewer/2022081813/563db825550346aa9a90f8ea/html5/thumbnails/7.jpg)
7/8
leia (opcao)se (opcao == 1) então
imprima (“Entre com o lado: ”)leia (lado)imprima (“Area = ”, lado*lado)
senãose (opcao == 2) então
imprima (“Entre com o comprimento: ”)leia(comprimento)imprima (“Entre com a largura: ”)leia(largura)imprima (“Area = ”, comprimento * largura)
senãose (opcao == 3) então
imprima (“Entre com o raio: ”)leia(raio)imprima (“Area = ”, 3,14*raio*raio)
senãose (opcao == 4) então
imprima (“Entre com a base maior: ”)leia(baseMaior)imprima (“Entre com a base menor: ”)leia(baseMenor)imprima (“Entre com a altura: ”)leia(altura)imprima (“Area = ”, (baseMaior+baseMenor)*altura/2)
fim_sefim_se
fim_sefim_se
fim
14. Em uma eleição presidencial, existem quatro candidatos. Os votos são informados através de
código. Os dados utilizados para a escrutinagem obedecem à seguinte codificação:
• 1, 2, 3, 4 = voto para os respectivos candidatos;
• 5 = voto nulo;
• 6 = voto em branco;
Elabore um programa que calcule e imprima:
a) total de votos para cada candidato;
b) total de votos nulos;
c) total de votos em branco;
d) percentual dos votos em branco e nulos sobre o total;
e) situação do candidato vencedor sobre os outros dois, no caso, se ele obteve ou não mais
![Page 8: Linguagens de Programação I - Lista 02 Resolvida](https://reader035.fdocumentos.tips/reader035/viewer/2022081813/563db825550346aa9a90f8ea/html5/thumbnails/8.jpg)
8/8
votos que os outros dois somados.
Como finalizador do conjunto de votos, tem-se o valor 0.
15. Uma equipe de vôlei paga aos seus jogadores, além do salário, um valor adicional ao salário
mensal (bicho) que é função da produtividade de cada um.
Essa produtividade é paga de acordo com a tabela a seguir:
classe nível valor adicional
1 excelente +100%
2 bom +80%
3 médio +50%
4 regular +30%
5 precisa treinar mais +10%
6 te cuida +5%
7 passe no Departamento Pessoal 0%
Faça um programa que, dados o salário e o código da classe de um jogador, calcule e imprima oseu salário final e o nome da sua classe (nível).
16. Faça um programa que implemente uma máquina de calcular com operações +, -, *, / e %,
através da leitura de dois operandos numéricos inteiros e do operador (tipo caracter), no formato:
operando1 operador operando2. Verifique casos de operações que não podem ser realizadas (antes
de operá-las).
17. Faça um programa que leia um horário no sistema de 24 horas e imprima este horário no sistema
de 12 horas.
Exemplo: 22:32 → 10:32 pm
Obs.: 0:00 → 12:00 am 6:00 → 6:00 am 12:00 → 12:00 pm