Escolar Documentos
Profissional Documentos
Cultura Documentos
Exercícios de Lógica de Programação PDF
Exercícios de Lógica de Programação PDF
EXERCCIOS e Respostas
de Lgica de Programao
- ALGORITMOS -
Maro de 2007
Sumrio
Pgina
1 EXERCCIOS DE LGICA DE PROGRAMAO................................................................................................................ 3
EXERCCIOS: 1 E 2 ........................................................................................................................................................ 3
EXERCCIOS: 3 AO 11 ................................................................................................................................................... 4
EXERCCIOS: 12 AO 21 ................................................................................................................................................. 5
EXERCCIOS: 22 AO 29 ................................................................................................................................................. 6
EXERCCIOS: 30 AO 34 ................................................................................................................................................. 7
EXERCCIOS: 35 AO 39 ................................................................................................................................................. 8
EXERCCIOS: 40 AO 42 ................................................................................................................................................. 9
EXERCCIOS: 43 AO 49 ............................................................................................................................................... 10
EXERCCIOS: 50 AO 65 ............................................................................................................................................... 11
EXERCCIOS: 66 AO 75 ............................................................................................................................................... 12
EXERCCIOS: 76 AO 78 ............................................................................................................................................... 13
EXERCCIOS: 79 AO 91 ............................................................................................................................................... 14
2 EXERCCIOS DE RACIOCNIO ....................................................................................................................................... 15
3 RESPOSTAS DOS EXERCCIOS ...................................................................................................................................... 16
1) Escreva um algoritmo que armazene o valor 10 em uma varivel A e o valor 20 em uma varivel B.
A seguir (utilizando apenas atribuies entre variveis) troque os seus contedos fazendo com que o
valor que est em A passe para B e vice-versa. Ao final, escrever os valores que ficaram armazenados
nas variveis.
2) Analise os algoritmos abaixo e diga o que ser impresso na tela ao serem executados:
a)
b)
A 10
B 20
Escrever B
B 5
Escrever A, B
c)
A
B
30
20
C
A+B
Escrever C
B 10
Escrever B, C
C
A+B
Escrever A, B, C
d)
A 10
B 20
C
A
B C
A B
Escrever A, B, C
e)
10
B A+1
A B+1
B A+1
Escrever A
A B+1
Escrever A, B
f)
A
B
10
5
C
A+B
B 20
A 10
Escrever A, B, C
X
Y
1
2
Z YX
Escrever Z
X 5
Y X+Z
Escrever X, Y, Z
(4/2)+(2/4)
4/(2+2)/4 e
(4+2)*2-4
4/2+2/4
4/2+2/4
C
4+2*2-4
4) Reescreva as instrues abaixo com o mnimo de parnteses possvel, mas sem alterar o
resultado:
A
6*(3+2)
(6/3)+(8/2)
2+(6*(3+2))
((3+(8/2))*4)+(3*2)
2+(3*6)/(2+4)
(6*(3*3)+6)-10
2*(8/(3+1))
(((10*8)+3)*9)
3+(16-2)/(2*(9-2))
((-12)*(-4))+(3*(-4))
5) Escreva um algoritmo para ler um valor (do teclado) e escrever (na tela) o seu antecessor.
6) Escreva um algoritmo para ler as dimenses de um retngulo (base e altura), calcular e escrever a
rea do retngulo.
7) Faa um algoritmo que leia a idade de uma pessoa expressa em anos, meses e dias e escreva a idade
dessa pessoa expressa apenas em dias. Considerar ano com 365 dias e ms com 30 dias.
8) Escreva um algoritmo para ler o nmero total de eleitores de um municpio, o nmero de votos
brancos, nulos e vlidos. Calcular e escrever o percentual que cada um representa em relao ao total
de eleitores.
9) Escreva um algoritmo para ler o salrio mensal atual de um funcionrio e o percentual de reajuste.
Calcular e escrever o valor do novo salrio.
10) O custo de um carro novo ao consumidor a soma do custo de fbrica com a porcentagem do
distribuidor e dos impostos (aplicados ao custo de fbrica). Supondo que o percentual do distribuidor
seja de 28% e os impostos de 45%, escrever um algoritmo para ler o custo de fbrica de um carro,
calcular e escrever o custo final ao consumidor.
11) Uma revendedora de carros usados paga a seus funcionrios vendedores um salrio fixo por ms,
mais uma comisso tambm fixa para cada carro vendido e mais 5% do valor das vendas por ele
efetuadas. Escrever um algoritmo que leia o nmero de carros por ele vendidos, o valor total de suas
vendas, o salrio fixo e o valor que ele recebe por carro vendido. Calcule e escreva o salrio final do
vendedor.
F - 32
----------9
Observao: Para testar se a sua resposta est correta saiba que 100oC = 212F
13) Faa um algoritmo que leia trs notas de um aluno, calcule e escreva a mdia final deste aluno.
Considerar que a mdia ponderada e que o peso das notas 2, 3 e 5. Frmula para o clculo da mdia
final :
mediafinal
n1 * 2 + n2 * 3 + n3 * 5
= ----------------------------------10
22) A jornada de trabalho semanal de um funcionrio de 40 horas. O funcionrio que trabalhar mais
de 40 horas receber hora extra, cujo clculo o valor da hora regular com um acrscimo de 50%.
Escreva um algoritmo que leia o nmero de horas trabalhadas em um ms, o salrio por hora e escreva
o salrio total do funcionrio, que dever ser acrescido das horas extras, caso tenham sido trabalhadas
(considere que o ms possua 4 semanas exatas).
23) Para o enunciado a seguir foi elaborado um algoritmo em Portugus Estruturado que contm
erros, identifique os erros no algoritmo apresentado abaixo:
Enunciado: Tendo como dados de entrada o nome, a altura e o sexo (M ou F) de uma pessoa, calcule
e mostre seu peso ideal, utilizando as seguintes frmulas:
- para sexo masculino: peso ideal = (72.7 * altura) - 58
- para sexo feminino: peso ideal = (62.1 * altura) - 44.7
inicio
ler nome
ler sexo
se sexo = M ento
peso_ideal (72.7 * altura) - 58
seno
peso_ideal (62.1 * altura) 44.7
fim_se
escrever peso_ideal
fim
24) Ler o salrio fixo e o valor das vendas efetuadas pelo vendedor de uma empresa. Sabendo-se que
ele recebe uma comisso de 3% sobre o total das vendas at R$ 1.500,00 mais 5% sobre o que
ultrapassar este valor, calcular e escrever o seu salrio total.
25) Faa um algoritmo para ler: nmero da conta do cliente, saldo, dbito e crdito. Aps, calcular e
escrever o saldo atual (saldo atual = saldo - dbito + crdito). Tambm testar se saldo atual for maior
ou igual a zero escrever a mensagem 'Saldo Positivo', seno escrever a mensagem 'Saldo Negativo'.
26) Faa um algoritmo para ler: quantidade atual em estoque, quantidade mxima em estoque e
quantidade mnima em estoque de um produto. Calcular e escrever a quantidade mdia ((quantidade
mdia = quantidade mxima + quantidade mnima)/2). Se a quantidade em estoque for maior ou igual
a quantidade mdia escrever a mensagem 'No efetuar compra', seno escrever a mensagem 'Efetuar
compra'.
30) Ler 3 valores (considere que no sero informados valores iguais) e escrev-los em ordem
crescente.
31) Ler 3 valores (A, B e C) representando as medidas dos lados de um tringulo e escrever se formam
ou no um tringulo. OBS: para formar um tringulo, o valor de cada lado deve ser menor que a soma
dos outros 2 lados.
32) Ler o nome de 2 times e o nmero de gols marcados na partida (para cada time). Escrever o nome
do vencedor. Caso no haja vencedor dever ser impressa a palavra EMPATE.
33) Ler dois valores e imprimir uma das trs mensagens a seguir:
Nmeros iguais, caso os nmeros sejam iguais
Primeiro maior, caso o primeiro seja maior que o segundo;
Segundo maior, caso o segundo seja maior que o primeiro.
34) Seja o seguinte algoritmo:
incio
ler x
ler y
z (x*y) + 5
se z <= 0 ento
resposta A
seno
se z <= 100 ento
resposta B
seno
resposta C
fim_se
fim_se
escrever z, resposta
fim
X
3
150
7
-2
50
Y
2
3
-1
5
3
Variveis
Z
Resposta
lcool
Gasolina
Escreva um algoritmo que leia o nmero de litros vendidos e o tipo de combustvel (codificado da
seguinte forma: A-lcool, G-gasolina), calcule e imprima o valor a ser pago pelo cliente sabendo-se
que o preo do litro da gasolina R$ 3,30 e o preo do litro do lcool R$ 2,90.
36) Escreva um algoritmo que leia as idades de 2 homens e de 2 mulheres (considere que as idades
dos homens sero sempre diferentes entre si, bem como as das mulheres). Calcule e escreva a soma
das idades do homem mais velho com a mulher mais nova, e o produto das idades do homem mais
novo com a mulher mais velha.
37) Uma fruteira est vendendo frutas com a seguinte tabela de preos:
Morango
Ma
At 5 Kg
R$ 2,50 por Kg
R$ 1,80 por Kg
Acima de 5 Kg
R$ 2,20 por Kg
R$ 1,50 por Kg
Se o cliente comprar mais de 8 Kg em frutas ou o valor total da compra ultrapassar R$ 25,00, receber
ainda um desconto de 10% sobre este total. Escreva um algoritmo para ler a quantidade (em Kg) de
morangos e a quantidade (em Kg) de maas adquiridas e escreva o valor a ser pago pelo cliente.
38) Faa um algoritmo para ler um nmero que um cdigo de usurio. Caso este cdigo seja
diferente de um cdigo armazenado internamente no algoritmo (igual a 1234) deve ser apresentada a
mensagem Usurio invlido!. Caso o Cdigo seja correto, deve ser lido outro valor que a senha. Se
esta senha estiver incorreta (a certa 9999) deve ser mostrada a mensagem senha incorreta. Caso a
senha esteja correta, deve ser mostrada a mensagem Acesso permitido.
40) Faa um algoritmo para ler: a descrio do produto (nome), a quantidade adquirida e o preo
unitrio. Calcular e escrever o total (total = quantidade adquirida * preo unitrio), o desconto e o total
a pagar (total a pagar = total - desconto), sabendo-se que:
- Se quantidade <= 5 o desconto ser de 2%
- Se quantidade > 5 e quantidade <=10 o desconto ser de 3%
- Se quantidade > 10 o desconto ser de 5%
41) Faa um algoritmo para ler as 3 notas obtidas por um aluno nas 3 verificaes e a mdia dos
exerccios que fazem parte da avaliao. Calcular a mdia de aproveitamento, usando a frmula abaixo
e escrever o conceito do aluno de acordo com a tabela de conceitos mais abaixo:
N1 + N2 * 2 + N3 * 3 + Mdia_dos_Exerccios
Mdia_de_Aproveitamento = --------------------------------------------------------7
A atribuio de conceitos obedece a tabela abaixo:
Mdia de Aproveitamento
> = 9,0
> = 7,5 e < 9,0
> = 6,0 e < 7,5
< 6,0
Conceito
A
B
C
D
42) Uma empresa quer verificar se um empregado est qualificado para a aposentadoria ou no. Para
estar em condies, um dos seguintes requisitos deve ser satisfeito:
- Ter no mnimo 65 anos de idade.
- Ter trabalhado no mnimo 30 anos.
- Ter no mnimo 60 anos e ter trabalhado no mnimo 25 anos.
Com base nas informaes acima, faa um algoritmo que leia: o nmero do empregado (cdigo), o ano
de seu nascimento e o ano de seu ingresso na empresa. O programa dever escrever a idade e o tempo
de trabalho do empregado e a mensagem 'Requerer aposentadoria' ou 'No requerer'.
Faa um teste de mesa e complete o quadro a seguir para os seguintes valores das variveis:
Variveis
a
1
3
2
4
5
b
2
4
2
4
3
C
3
5
4
4
3
Mens
11
66) O mesmo exerccio anterior, mas agora, considere que o segundo valor lido poder ser maior ou
menor que o primeiro valor lido, ou seja, deve-se test-los.
67) Faa um algoritmo que calcule e escreva a mdia aritmtica dos nmeros inteiros entre 15
(inclusive) e 100 (inclusive).
68) Uma loja est levantando o valor total de todas as mercadorias em estoque. Escreva um algoritmo
que permita a entrada das seguintes informaes: a) o nmero total de mercadorias no estoque; b) o
valor de cada mercadoria. Ao final imprimir o valor total em estoque e a mdia de valor das
mercadorias.
69) O mesmo exerccio anterior, mas agora no ser informado o nmero de mercadorias em estoque.
Ento o funcionamento dever ser da seguinte forma: ler o valor da mercadoria e perguntar MAIS
MERCADORIAS (S/N)?. Ao final, imprimir o valor total em estoque e a mdia de valor das
mercadorias em estoque.
12
76) Imagine que exista um comando chamado "posiciona (x,y)" em alguma linguagem de
programao. Onde o X representaria a coluna que algo deve ser impresso na tela, e Y a linha que
algo deve ser impresso na tela. Desta forma, o algoritmo abaixo:
incio
posiciona (10,2)
escrever Ol
fim
Escreveria a palavra Ol na segunda linha da tela, a partir da 10 coluna. Baseado nesta situao,
escreva um algoritmo, utilizando este comando 'posiciona' citado, que desenhe na tela um retngulo de
60 colunas (a partir da coluna 1 da tela) e 10 linhas (a partir da linha 1 da tela), sendo que a borda deste
retngulo ser formada pelo caractere +. Lembre que somente a primeira e ltima linha devero ter
todas as colunas preenchidas com o caractere +. As demais linhas (entre 2 e 9) s tero as colunas 1 e
60 preenchidas. A aparncia deste retngulo deve ser parecida com a figura abaixo:
1
5
2
1
3
4
4
2
5
7
6
8
7
3
8
6
78) Escreva um algoritmo que permita a leitura dos nomes de 10 pessoas e armaze os nomes lidos em
um vetor. Aps isto, o algoritmo deve permitir a leitura de mais 1 nome qualquer de pessoa e depois
escrever a mensagem ACHEI, se o nome estiver entre os 10 nomes lidos anteriormente (guardados no
vetor), ou NO ACHEI caso contrrio.
13
79) Escreva um algoritmo que permita a leitura das notas de uma turma de 20 alunos. Calcular a mdia
da turma e contar quantos alunos obtiveram nota acima desta mdia calculada. Escrever a mdia da
turma e o resultado da contagem.
80) Ler um vetor Q de 20 posies (aceitar somente nmeros positivos). Escrever a seguir o valor do
maior elemento de Q e a respectiva posio que ele ocupa no vetor.
81) O mesmo exerccio anterior, mas agora deve escrever o menor elemento do vetor e a respectiva
posio dele nesse vetor.
82) Ler um vetor A de 10 nmeros. Aps, ler mais um nmero e guardar em uma varivel X.
Armazenar em um vetor M o resultado de cada elemento de A multiplicado pelo valor X. Logo aps,
imprimir o vetor M.
83) Faa um algoritmo para ler 20 nmeros e armazenar em um vetor. Aps a leitura total dos 20
nmeros, o algoritmo deve escrever esses 20 nmeros lidos na ordem inversa.
84) Faa um algoritmo para ler um valor N qualquer (que ser o tamanho dos vetores). Aps, ler dois
vetores A e B (de tamanho N cada um) e depois armazenar em um terceiro vetor Soma a soma dos
elementos do vetor A com os do vetor B (respeitando as mesmas posies) e escrever o vetor Soma.
85) Faa um algoritmo para ler e armazenar em um vetor a temperatura mdia de todos os dias do ano.
Calcular e escrever:
a) Menor temperatura do ano
b) Maior temperatura do ano
c) Temperatura mdia anual
d) O nmero de dias no ano em que a temperatura foi inferior a mdia anual
86) Faa um algoritmo para ler 10 nmeros e armazenar em um vetor. Aps isto, o algoritmo deve
ordenar os nmeros no vetor em ordem crescente. Escrever o vetor ordenado.
87) O mesmo exerccio anterior, mas depois de ordenar os elementos do vetor em ordem crescente,
deve ser lido mais um nmero qualquer e inserir esse novo nmero na posio correta, ou seja,
mantendo a ordem crescente do vetor.
88) Faa um algoritmo para ler um vetor de 20 nmeros. Aps isto, dever ser lido mais um nmero
qualquer e verificar se esse nmero existe no vetor ou no. Se existir, o algoritmo deve gerar um novo
vetor sem esse nmero. (Considere que no havero nmeros repetidos no vetor).
89) Faa um algoritmo para ler dois vetores V1 e V2 de 15 nmeros cada. Calcular e escrever a
quantidade de vezes que V1 e V2 possuem os mesmos nmeros e nas mesmas posies.
90) Faa um algoritmo para ler um vetor de 30 nmeros. Aps isto, ler mais um nmero qualquer,
calcular e escrever quantas vezes esse nmero aparece no vetor.
91) Faa um algoritmo para ler 50 nmeros e armazenar em um vetor VET, verificar e escrever se
existem nmeros repetidos no vetor VET e em que posies se encontram.
14
2 Exerccios de Raciocnio
Elabore algoritmos em linguagem natural para resolver as situaes colocadas a seguir:
1) Um homem precisa atravessar um rio com um barco que possui capacidade de transportar apenas
ele e mais uma de suas trs cargas, que so: um cachorro, uma galinha e um saco de milho. O que o
homem deve fazer para conseguir atravessar o rio sem perder as suas cargas?
2) Uma Torre de Hani formada por trs discos sobrepostos transpassados por uma haste. Tendo
mais duas hastes e podendo mover um disco por vez, mas nunca deixando um disco maior sobre um
disco menor, como podemos passar os discos para uma outra haste?
3) Trs jesutas e trs canibais precisam atravessar um rio. No entanto dispem apenas de um barco
com capacidade para duas pessoas. Por medida de segurana no se permite que em alguma das
margens do rio a quantidade de jesutas seja inferior quantidade de canibais. Qual a seqncia de
viagens necessrias para a travessia do rio com segurana para os jesutas?
15
Nete captulo so apresentadas as respostas da maioria dos exerccios encontrados nesta apostila. As
respostas esto apresentadas em Diagrama de Chapin. As respostas que no forem encontradas aqui,
voc pode (e deve) procurar o monitor da disciplina para lhe ajudar a resolver e/ou tirar alguma
dvida.
7)
6)
8)
9)
10)
16
11)
12)
13)
14)
15)
17
17)
20)
24)
18
28)
44)
45)
19
46)
47)
20
50)
51)
53)
55)
57)
21
58)
59)
60)
22
61)
62)
63)
23
68)
69)
24
74)
76)
78)
25
79)
80)
26
82)
27