Vous êtes sur la page 1sur 23

Professor Halysson

Curso de Engenharia Civil


2014 / 1º Termo
Lista de Exercícios

1. Faça um algoritmo que receba dois números e ao final mostre a soma, subtração,
multiplicação e a divisão dos números lidos.
algoritmo "ex1"
var
x, y: real
inicio
escreva("Digite o primeiro número: ")
leia(x)
escreva("Digite o segundo número: ")
leia(y)
escreval("A soma é: ",x+y)
escreval("A subtração é: ",x-y)
escreval("A multiplicação é: ",x*y)
escreval("A divisão é: ",x/y)
fimalgoritmo

2. Escrever um algoritmo para determinar o consumo médio de um automóvel sendo


fornecida a distância total percorrida pelo automóvel e o total de combustível gasto.
algoritmo "ex2"
var
distancia, combustivel: real
inicio
escreval("========== Cálculo de consumo médio de combustível =========")
escreva("Digite a distância percorrida: ")
leia(distancia)
escreva("Digite o combustível gasto: ")
leia(combustivel)
escreval("O consumo médio de combustível do seu veículo é: ",distancia/combustivel)
fimalgoritmo
3. Escrever um algoritmo que leia o nome de um vendedor, o seu salário fixo e o total
de vendas efetuadas por ele no mês (em dinheiro). Sabendo que este vendedor
ganha 15% de comissão sobre suas vendas efetuadas, informar o seu nome, o
salário fixo e salário no final do mês.
algoritmo "ex3"
var
nome: caractere
salario: real
vendas: real
comissao: real
salarioFinal: real
inicio
escreval("<><><><><> Sistema de gestão de vendedores <><><><><>")
escreva(">>> Digite o nome do vendedor: ")
leia(nome)
escreva(">>> Digite o salário: ")
leia(salario)
escreva(">>> Informe o total em vendas deste mês em R$: ")
leia(vendas)
// Cálculo da comissão e salário final
comissao <- 0.15 * vendas
salarioFinal <- salario + comissao
limpatela
escreval(">>>>>>>>>> RESUMO <<<<<<<<<<")
escreval("-- Nome: ",nome)
escreval("-- Salário: ",salario)
escreval("-- Salário Final (salário + comissão): ",salarioFinal)
escreval(">>>>>>>>>><><><><><<<<<<<<<<")
fimalgoritmo
4. Escrever um algoritmo que leia o nome de um aluno e as notas das três provas que
ele obteve no semestre. No final informar o nome do aluno e a sua média
(aritmética).
algoritmo "ex4"
var
aluno: caractere
n1,n2,n3: real
media: real
inicio
escreval("============== Média de alunos ==============")
escreva("Digite o nome do aluno: ")
leia(aluno)
escreva("Digite a nota 1: ")
leia(n1)
escreva("Digite a nota 2: ")
leia(n2)
escreva("Digite a nota 3: ")
leia(n3)
media <- (n1 + n2 + n3) / 3
limpatela
escreval("==============", aluno," ==============")
escreval(">>> Média: ",media)
escreval("=======================================")
fimalgoritmo
5. Elaborar um algoritmo que efetue a apresentação do valor da conversão em real
(R$) de um valor lido em dólar (US$). O algoritmo deverá solicitar o valor da
cotação do dólar e também a quantidade de dólares disponíveis com o usuário.
algoritmo "ex5"
var
rs, us, cotacao: real
inicio
escreval("========= Cotação do Dólar ==========")
escreva("Qual a cotação atual do dólar? ")
leia(cotacao)
escreva("Quantos dólares você possui? ")
leia(us)
rs <- us*cotacao
limpatela
escreval(us," Dólares equivalem á: ",rs," R$")
fimalgoritmo
6. Faça um algoritmo que receba um valor que foi depositado e exiba o valor com
rendimento após um mês. Considere fixo o juro da poupança em 0,70% a. m.
algoritmo "ex6"
var
correcao, deposito: real
inicio
escreval("Sistema de depósito do Banco do Oeste")
escreva("Digite o valor depositado: ")
leia(deposito)
correcao <- 0.70 / 100 * deposito
escreva("O rendimento do depósito após um mês é de: ",deposito+correcao)
fimalgoritmo

