Prévia do material em texto
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 2/24
Conteúdo [Mostrar]
Exercícios de VisuAlG para Aprender Lógica
[wikibox lang = “pt”]Visualg[/wikibox]
Lista
Esta lista foi disponibilizada por Flaviano O. Silva, e as
respostas dos exercícios, por Bruno Barbosa, no formato .alg
que podem ser abertos, estudados e testados no VisualG. É
uma excelente oportunidade para que você entenda como
programar. A lista completa para você baixar pode ser vista
clicando sobre os links nos nomes dos autores ou em
Documents VisualG
Exercício 1
Veja no Wikipédia
Faça um algoritmo que receba dois números e exiba o resultado da sua soma.
VISUALG – EXERCÍCIOS PARA TREINAR E
APRENDER
AGOSTO 9, 2014 | MARCOS
1
2
3
4
5
6
7
8
9
10
11
12
13
algoritmo "ex1"
// Função : Faça um algoritmo que receba dois números e exiba o resultado da sua soma.
// Autor :
// Data : 30/11/2010
// Seção de Declarações
var
x, y: inteiro
inicio
// Seção de Comandos
escreval("Digite o primeiro número: ")
leia(x)
escreval("Digite o segundo número: ")
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 3/24
Exercício 2
Exercício 3
Exercício 4
14
15
16
17
leia(y)
escreva("A soma dos números é: ",x+y)
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
algoritmo "ex2"
// Função : 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.
// Autor :
// Data : 30/11/2010
// Seção de Declarações
var
x, y: real
inicio
// Seção de Comandos
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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
algoritmo "ex3"
// Função : 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.
// Autor :
// Data : 30/11/2010
// Seção de Declarações
var
distancia, combustivel: real
inicio
// Seção de Comandos
escreval("========== Cálculo de consumo médio de combustível =========")
escreva("Digite a distância pecorrida: ")
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
1
2
3
4
5
6
7
8
algoritmo "ex4"
// Função : 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
// Autor :
// Data : 30/11/2010
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 4/24
Exercício 5
Exercício 6
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// Seção de Declarações
var
nome: caractere
salario: real
vendas: real
comissao: real
salarioFinal: real
inicio
// Seção de Comandos
escreval("<><><><><> Sistema de gestão de vendedores <><><><><>")
escreva(">>> Digite o nome do vendedor: ")
leia(nome)
escreva(">>> Digite o salário: ")
leia(salario)
escreva(">>> Informe a quantidade de vendas deste no mês: ")
leia(vendas)
// Cálculo da comissão e salário final
comissao >>>>>>>>> RESUMO <<<<<<<<<<")
escreval("-- Nome: ",nome)
escreval("-- Salário: ",salario)
escreval("-- Salário Final (salário + comissão): ",salarioFinal)
escreval(">>>>>>>>>><><><><><<<<<<<<<<")
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
algoritmo "ex5"
// Função : 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)
// Autor :
// Data : 30/11/2010
// Seção de Declarações
var
aluno: caractere
notas: vetor[1..3] de real
x: inteiro
media: real
inicio
// Seção de Comandos
escreval("============== Média de alunos ==============")
escreva("Digite o nome do aluno: ")
leia(aluno)
para x de 1 ate 3 faca
escreva("Digite a ",x,"º nota ")
leia(notas[x])
fimpara
media >> Média: ",media)
escreval("=======================================")
fimalgoritmo
1
2
3
4
algoritmo "ex6"
// Função : Ler dois valores para as variáveis A e B, e efetuar as trocas
// dos valores de forma que a variável A passe a possuir o
// valor da variável B e a variável B passe a possuir o valor da variável
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 5/24
Exercício 7
Exercício 8
Exercício 9
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// A. Apresentar os valores trocados.
// Autor :
// Data : 30/11/2010
// Seção de Declarações
var
a, b, troca: inteiro
inicio
// Seção de Comandos
escreva("Digite o valor(numérico) da variável A: ")
leia(a)
escreva("Digite o valor(numérico) da variável B: ")
leia(b)
troca
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
algoritmo "ex7"
// Função : Ler uma temperatura em graus Celsius e apresentá-la convertida
// em graus Fahrenheit. A fórmula de conversão é:
// F=(9*C+160) / 5, sendo F a temperatura em Fahrenheit e C a temperatura em Celsius.
// Autor :
// Data : 30/11/2010
// Seção de Declarações
var
cel, far: real
inicio
// Seção de Comandos
escreval("=-=-=-=-=- Tabela de conversão: Celcius -> Fahrenheit -=-=-=-=-=")
escreva("Digite a temperatura em Celcius: ")
leia(cel)
far
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
algoritmo "ex8"
// Função : 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.
// Autor :
// Data : 30/11/2010
// Seção de Declarações
var
rs, us, cotacao, dolaDisponivel: real
inicio
// Seção de Comandos
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
1
2
3
4
algoritmo "ex9"
// Função : 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.
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 6/24
Exercício 10
Exercício 11
Exercício 12
5
6
7
8
9
10
11
12
13
14
15
16
17
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
correcao, deposito: real
inicio
// Seção de Comandos
escreval("Sistema de depósito do Banco do Oeste")
escreva("Digite o valor depositado: ")
leia(deposito)
correcao
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
algoritmo "ex10"
// Função : 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.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
compra, prestacao: real
inicio
// Seçãode Comandos
escreval("========== Loja Mamão com Açúcar ==========")
escreva("Digite o valor da compra: ")
leia(compra)
prestacao
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
algoritmo "ex11"
// Função : 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.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
custo, venda, percent: real
inicio
// Seção de Comandos
escreva("Digite o custo do produto: ")
leia(custo)
escreva("Digite o percentual para venda: ")
leia(percent)
percent
1
2
3
4
5
6
7
algoritmo "ex12"
// Função : 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
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 7/24
Exercício 13
Exercício 14
Exercício 15
8
9
10
11
12
13
14
15
16
17
18
19
20
// leia o custo de fábrica de um carro e informe o custo ao consumidor do mesmo.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
custoFabrica, custoFinal: real
inicio
// Seção de Comandos
escreva("Informe o custo de fábrica do veículo: ")
leia(custoFabrica)
custoFinal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
algoritmo "ex13"
// Função : Faça um algoritmo que receba um número e mostre uma mensagem
// caso este número seja maior que 10.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
numero: inteiro
inicio
// Seção de Comandos
escreva("Digite um número: ")
leia(numero)
se numero > 10 entao
escreval("O número é maior que 10")
fimse
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
algoritmo "ex14"
// Função : Escrever um algoritmo que leia dois valores inteiro distintos e
// informe qual é o maior.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
num1, num2: inteiro
inicio
// Seção de Comandos
escreva("Digite o primeiro número: ")
leia(num1)
escreva("Digite o segundo número: ")
leia(num2)
se num1 > num2 entao
escreva("O primeiro número ",num1," é maior que o segundo",num2)
senao
escreva("O segundo número",num2," é maior que o primeiro",num1)
fimse
fimalgoritmo
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 8/24
Exercício 16
Exercício 17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
algoritmo "ex15"
// Função : Faça um algoritmo que receba um número e diga se este número
// está no intervalo entre 100 e 200.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
numero: inteiro
inicio
// Seção de Comandos
escreva("Digite um número: ")
leia(numero)
se numero >= 100 entao
se numero <= 200 entao
escreval("O número está no intervalo entre 100 e 200")
senao
escreval("O número não está no intervalo entre 100 e 200")
fimse
senao
escreval("O número não está no intervalo entre 100 e 200")
fimse
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
algoritmo "ex16"
// Função : 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 entre 5.1 a 6.9).
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
nome: caractere
n1, n2, n3, media: real
inicio
// Seção de Comandos
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 = 7 entao
escreval("Aluno aprovado!")
senao
se media <= 5 entao
escreval("Aluno reprovado!")
senao
escreval("Aluno em recuperação...")
fimse
fimse
fimalgoritmo
1
2
algoritmo "ex17"
// Função : Ler 80 números e ao final informar quantos número(s) est(á)ão
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 9/24
Exercício 18
Exercício 19
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// no intervalo entre 10 (inclusive) e 150 (inclusive).
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
x, num, intervalo: inteiro
inicio
// Seção de Comandos
para x de 1 ate 80 faca
escreva("Digite um número: ")
leia(num)
se num >= 10 entao
se num <= 150 entao
intervalo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
algoritmo "ex18"
// Função : 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.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
x, idade: inteiro
inicio
// Seção de Comandos
para x de 1 ate 75 faca
escreva("Digite a idade: ")
leia(idade)
se idade >= 18 entao
escreval("Fulano é maior de idade!")
fimse
fimpara
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
algoritmo "ex19"
// Função : 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.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
nome, sexo: caractere
x, h, m: inteiro
inicio
// Seção de Comandos
para x de 1 ate 5 faca
limpatela
escreva("Digite o nome: ")
leia(nome)
escreva("H - Homem ou M - Mulher: ")
leia(sexo)
escolha sexo
caso "H"
h
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 10/24
Exercício 20
Exercício 21
Exercício 22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
algoritmo "ex20"
// Função : 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: \u201c(N) Não\u201d . Informar total de carros com
// ano até 2000 e total geral.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
programa, opc: caractere
ano, total, total2000: inteiro
valor, valorFinal, desconto: real
inicio
// Seção de Comandos
programa <- "S"
enquanto programa <> "N" faca
limpatela
escreva("Digite o valor do carro: ")
leia(valor)
escreva("Digite o ano do carro: ")
leia(ano)
se ano <= 2000 entao
desconto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
algoritmo "ex21"
// Função : 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.
// Autor :
// Data : 1/12/2010
//Seção de Declarações
var
programa, idade, apto: inteiro
nome, sexo, saude, opc: caractere
totApto, total: inteiro
inicio
// Seção de Comandos
programa "B" entao
apto
1
2
3
4
5
6
7
8
9
10
11
12
algoritmo "ex22"
// Função : 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 media de
// preço de custo e do preço de venda.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
x: inteiro
precoVenda, precoCusto: real
mediaCusto, mediaVenda: real
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 11/24
Exercício 23
Exercício 24
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
inicio
// Seção de Comandos
para x de 1 ate 40 faca
limpatela
escreva("Digite o preço de custo: ")
leia(precoCusto)
mediaCusto precoCusto entao
escreval("Houve lucro na venda")
fimse
fimse
fimpara
limpatela
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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
algoritmo "ex23"
// Função : Faça um algoritmo que receba um número e mostre uma mensagem
// caso este número sege maior que 80, menor
// que 25 ou igual a 40.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
numero: inteiro
inicio
// Seção de Comandos
escreva("Digite um número: ")
leia(numero)
se numero > 80 entao
escreval("O número é maior que 80")
senao
se numero < 25 entao
escreval("O número é menor que 25")
senao
se numero = 40 entao
escreval("O número é igual a 40")
fimse
fimse
fimse
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
algoritmo "ex24"
// Função : Faça um algoritmo que receba N números e mostre positivo,
// negativo ou zero para cada número.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
programa, numero: inteiro
opc: caractere
inicio
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 12/24
Exercício 25
Exercício 26
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Seção de Comandos
programa 0 entao
escreval("Positivo")
senao
se numero = 0 entao
escreval("O número é igual a 0")
fimse
se numero < 0 entao
escreval("Negativo")
fimse
fimse
escreva("Deseja finalizar? (S/N) ")
leia(opc)
se opc = "S" entao
programa
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
algoritmo "ex25"
// Função : Faça um algoritmo que leia dois números e identifique se são
// iguais ou diferentes. Caso eles sejam iguais imprima
// uma mensagem dizendo que eles são iguais. Caso sejam diferentes, informe
// qual número é o maior, e uma
// mensagem que são diferentes.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
num1, num2: inteiro
inicio
// Seção de Comandos
escreva("Digite o primeiro número: ")
leia(num1)
escreva("Digite o segundo número: ")
leia(num2)
se num1 = num2 entao
escreval("Os números são iguais!")
senao
se num1 > num2 entao
escreval("O número",num1," é maior que o número",num2)
escreval("Eles são diferentes!!!")
senao
escreval("O número",num2," é maior que o número",num1)
escreval("Eles são diferentes!!!")
fimse
fimse
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
algoritmo "ex26"
// Função : Faça um algoritmo que leia um número de 1 a 5 e escreva por
// extenso. Caso o usuário digite um número que não
// esteja neste intervalo, exibir mensagem: número inválido.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
numero: inteiro
inicio
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 13/24
Exercício 27
Exercício 28
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Seção de Comandos
escreva("Digite um número de 1 a 5: ")
leia(numero)
escolha numero
caso 1
escreval("Um")
caso 2
escreval("Dois")
caso 3
escreval("Três")
caso 4
escreval("Quatro")
caso 5
escreval("Cinco")
outrocaso
escreval("Número Inválido!!!")
fimescolha
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
algoritmo "ex27"
// Função : 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 \u2013 25%, gasolina
// \u2013 21% ou diesel \u201314%). Com valor do veículo zero
// encerra entrada de dados. Informe total de desconto e total pago pelos clientes.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
desconto, valorPago, valorVeiculo: real
totalDesconto, totalPago: real
combustivel, opc: caractere
inicio
// Seção de Comandos
valorVeiculo 0 faca
limpatela
escreva("Digite o valor do veículo: ")
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
1
2
3
4
5
6
7
8
9
10
algoritmo "ex28"
// Função : 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
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 14/24
Exercício 29
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
// nome do funcionário, o reajuste e seu novo salário. Calcule quanto à
// empresa vai aumentar sua folha de pagamento.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
salarioMinimo, novoSalario, reajuste, reajusteTotal, folha, novaFolha, calc, salario: re
nome, opc: caractere
x: inteiro
inicio
// Seção de Comandos
opc <- "x"
escreval("<><><><><> Sistema de reajuste salarial <><><><><>")
escreva("Digite o valor atual do salário mínimo: ")
leia(salarioMinimo)
para x de 1 ate 584 faca
limpatela
escreva("Digite o nome: ")
leia(nome)
escreva("Digite o salário: ")
leia(salario)
calc >> Nome: ",nome)
escreval(">>> Reajuste = 50%: ",reajuste*salario)
escreval(">>> Novo salário: ",novoSalario)
escreval(">>> Tecle enter para continuar...")
leia(opc)
senao
calc >> Nome: ",nome)
escreval(">>> Reajuste = 20%: ",reajuste*salario)
escreval(">>> Novo salário: ",novoSalario)
escreval(">>> Tecleenter para continuar...")
leia(opc)
senao
calc >> Nome: ",nome)
escreval(">>> Reajuste = 15%: ",reajuste*salario)
escreval(">>> Novo salário: ",novoSalario)
escreval(">>> Tecle enter para continuar...")
leia(opc)
senao
reajuste >> Nome: ",nome)
escreval(">>> Reajuste = 10%: ",reajuste*salario)
escreval(">>> Novo salário: ",novoSalario)
escreval(">>> Tecle enter para continuar...")
leia(opc)
fimse
fimse
fimse
fimpara
escreval("")
escreval("A empresa aumentou a folha de pagamento em:",novaFolha - folha," Reais")
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
algoritmo "ex29"
// Função : Faça um algoritmo que receba o número do mês e mostre o mês
// correspondente. Valide mês inválido
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
mes: inteiro
inicio
// Seção de Comandos
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 15/24
Exercício 31
Exercício 32
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
escreval("Digite o número do mês: ")
leia(mes)
escolha mes
caso 1
escreval("Janeiro")
caso 2
escreval("Fevereiro")
caso 3
escreval("Março")
caso 4
escreval("Abril")
caso 5
escreval("Maio")
caso 6
escreval("Junho")
caso 7
escreval("Julho")
caso 8
escreval("Agosto")
caso 9
escreval("Setembro")
caso 10
escreval("Outubro")
caso 11
escreval("Novembro")
caso 12
escreval("Dezembro")
outrocaso
escreval("Mês inválido!")
fimescolha
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
algoritmo "ex31"
// Função : Escrever um algoritmo que leia três valores inteiros distintos
// e os escreva em ordem crescente
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
num1, num2, num3: inteiro
ordena: vetor[1..3] de inteiro
inicio
// Seção de Comandos
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 entao
ordena[3] num1 entao
ordena[3] num2 entao
ordena[3] num2 entao
ordena[3] num1 entao
ordena[3] ",ordena[1])
escreval(">",ordena[2])
escreval(">",ordena[3])
fimalgoritmo
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 16/24
Exercício 33
Exercício 34
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
algoritmo "ex32"
// Função : Dados três valores A, B e C, em que A e B são números reais e C
// é um caractere, pede-se para imprimir o resultado
// da operação de A por B se C for um símbolo de operador aritmético; caso
// contrário deve ser impressa uma
// mensagem de operador não definido. Tratar erro de divisão por zero.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
A, B: real
C: caractere
inicio
// Seção de Comandos
escreva("Digite o primeiro número: ")
leia(A)
escreva("Digite o segundo número: ")
leia(B)
escreva("Digite a operação desejada (+ - / *): ")
leia(C)
escolha C
caso "+"
escreval("A+B =",A+B)
caso "-"
escreval("A-B =",A-B)
caso "*" =
escreval("A*B =",A*B)
caso "/"
se B = 0 entao
escreval("Erro, um número não pode ser dividido por 0!")
senao
escreval("A/B =",A/B)
fimse
outrocaso
escreval("Operador não definido!")
fimescolha
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
algoritmo "ex33"
// Função : Escrever um algoritmo que leia três valores inteiros e
// verifique se eles podem ser os lados de um triângulo. Se
// forem, informar qual o tipo de triângulo que eles formam: equilátero,
// isóscele ou escaleno
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
la, lb, lc, triangulo: inteiro
inicio
// Seção de Comandos
escreva("Digite o lado A do triângulo: ")
leia(la)
escreva("Digite o lado B do triângulo: ")
leia(lb)
escreva("Digite o lado C do triângulo: ")
leia(lc)
se la < (lc+lb) entao
triangulo
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 17/24
Exercício 35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
algoritmo "ex34"
// Função : A escola \u201cAPRENDER\u201d faz o pagamento de seus
// professores por hora/aula. Faça um algoritmo que calcule e exiba o
// salário de um professor. Sabe-se que o valor da hora/aula segue a tabela abaixo:
// Professor Nível 1 R$12,00 por hora/aula
// Professor Nível 2 R$17,00 por hora/aula
// Professor Nível 3 R$25,00 por hora/aula
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
nivel, horas: inteiro
inicio
// Seção de Comandos
escreval(">>>>> Escola APRENDER <<<<<")
escreva("Digite o nível do professor (1/2/3): ")
leia(nivel)
escreva("Digite o número de horas trabalhadas: ")
leia(horas)
se nivel = 1 entao
escreval("O professor ganha",horas*12)
senao
se nivel = 2 entao
escreval("O professor ganha",horas*17)
senao
escreva("O professor ganha",horas*25)
fimse
fimse
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
algoritmo "ex35"
// Função : Elabore um algoritmo que, dada a idade de um nadador.
// Classifique-o em uma das seguintes categorias:
// Infantil A = 5 - 7 anos
// Infantil B = 8 - 10 anos
// juvenil A = 11- 13 anos
// juvenil B = 14 - 17 anos
// Sênior = 18 - 25 anos
// Apresentar mensagem “idade fora da faixa etária” quando for outro ano não contemplado
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
idade: inteiro
inicio
// Seção de Comandos
escreva("Digite a idade do nadador: ")
leia(idade)
escolha idade
caso 5,6,7
escreval("Infantil A")
caso 8,9,10
escreval("Infantil B")
caso 11,12,13
escreval("Juvenil A")
caso 14,15,16,17
escreval("Juvenil B")
caso 18,19,20,21,22,23,24,25
escreval("Sênior")
outrocaso
escreval("Idade fora da faixa etária")
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 18/24
Exercício 36
Exercício 38
33
34
35
fimescolha
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
algoritmo "ex36"
// Função : Faça um algoritmo que calcule o valor da conta de luz de uma
// pessoa. 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
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
residencia, kw: inteiro
consumo: real
inicio
// Seção de Comandos
escreval("Informe o tipo de residência: ")
escreval("1 - Residência")
escreval("2 - Comércio")
escreval("3 - Indústria")
leia(residencia)
escolha residencia
caso 1
escreva("Informe a quantidade de KW gastos no mês: ")
leia(kw)
consumo
1
2
3
4
5
6
7
8
9
1011
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
algoritmo "ex38"
// Função : Em um curso de Ciência da Computação a nota do estudante é
// calculada a partir de três notas atribuídas,
// respectivamente, a um trabalho de laboratório, a uma avaliação semestral // e a um ex
// a 10 e a nota final é a média ponderada das três notas mencionadas. A
// tabela abaixo fornece os pesos:
// Laboratório Peso
// Avaliação semestral Peso 3
// Exame final Peso 5
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
nota1, nota2, nota3: real
media: real
nome, classificacao: caractere
matricula: inteiro
inicio
// Seção de Comandos
escreva("Digite o nome: ")
leia(nome)
escreva("Informe a matrícula: ")
leia(matricula)
escreva("Digite a nota do trabalho de laboratório: ")
leia(nota1)
escreva("Digite a nota da avaliação semestral: ")
leia(nota2)
29/09/2017 VisualG – Exercícios para Treinar e Aprender | ParteOm
http://parteom.com.br/aprender/visualg/exercicios-visualg/visualg-lista-de-exercicios/ 19/24
Exercício 39
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
escreva("Digite a nota do exame final: ")
leia(nota3)
media = 8.10 entao
classificacao <- "A"
senao
se media >= 7.8 entao
classificacao <- "B"
senao
se media >= 6.7 entao
classificacao <- "C"
senao
se media >= 5.6 entao
classificacao <- "D"
fimse
fimse
fimse
fimse
se media < 5.6 entao
classificacao <- "R"
fimse
limpatela
escreval("Nome: ",nome)
escreval("Matrícula: ",matricula)
escreval("Nota final: ",media)
escreval("Classificação: ",classificacao)
fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
algoritmo "ex39"
// Função : Dado o nome de um estudante, com o respectivo número de
// matrícula e as três notas acima mencionadas,
// desenvolva um algoritmo para calcular a nota final e a classificação de
// cada estudante. A classificação é dada
// conforme a tabela abaixo:
// Nota Final Classificação
// [8,10] A
// [7,8] B
// [6,7] C
// [5,6] D
// [0,5] R
// Imprima o nome do estudante, com o seu número, nota final e classificação.
// Autor :
// Data : 1/12/2010
// Seção de Declarações
var
idade, grupo: inteiro
nome, grupoRisco: caractere
inicio
// Seção de Comandos
escreva("Digite o nome: ")
leia(nome)
escreva("Digite a idade: ")
leia(idade)
escreval("Informe o Grupo de risco: ")
escreval("(B)aixo / (M)édio / (A)lto ")
leia(grupoRisco)
se (idade >= 17) e (idade <= 70) entao
se idade <= 20 entao
escolha grupoRisco
caso "B"