7. A Loja Mamão com Açúcar está vendendo seus produtos em 5 (cinco) prestações
sem juros. Faça um algoritmo que receba um valor de uma compra e mostre o valor
das prestações.
algoritmo "ex7"
var
compra, prestacao: real
inicio
escreval("========== Loja Mamão com Açúcar ==========")
escreva("Digite o valor da compra: ")
leia(compra)
prestacao <- compra/5
escreval("O cliente deverá pagar 5 prestações de R$",prestacao," cada")
fimalgoritmo

8. Faça um algoritmo que receba o preço de custo de um produto e mostre o valor de


venda. Sabe-se que o preço de custo receberá um acréscimo de acordo com um
percentual informado pelo usuário. O custo ao consumidor de um carro novo é a
soma do custo de fábrica com a percentagem do distribuidor e dos impostos
(aplicados, primeiro os impostos sobre o custo de fábrica, e depois a percentagem
do distribuidor sobre o resultado). Supondo que a percentagem do distribuidor seja
de 28% e os impostos 45%. Escrever um algoritmo que leia o custo de fábrica de
um carro e informe o custo ao consumidor do mesmo.
algoritmo "ex08"
var
ValorFabrica, ValorVenda: real
inicio
escreva("Digite o valor de fábrica: ")
leia(ValorFabrica)
ValorVenda <- (ValorFabrica * 1.45) * 1.28
escreval("O valor de venda é: ", ValorVenda)
fimalgoritmo
9. Escrever um algoritmo que leia o nome e as três notas obtidas por um aluno durante
o semestre. Calcular a sua média (aritmética), informar o nome e sua menção
aprovado (media >= 7), Reprovado (media <= 5) e Recuperação (media entre 5.1 a
6.9).
algoritmo "ex09"
var
nome: caractere
n1, n2, n3, media: real
inicio
escreval("Sistema de médias")
escreva("Digite a primeira nota: ")
leia(n1)
escreva("Digite a segunda nota: ")
leia(n2)
escreva("Digite a terceria nota: ")
leia(n3)
media <- (n1 + n2 + n3) / 3
se media >= 7 entao
escreval("Aluno aprovado!")
senao
se media <= 5 entao
escreval("Aluno reprovado!")
senao
escreval("Aluno em recuperação...")
fimse
fimse
fimalgoritmo

10. Escrever um algoritmo que leia os dados de uma pessoa (nome, sexo, idade e
saúde) e informe se está apta ou não para cumprir o serviço militar obrigatório.

algoritmo "ex10"
var
idade: inteiro
nome, sexo, saude: caractere
inicio
escreva("Digite o nome: ")
leia(nome)
escreva("Digite o sexo (M/F): ")
leia(sexo)
escreva("Digite a idade: ")
leia(idade)
escreval("Digite o estado de saúde: ")
escreva("(B) Bom - (R) - Ruim - ")
leia(saude)
se (sexo <> "M") e (sexo <> "F") então
escreval("Sexo informado inválido. Favor indicar (M ou F). Reinicie o programa.")
senao
se (saude <> "B") e (saude <> "R") então
escreval("Saúde informada inválida. Favor indicar (B) Bom - (R) - Ruim.")
senao
se (saude = "B") e (idade >= 18) e (sexo = "M") entao
escreval("Você esta apto para cumprir o serviço militar obrigatório.")
senao
escreval("Você NÃO esta apto para cumprir o serviço militar obrigatório.")
fimse
fimse
fimse
fimalgoritmo

11. Faça um algoritmo que receba o número do mês e mostre o mês correspondente.
Valide mês inválido.
algoritmo "ex11"
var
mes: inteiro
inicio
escreva("Digite o número do mês: ")
leia(mes)
se (mes >= 1) e (mes <= 12) entao
se mes = 1 entao
escreval("Janeiro")
fimse
se mes = 2 entao
escreval("Fevereiro")
fimse
se mes = 3 entao
escreval("Março")
fimse
se mes = 4 entao
escreval("Abril")
fimse
se mes = 5 entao
escreval("Maio")
fimse
se mes = 6 entao
escreval("Junho")
fimse
se mes = 7 entao
escreval("Julho")
fimse
se mes = 8 entao
escreval("Agosto")
fimse
se mes = 9 entao
escreval("Setembro")
fimse
se mes = 10 entao
escreval("Outubro")
fimse
se mes = 11 entao
escreval("Novembro")
fimse
se mes = 12 entao
escreval("Dezembro")
fimse
senao
escreval("Mês inválido!")
fimse
fimalgoritmo
12. Escrever um algoritmo que leia três valores inteiros distintos e os escreva em ordem
crescente.
algoritmo "ex12"
var
num1, num2, num3: inteiro
ordena1, ordena2, ordena3: inteiro
inicio
escreva("Digite o primeiro número: ")
leia(num1)
escreva("Digite o segundo número: ")
leia(num2)
escreva("Digite o terceiro número: ")
leia(num3)
se (num1 = num2) e (num2 = num3) entao
escreva("Favor digitar números distintos")
senao
se num1 > num2 entao
se num3 > num1 entao
ordena3 <- num3
ordena2 <- num1
ordena1 <- num2
senao
se num3 > num2 entao
ordena3 <- num1
ordena2 <- num3
ordena1 <- num2
senao
ordena3 <- num1
ordena2 <- num2
ordena1 <- num3
fimse
fimse
senao
se num3 > num2 entao
ordena3 <- num3
ordena2 <- num2
ordena1 <- num1
senao
se num3 > num1 entao
ordena3 <- num2
ordena2 <- num3
ordena1 <- num1
senao
ordena3 <- num2
ordena2 <- num1
ordena1 <- num3
fimse
fimse
fimse
escreval("Os números em ordem crescente são: ")
escreval(">",ordena1)
escreval(">",ordena2)
escreval(">",ordena3)
fimse
fimalgoritmo

13. Faça um algoritmo que receba o nome, a idade, o sexo e salário fixo de um
funcionário. Mostre o nome e o salário líquido:
algoritmo "ex13"
var
nome, sexo: caractere
idade: inteiro
salario: real
inicio
escreva("Digite o nome do funcionário: ")
leia(nome)
escreva("Digite o sexo (F/M): ")
leia(sexo)
escreva("Digite a idade: ")
leia(idade)
escreva("Digite o salário: ")
leia(salario)
se sexo = "M" entao
se idade >= 30 entao
salario <- salario + 100
senao
salario <- salario + 50
fimse
senao
se idade >= 30 entao
salario <- salario + 200
senao
salario <- salario + 80
fimse
fimse
limpatela
escreval(">>> Nome: ",nome)
escreval(">>> Salário: ",salario)
fimalgoritmo
Lista de Exercícios
1) Ler 80 números e ao final informar quantos número(s) est(á)ão no intervalo entre 10
(inclusive) e 150 (inclusive).

algoritmo "ex1"
var
x, num, intervalo: inteiro
inicio
x<-1
intervalo<-0
enquanto (x<=10) faca
escreva("Digite um número: ")
leia(num)
se (num >= 10) e (num <= 150) entao
intervalo <- intervalo + 1
fimse
x<-x+1
fimenquanto
escreval("Ao total, foram digitados ",intervalo," números no intervalo entre 10 e 150")
fimalgoritmo

2) Faça um algoritmo que receba a idade de 75 pessoas e mostre mensagem informando


“maior de idade” e “menor de idade” para cada pessoa. Considere a idade a partir de 18
anos como maior de idade.

algoritmo "ex2"
var
x, idade: inteiro
inicio
x<-1
enquanto (x<=75) faca
escreva("Digite a idade: ")
leia(idade)
se idade >= 18 entao
escreval("Maior de idade!")
senao
escreval("Menor de idade!")
fimse
x<-x+1
fimenquanto
fimalgoritmo

3) Escrever um algoritmo que leia o nome e o sexo de 56 pessoas e informe o nome e se ela é
homem ou mulher. No final informe total de homens e de mulheres.

algoritmo "ex3"
var
nome, sexo: caractere
x, h, m: inteiro
inicio
h<-0
m<-0
x<-1
enquanto (x<=56) faca
limpatela
escreva("Digite o nome: ")
leia(nome)
escreva("H - Homem ou M - Mulher: ")
leia(sexo)
escolha sexo
caso "H"
h <- h + 1
caso "M"
m <- m + 1
outrocaso
escreval("Sexo só pode ser H ou M!")
fimescolha
x<-x+1
fimenquanto
limpatela
escreval("Foram inseridos",h," Homens")
escreval("Foram inseridos",m," Mulheres")
fimalgoritmo

4) A concessionária de veículos “CARANGO VELHO” está vendendo os seus veículos com


desconto. Faça um algoritmo que calcule e exiba o valor do desconto e o valor a ser pago
pelo cliente de vários carros. O desconto deverá ser calculado de acordo com o ano do
veículo. Até 2000 - 12% e acima de 2000 - 7%. O sistema deverá perguntar se deseja
continuar calculando desconto até que a resposta seja: “(N) Não”. Informar total de carros
com ano até 2000 e total geral.

algoritmo "ex4"
var
opc: caractere
ano, total, total2000: inteiro
valor, valorFinal, desconto: real
inicio
total2000 <- 0
total <- 0
opc <- "S"
enquanto (opc <> "N") faca
limpatela
escreva("Digite o valor do carro: ")
leia(valor)
escreva("Digite o ano do carro: ")
leia(ano)
se ano <= 2000 entao
desconto <- 0.12
total2000 <- total2000 + 1
total <- total + 1
senao
desconto <- 0.07
total <- total + 1
fimse
desconto <- desconto * valor
valorFinal <- valor - desconto
escreval("O valor do carro com desconto é de: ",valorFinal)
escreval("O valor do desconto é de: ",desconto)
escreval("")
opc<-" "
enquanto (opc <> "S") e (opc <> "N") faca
escreva("Deseja continuar calculando? (S) Sim - (N) Não : ")
leia(opc)
fimenquanto
fimenquanto
escreval("Foram calculados",total2000," carro(s) com ano até 2000")
escreval("Total geral: ",total)
fimalgoritmo
5) Escrever um algoritmo que leia os dados de “N” pessoas (nome, sexo, idade e saúde) e
informe se está apta ou não para cumprir o serviço militar obrigatório. Informe os totais.

algoritmo "ex5"
var
idade,totApto, total: inteiro
nome, sexo, saude, opc: caractere
inicio
total <- 0
totApto <- 0
opc <- "S"
enquanto (opc = "S") faca
limpatela
escreva("Digite o nome: ")
leia(nome)
escreva("Digite o sexo (M/F): ")
leia(sexo)
escreva("Digite a idade: ")
leia(idade)
escreval("Digite o estado de saúde: ")
escreva("(B) Bom - (R) - Ruim - ")
leia(saude)
se (sexo = "M") e (idade >= 18) e (saude = "B") entao
escreval(nome," esta apto para o serviço militar")
totApto <- totApto + 1
fimse
total <- total + 1
opc <- " "
enquanto (opc <> "S") e (opc <> "N") faca
escreval("Deseja informar mais uma Pessoa (S/N)? ")
leia(opc)
fimenquanto
fimenquanto
limpatela
escreval("Resumo geral: ")
escreval("Foram filtrados: ",total," pessoas")
escreval("Aptos: ",totApto)
escreval("")
fimalgoritmo

6) Faça um algoritmo que receba o preço de custo e o preço de venda de 40 produtos. Mostre
como resultado se houve lucro, prejuízo ou empate para cada produto. Informe média de
preço de custo e do preço de venda.

algoritmo "ex6"
var
x: inteiro
precoVenda, precoCusto: real
mediaCusto, mediaVenda: real
inicio
mediaCusto <- 0
mediaVenda <- 0
x<-1
enquanto (x<=40) faca
escreva("Digite o preço de custo: ")
leia(precoCusto)
mediaCusto <- mediaCusto + precoCusto
escreva("Digite o preço de venda: ")
leia(precoVenda)
mediaVenda <- mediaVenda + precoVenda

se precoVenda < precoCusto entao


escreval("Houve prejuízo na venda")
fimse
se precoVenda = precoCusto entao
escreval("Houve empate na venda")
fimse
se precoVenda > precoCusto entao
escreval("Houve lucro na venda")
fimse
x<-x+1
fimenquanto
escreval("A média de preço de custo foi: ",mediaCusto/40)
escreval("A média de preço de venda foi: ",mediaVenda/40)
fimalgoritmo

7) Faça um algoritmo que receba “N” números e mostre positivo, negativo ou zero para cada
número.

algoritmo "ex7"
var
numero: inteiro
opc: caractere
inicio
opc <- "S"
enquanto (opc = "S") faca
escreva("Digite um número: ")
leia(numero)
se numero > 0 entao
escreval("Positivo")
fimse
se numero = 0 entao
escreval("O número é igual a 0")
fimse
se numero < 0 entao
escreval("Negativo")
fimse
opc <- " "
enquanto (opc <> "S") e (opc <> "N") faca
escreva("Deseja continuar digitando mais um número? (S/N) ")
leia(opc)
fimenquanto
fimenquanto
fimalgoritmo

8) A concessionária de veículos “CARANGO” está vendendo os seus veículos com desconto.


Faça um algoritmo que calcule e exiba o valor do desconto e o valor a ser pago pelo cliente.
O desconto deverá ser calculado sobre o valor do veículo de acordo com o combustível
(álcool – 25%, gasolina – 21% ou diesel –14%). Com valor do veículo zero encerra entrada
de dados. Informe total de desconto e total pago pelos clientes.

algoritmo "ex8"
var
desconto, valorPago, valorVeiculo: real
totalDesconto, totalPago: real
combustivel: caractere
inicio
totalDesconto <- 0
totalPago <- 0
valorVeiculo <- 1
enquanto valorVeiculo <> 0 faca
escreva("Digite o valor do veículo (Digite valor ZERO para sair do Programa): ")
leia(valorVeiculo)
se valorVeiculo <> 0 entao
escreval("Digite o combustível")
escreva("(G)asolina / (A)lcool / (D)iesel: ")
leia(combustivel)
escolha combustivel
caso "A"
desconto <- 0.25 * valorVeiculo
caso "G"
desconto <- 0.21 * valorVeiculo
caso "D"
desconto <- 0.14 * valorVeiculo
outrocaso
escreval("Combustível inválido!")
escreval("Não haverão descontos!")
desconto <- 0
fimescolha
valorPago <- valorVeiculo - desconto
totalDesconto <- totalDesconto + desconto
totalPago <- totalPago + valorPago
escreval(" ")
escreval("Desconto no veículo: ",desconto)
escreval("Valor total a ser pago: ",valorPago)
escreval(" ")
fimse
fimenquanto
limpatela
escreval("Resumo geral: ")
escreval("Total de descontos: ",totalDesconto)
escreval("Total Pago pelos clientes: ",totalPago)
fimalgoritmo

9) Escrever um algoritmo para uma empresa que decide dar um reajuste a seus 584
funcionários de acordo com os seguintes critérios:
a) 50% para aqueles que ganham menos do que três salários mínimos;
b) 20% para aqueles que ganham entre três até dez salários mínimos;
c) 15% para aqueles que ganham acima de dez até vinte salários mínimos;
d) 10% para os demais funcionários.
Leia o nome do funcionário, seu salário e o valor do salário mínimo. Calcule o seu novo
salário reajustado. Escrever o nome do funcionário, o reajuste e seu novo salário. Calcule
quanto à empresa vai aumentar sua folha de pagamento.

algoritmo "ex9"
var
salarioMinimo, salario, reajuste, novoSalario, folha, novaFolha: real
nome: caractere
x: inteiro
inicio
folha <- 0
novaFolha <- 0
escreval(">>>>>>>> Sistema de reajuste salarial <<<<<<<<")
escreva("Digite o valor atual do salário mínimo: ")
leia(salarioMinimo)
x <- 1
enquanto (x <= 584) faca
escreval(" ")
escreva("Digite o nome: ")
leia(nome)
escreva("Digite o salário: ")
leia(salario)
se (salario < salarioMinimo * 3) entao
reajuste <- 0.50 // Reajuste de 50%
fimse
se (salario >= salarioMinimo * 3) e (salario <= salarioMinimo * 10) entao
reajuste <- 0.20 // Reajuste de 20%
fimse
se (salario > salarioMinimo * 10) e (salario <= salarioMinimo * 20) entao
reajuste <- 0.15 // Reajuste de 15%
fimse
se (salario > salarioMinimo * 20) entao
reajuste <- 0.10 // Reajuste de 10%
fimse
folha <- folha + salario // Folha de pagamento antiga
novoSalario <- salario + (reajuste * salario) // Salário reajustado
novaFolha <- novaFolha + novoSalario // Nova folha de pagamento
escreval(" ")
escreval(">>> Nome: ",nome)
escreval(">>> Reajuste = " , reajuste * 100, " %: ", reajuste * salario)
escreval(">>> Novo salário: ",novoSalario)
x<-x+1
fimenquanto
escreval("")
escreval("A empresa aumentou a folha de pagamento em: ",novaFolha - folha," Reais")
fimalgoritmo

10) Faça um algoritmo que calcule o valor da conta de luz de 10 pessoas. Sabe-se que o
cálculo da conta de luz segue a tabela abaixo:
Tipo de Cliente -> Valor do KW/h
1 (Residência) -> 0,60
2 (Comércio) -> 0,48
3 (Indústria) -> 1,29
No final mostre a somatória e média das contas em R$.

algoritmo "ex10"
var
residencia, kw, x: inteiro
consumo, TotalConsumo: real
inicio
TotalConsumo <- 0
x <- 1
enquanto (x<=10) faca
escreval("Informe o tipo de residência: ")
escreval("1 - Residência")
escreval("2 - Comércio")
escreval("3 - Indústria")
escreva("Opção -> ")
leia(residencia)
escreva("Informe a quantidade de KW gastos no mês: ")
leia(kw)
escolha residencia
caso 1
consumo <- kw * 0.60
caso 2
consumo <- kw * 0.48
caso 3
consumo <- kw * 1.29
outrocaso
consumo <- kw * 0
fimescolha
escreval("Valor da conta: ",consumo)
escreval(" ")
TotalConsumo <- TotalConsumo + consumo
x<-x+1
fimenquanto
escreval(" ")
escreval("Total de Consumo : ",TotalConsumo)
escreval("Média de Consumo : ",TotalConsumo / 10)
fimalgoritmo
Lista de Exercícios – Vetores

1. Escreva um algoritmo que leia um vetor de 20 elementos inteiros. A seguir, conte quantos
valores pares existem no vetor.

algoritmo "Ex1"

var vet : vetor[1..20] de inteiro


i,cont : inteiro
inicio

// Leitura dos valores do vetor


para i de 1 ate 20 faca
escreva("Digite o valor do elemento ",i,":")
leia(vet[i])
fimpara

cont <- 0

para i de 1 ate 20 faca


se (vet[i] % 2 = 0) entao
cont <- cont + 1
fimse
fimpara

escreval("A quantidade de valores pares no vetor é: ",cont)

fimalgoritmo

2. Escreva um algoritmo que leia um vetor de 7 números inteiros. Encontre e mostre o menor
elemento e sua posição no vetor.

algoritmo "Ex2"

var vet : vetor[1..7] de inteiro


i,menor,posicao : inteiro
inicio

// Leitura dos valores do vetor


para i de 1 ate 7 faca
escreva("Digite o valor do elemento ",i,":")
leia(vet[i])
fimpara

posicao <- 0

para i de 1 ate 7 faca


se (i = 1) entao
menor <- vet[i]
posicao <- i
senao
se (vet[i] < menor) entao
menor <- vet[i]
posicao <- i
fimse
fimse
fimpara

escreval("O menor elemento do vetor é ",menor)


escreval("A posicao do menor elemento é ",posicao)

fimalgoritmo
3. Escreva um algoritmo que leia um vetor de 40 posições e atribua valor 0 para todos os
elementos que possuírem valores negativos.

algoritmo "Ex3"

var vet : vetor[1..40] de inteiro


inicio

// Leitura dos valores do vetor


para i de 1 ate 40 faca
escreva("Digite o valor do elemento ",i,":")
leia(vet[i])
fimpara

posicao <- 0

para i de 1 ate 40 faca


se (vet[i] < 0) entao
vet[i] <- 0
fimse
fimpara

fimalgoritmo

4. Escreva um algoritmo que leia um vetor de 50 números inteiros. A seguir, copie todos os
valores do primeiro vetor para um segundo vetor de mesmo tamanho, multiplicando os valores
por 2.

algoritmo "Ex4"

var vet1 : vetor[1..50] de inteiro


vet2 : vetor[1..50] de inteiro
i : inteiro
inicio

// Leitura dos valores do vetor


para i de 1 ate 50 faca
escreva("Digite o valor do elemento ",i,":")
leia(vet1[i])
fimpara

// copiar os valores para o segundo vetor


para i de 1 ate 50 faca
vet2[i] <- vet1[i] * 2
fimpara

//mostra o vetor 2
para i de 1 ate 50 faca
escreval("Vetor 2 Elemento ",i," - Valor: ",vet2[i])
fimpara

fimalgoritmo
5. Elabore um algoritmo que leia um vetor de 100 números inteiros. A seguir copie para um
segundo vetor somente os números pares inseridos no primeiro vetor.

algoritmo "Ex5"

var vet1 : vetor[1..100] de inteiro


vet2 : vetor[1..100] de inteiro
i,j : inteiro
inicio

// Leitura dos valores do vetor


para i de 1 ate 100 faca
escreva("Digite o valor do elemento ",i,":")
leia(vet1[i])
fimpara

// copiar os valores pares para o segundo vetor


j <- 1
para i de 1 ate 100 faca
se (vet1[i] % 2 = 0) entao
vet2[j] <- vet1[i]
j <- j + 1
fimse
fimpara

//mostra o vetor 2
para i de 1 ate 100 faca
escreval("Vetor 2 Elemento ",i," - Valor: ",vet2[i])
fimpara

fimalgoritmo
6. Elabore um algoritmo que leia um vetor de 20 posições e em seguida um valor X qualquer. Seu
programa deverá fazer uma busca pelo valor de X no vetor lido e informar a posição em que
foi encontrado ou se não foi encontrado.

algoritmo "Ex6"

var vet : vetor[1..20] de inteiro


i,num,posicao : inteiro
encontrou : logico
inicio

// Leitura dos valores do vetor


para i de 1 ate 20 faca
escreva("Digite o valor do elemento ",i,":")
leia(vet[i])
fimpara

escreva("Informe o número a ser localizado no vetor: ")


leia(num)

encontrou <- falso

// copiar os valores pares para o segundo vetor


para i de 1 ate 20 faca
se (vet[i] = num) entao
posicao <- i
encontrou<- verdadeiro
interrompa
fimse
fimpara

se (encontrou) entao
escreval("A posicao do número ",num, " no vetor é ",posicao)
senao
escreval("O número ",num," não foi localizado no vetor!")
fimse

fimalgoritmo
7. Escreva um algoritmo que leia 2 vetores de 20 números inteiros. Em seguida, copie para um
terceiro vetor os 10 primeiros elementos do primeiro vetor e os 10 últimos elementos do
segundo vetor.

algoritmo "Ex7"

var vet1 : vetor[1..20] de inteiro


vet2 : vetor[1..20] de inteiro
vet3 : vetor[1..20] de inteiro
i,j : inteiro
inicio

// Leitura dos valores do vetor 1


para i de 1 ate 20 faca
escreva("Vetor 1 - Digite o valor do elemento ",i,":")
leia(vet1[i])
fimpara

// Leitura dos valores do vetor 2


para i de 1 ate 20 faca
escreva("Vetor 2 - Digite o valor do elemento ",i,":")
leia(vet2[i])
fimpara

// copiar os valores para o terceiro vetor

para i de 1 ate 20 faca


se (i <= 3) entao
vet3[i] <- vet1[i]
senao
vet3[i] <- vet2[i]
fimse
fimpara

//mostra o vetor 3
para i de 1 ate 20 faca
escreval("Vetor 3 Elemento ",i," - Valor: ",vet3[i])
fimpara

fimalgoritmo
Lista de Exercícios – Matriz

1. Leia uma matriz 10 x 10 e escreva a localização (linha e a coluna) do maior valor.

algoritmo "Ex1"
var
mat: vetor[1..10,1..10] de inteiro
L,C,Maior,L_Maior, C_Maior:inteiro
inicio

Maior <-0
L_Maior <- 0
C_Maior <- 0

//Leitura da Matiz
para L de 1 ate 10 faca
para C de 1 ate 10 faca
escreva("Digite o valor do elemento da linha ",L,", coluna ",C,": ")
leia(mat[L,C])
fimpara
//Pula uma linha em branco
escreval("")
fimpara

//Percorre a matriz para realizar o exercicio


para L de 1 ate 10 faca
para C de 1 ate 10 faca
se (mat[L,C] > Maior) entao
Maior <- mat[L,C]
L_Maior <- L
C_Maior <- C
fimse
fimpara
fimpara

escreval("O maior valor encontrado foi ",Maior," que está na linha ",L_Maior, " coluna ",C_Maior)

fimalgoritmo
2. Leia uma matriz 6 x 6, conte e escreva quantos valores maiores que 10 ela possui.

algoritmo "Ex2"
var
mat: vetor[1..6,1..6] de inteiro
L,C,Qtde:inteiro
inicio

Qtde <-0

//Leitura da Matiz
para L de 1 ate 6 faca
para C de 1 ate 6 faca
escreva("Digite o valor do elemento da linha ",L,", coluna ",C,": ")
leia(mat[L,C])
fimpara
//Pula uma linha em branco
escreval("")
fimpara

//Percorre a matriz para realizar o exercicio


para L de 1 ate 6 faca
para C de 1 ate 6 faca
se (mat[L,C] > 10) entao
Qtde <- Qtde + 1
fimse
fimpara
fimpara

escreval("A quantidade de elementos encontrados maior que 10 é ",Qtde)

fimalgoritmo
3. Leia uma matriz 20 x 20. Leia também um valor X. O programa deverá fazer uma busca desse valor na
matriz e, ao final escrever a localização (linha e coluna) ou uma mensagem de “não encontrado”.

algoritmo "Ex3"
var
mat: vetor[1..20,1..20] de inteiro
L,C,L1,C1,Valor:inteiro
inicio

L1 <- 0
C1 <- 0

//Leitura da Matiz
para L de 1 ate 20 faca
para C de 1 ate 20 faca
escreva("Digite o valor do elemento da linha ",L,", coluna ",C,": ")
leia(mat[L,C])
fimpara
//Pula uma linha em branco
escreval("")
fimpara

escreva("Informe um valor a ser localizado: ",Valor)


Leia(Valor)

//Percorre a matriz para realizar o exercicio


para L de 1 ate 20 faca
para C de 1 ate 20 faca
se (mat[L,C] = Valor) entao
L1 <- L
C1 <- C
interrompa
fimse
fimpara
fimpara

// Verifica se localizou o valor na matriz


se (L1 > 0) e (C1 > 0) entao
escreval("O valor foi localizado na linha ",L1,", coluna ",C1)
senao
escreval("Valor nao localizado na matriz")
fimse

fimalgoritmo
4. Leia uma matriz 4 x 4 e troque os valores da 1ª.linha pelos da 4ª.linha, vice-e-versa. Escrever ao final a
matriz obtida.

algoritmo "Ex4"
var
mat: vetor[1..4,1..4] de inteiro
vet: vetor[1..4] de inteiro
L,C:inteiro
inicio

//Leitura da Matiz
para L de 1 ate 4 faca
para C de 1 ate 4 faca
escreva("Digite o valor do elemento da linha ",L,", coluna ",C,": ")
leia(mat[L,C])
fimpara
//Pula uma linha em branco
escreval("")
fimpara

//Move os valores da primeira linha da matriz para nosso vetor auxiliar


para C de 1 ate 4 faca
vet[C] <- mat[1,C]
fimpara

//Move os valores da última linha da matriz para os elementos da primeira linha


para C de 1 ate 4 faca
mat[1,C] <- mat[4,C]
fimpara

//Agora Move os valores do vetor para a quarta


para C de 1 ate 4 faca
mat[4,C] <- vet[C]
fimpara

//Imprime a matriz formada apos as mudancas


para L de 1 ate 4 faca
para C de 1 ate 4 faca
escreval("Valor da linha ",L,", Coluna ",C,": ",mat[L,C])
fimpara
fimpara

fimalgoritmo
5. Leia uma matriz 6 x 6 e atribuir o valor 0 para os valores negativos encontrados.

algoritmo "Ex5"
var
mat: vetor[1..6,1..6] de inteiro
L,C:inteiro
inicio

//Leitura da Matiz
para L de 1 ate 6 faca
para C de 1 ate 6 faca
escreva("Digite o valor do elemento da linha ",L,", coluna ",C,": ")
leia(mat[L,C])
fimpara
//Pula uma linha em branco
escreval("")
fimpara

//Percorre a matriz para realizar a operacao


para L de 1 ate 6 faca
para C de 1 ate 6 faca
se (mat[L,C] < 0) entao
mat[L,C] <- 0
fimse
fimpara
fimpara

//Imprime a matriz formada apos as mudancas


para L de 1 ate 6 faca
para C de 1 ate 6 faca
escreval("Valor da linha ",L,", Coluna ",C,": ",mat[L,C])
fimpara
fimpara

fimalgoritmo