Você está na página 1de 99

Exerccios de VisuAlG para Aprender Lgica

Veja no Wikipdia
[wikibox lang = pt]Visualg[/wikibox]
Lista

Esta lista foi disponibilizada por Flaviano O. Silva, e as respostas dos


exerccios, 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

Faa um algoritmo que receba dois nmeros e exiba o resultado da sua


soma.
Exerccio 1

algoritmo "ex1"
// Funo : Faa um algoritmo que receba dois nmeros e exiba o resultado
da sua soma.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
x, y: inteiro

inicio
// Seo de Comandos
escreval("Digite o primeiro nmero: ")
leia(x)
escreval("Digite o segundo nmero: ")
leia(y)
escreva("A soma dos nmeros : ",x+y)

fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
algoritmo "ex1"
// Funo : Faa um algoritmo que receba dois nmeros e exiba o resultado
da sua soma.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
x, y: inteiro

inicio
// Seo de Comandos
escreval("Digite o primeiro nmero: ")
leia(x)
escreval("Digite o segundo nmero: ")

leia(y)
escreva("A soma dos nmeros : ",x+y)

fimalgoritmo
Exerccio 2

algoritmo "ex2"
// Funo : Faa um algoritmo que receba dois nmeros e ao final mostre a
// soma, subtrao, multiplicao e a diviso dos nmeros lidos.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
x, y: real

inicio
// Seo de Comandos
escreva("Digite o primeiro nmero: ")
leia(x)
escreva("Digite o segundo nmero: ")
leia(y)
escreval("A soma : ",x+y)
escreval("A subtrao : ",x-y)
escreval("A multiplicao : ",x*y)
escreval("A diviso : ",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"
// Funo : Faa um algoritmo que receba dois nmeros e ao final mostre a
// soma, subtrao, multiplicao e a diviso dos nmeros lidos.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
x, y: real

inicio
// Seo de Comandos
escreva("Digite o primeiro nmero: ")
leia(x)
escreva("Digite o segundo nmero: ")
leia(y)

escreval("A soma : ",x+y)


escreval("A subtrao : ",x-y)
escreval("A multiplicao : ",x*y)
escreval("A diviso : ",x/y)

fimalgoritmo
Exerccio 3

algoritmo "ex3"
// Funo : Escrever um algoritmo para determinar o consumo mdio de um
// automvel sendo fornecida a distncia total percorrida pelo automvel e
// o total de combustvel gasto.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
distancia, combustivel: real

inicio
// Seo de Comandos
escreval("========== Clculo de consumo mdio de combustvel
=========")
escreva("Digite a distncia pecorrida: ")
leia(distancia)
escreva("Digite o combustvel gasto: ")
leia(combustivel)
escreval("O consumo mdio de combustvel do seu veculo :
",distancia/combustivel)

fimalgoritmo
1
2

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
algoritmo "ex3"
// Funo : Escrever um algoritmo para determinar o consumo mdio de um
// automvel sendo fornecida a distncia total percorrida pelo automvel e
// o total de combustvel gasto.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
distancia, combustivel: real

inicio
// Seo de Comandos
escreval("========== Clculo de consumo mdio de combustvel
=========")

escreva("Digite a distncia pecorrida: ")


leia(distancia)
escreva("Digite o combustvel gasto: ")
leia(combustivel)
escreval("O consumo mdio de combustvel do seu veculo :
",distancia/combustivel)

fimalgoritmo
Exerccio 4

algoritmo "ex4"
// Funo : Escrever um algoritmo que leia o nome de um vendedor, o seu
// salrio fixo e o total de vendas efetuadas por ele no
// ms (em dinheiro). Sabendo que este vendedor ganha 15% de comisso
sobre
// suas vendas efetuadas, informar o
// seu nome, o salrio fixo e salrio no final do ms
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
nome: caractere
salario: real
vendas: real
comissao: real
salarioFinal: real

inicio
// Seo de Comandos
escreval("<><><><><> Sistema de gesto de vendedores
<><><><><>")
escreva(">>> Digite o nome do vendedor: ")

leia(nome)
escreva(">>> Digite o salrio: ")
leia(salario)
escreva(">>> Informe a quantidade de vendas deste no ms: ")
leia(vendas)
// Clculo da comisso e salrio final
comissao >>>>>>>>> RESUMO <<<<<<<<<<")
escreval("-- Nome: ",nome)
escreval("-- Salrio: ",salario)
escreval("-- Salrio Final (salrio + comisso): ",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
28
29
30
31
32
33
34
35
algoritmo "ex4"
// Funo : Escrever um algoritmo que leia o nome de um vendedor, o seu
// salrio fixo e o total de vendas efetuadas por ele no
// ms (em dinheiro). Sabendo que este vendedor ganha 15% de comisso
sobre
// suas vendas efetuadas, informar o
// seu nome, o salrio fixo e salrio no final do ms
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
nome: caractere
salario: real
vendas: real

comissao: real
salarioFinal: real

inicio
// Seo de Comandos
escreval("<><><><><> Sistema de gesto de vendedores
<><><><><>")
escreva(">>> Digite o nome do vendedor: ")
leia(nome)
escreva(">>> Digite o salrio: ")
leia(salario)
escreva(">>> Informe a quantidade de vendas deste no ms: ")
leia(vendas)
// Clculo da comisso e salrio final
comissao >>>>>>>>> RESUMO <<<<<<<<<<")
escreval("-- Nome: ",nome)
escreval("-- Salrio: ",salario)
escreval("-- Salrio Final (salrio + comisso): ",salarioFinal)
escreval(">>>>>>>>>><><><><><<<<<<<<<<")

fimalgoritmo
Exerccio 5

algoritmo "ex5"
// Funo : Escrever um algoritmo que leia o nome de um aluno e as notas
// das trs provas que ele obteve no semestre. No final
// informar o nome do aluno e a sua mdia (aritmtica)
// Autor :
// Data : 30/11/2010

// Seo de Declaraes
var
aluno: caractere
notas: vetor[1..3] de real
x: inteiro
media: real

inicio
// Seo de Comandos
escreval("============== Mdia 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 >> Mdia: ",media)
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"
// Funo : Escrever um algoritmo que leia o nome de um aluno e as notas
// das trs provas que ele obteve no semestre. No final
// informar o nome do aluno e a sua mdia (aritmtica)
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
aluno: caractere
notas: vetor[1..3] de real
x: inteiro
media: real

inicio
// Seo de Comandos
escreval("============== Mdia 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 >> Mdia: ",media)
escreval("=======================================")

fimalgoritmo
Exerccio 6

algoritmo "ex6"
// Funo : Ler dois valores para as variveis A e B, e efetuar as trocas
// dos valores de forma que a varivel A passe a possuir o
// valor da varivel B e a varivel B passe a possuir o valor da varivel
// A. Apresentar os valores trocados.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
a, b, troca: inteiro

inicio
// Seo de Comandos
escreva("Digite o valor(numrico) da varivel A: ")
leia(a)
escreva("Digite o valor(numrico) da varivel B: ")
leia(b)
troca

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
algoritmo "ex6"
// Funo : Ler dois valores para as variveis A e B, e efetuar as trocas
// dos valores de forma que a varivel A passe a possuir o
// valor da varivel B e a varivel B passe a possuir o valor da varivel
// A. Apresentar os valores trocados.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
a, b, troca: inteiro

inicio
// Seo de Comandos
escreva("Digite o valor(numrico) da varivel A: ")

leia(a)
escreva("Digite o valor(numrico) da varivel B: ")
leia(b)
troca
Exerccio 7

algoritmo "ex7"
// Funo : Ler uma temperatura em graus Celsius e apresent-la convertida
// em graus Fahrenheit. A frmula de converso :
// F=(9*C+160) / 5, sendo F a temperatura em Fahrenheit e C a temperatura
em Celsius.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
cel, far: real

inicio
// Seo de Comandos
escreval("=-=-=-=-=- Tabela de converso: 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
algoritmo "ex7"
// Funo : Ler uma temperatura em graus Celsius e apresent-la convertida
// em graus Fahrenheit. A frmula de converso :
// F=(9*C+160) / 5, sendo F a temperatura em Fahrenheit e C a temperatura
em Celsius.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
cel, far: real

inicio
// Seo de Comandos
escreval("=-=-=-=-=- Tabela de converso: Celcius -> Fahrenheit -=-=-=-==")
escreva("Digite a temperatura em Celcius: ")
leia(cel)
far
Exerccio 8

algoritmo "ex8"
// Funo : Elaborar um algoritmo que efetue a apresentao do valor da
// converso em real (R$) de um valor lido em dlar
// (US$). O algoritmo dever solicitar o valor da cotao do dlar e tambm

// a quantidade de dlares disponveis com o usurio.


// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
rs, us, cotacao, dolaDisponivel: real

inicio
// Seo de Comandos
escreval("========= Cotao do Dlar ==========")
escreva("Qual a cotao atual do dlar? ")
leia(cotacao)
escreva("Quantos dlares voc possui? ")
leia(us)
rs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

18
19
algoritmo "ex8"
// Funo : Elaborar um algoritmo que efetue a apresentao do valor da
// converso em real (R$) de um valor lido em dlar
// (US$). O algoritmo dever solicitar o valor da cotao do dlar e tambm
// a quantidade de dlares disponveis com o usurio.
// Autor :
// Data : 30/11/2010
// Seo de Declaraes
var
rs, us, cotacao, dolaDisponivel: real

inicio
// Seo de Comandos
escreval("========= Cotao do Dlar ==========")
escreva("Qual a cotao atual do dlar? ")
leia(cotacao)
escreva("Quantos dlares voc possui? ")
leia(us)
rs
Exerccio 9

algoritmo "ex9"
// Funo : Faa um algoritmo que receba um valor que foi depositado e
// exiba o valor com rendimento aps um ms.
// Considere fixo o juro da poupana em 0,70% a. m.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var

correcao, deposito: real

inicio
// Seo de Comandos
escreval("Sistema de depsito 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
17
algoritmo "ex9"
// Funo : Faa um algoritmo que receba um valor que foi depositado e
// exiba o valor com rendimento aps um ms.
// Considere fixo o juro da poupana em 0,70% a. m.
// Autor :
// Data : 1/12/2010

// Seo de Declaraes
var
correcao, deposito: real

inicio
// Seo de Comandos
escreval("Sistema de depsito do Banco do Oeste")
escreva("Digite o valor depositado: ")
leia(deposito)
correcao
Exerccio 10

algoritmo "ex10"
// Funo : A Loja Mamo com Acar est vendendo seus produtos em 5
//(cinco) prestaes sem juros. Faa um algoritmo que
// receba um valor de uma compra e mostre o valor das prestaes.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
compra, prestacao: real

inicio
// Seo de Comandos
escreval("========== Loja Mamo com Acar ==========")
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
algoritmo "ex10"
// Funo : A Loja Mamo com Acar est vendendo seus produtos em 5
//(cinco) prestaes sem juros. Faa um algoritmo que
// receba um valor de uma compra e mostre o valor das prestaes.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
compra, prestacao: real

inicio
// Seo de Comandos
escreval("========== Loja Mamo com Acar ==========")
escreva("Digite o valor da compra: ")
leia(compra)
prestacao
Exerccio 11

algoritmo "ex11"
// Funo : Faa um algoritmo que receba o preo de custo de um produto e
// mostre o valor de venda. Sabe-se que o preo de
// custo receber um acrscimo de acordo com um percentual informado
pelo usurio.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
custo, venda, percent: real

inicio
// Seo 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
8
9
10
11
12
13

14
15
16
17
algoritmo "ex11"
// Funo : Faa um algoritmo que receba o preo de custo de um produto e
// mostre o valor de venda. Sabe-se que o preo de
// custo receber um acrscimo de acordo com um percentual informado
pelo usurio.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
custo, venda, percent: real

inicio
// Seo de Comandos
escreva("Digite o custo do produto: ")
leia(custo)
escreva("Digite o percentual para venda: ")
leia(percent)
percent
Exerccio 12

algoritmo "ex12"
// Funo : O custo ao consumidor de um carro novo a soma do custo de
// fbrica com a percentagem do distribuidor e dos
// impostos (aplicados, primeiro os impostos sobre o custo de fbrica, 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 fbrica de um carro e informe o custo ao consumidor do


mesmo.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
custoFabrica, custoFinal: real

inicio
// Seo de Comandos

escreva("Informe o custo de fbrica do veculo: ")


leia(custoFabrica)
custoFinal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

19
20
algoritmo "ex12"
// Funo : O custo ao consumidor de um carro novo a soma do custo de
// fbrica com a percentagem do distribuidor e dos
// impostos (aplicados, primeiro os impostos sobre o custo de fbrica, 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 fbrica de um carro e informe o custo ao consumidor do
mesmo.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
custoFabrica, custoFinal: real

inicio
// Seo de Comandos

escreva("Informe o custo de fbrica do veculo: ")


leia(custoFabrica)
custoFinal
Exerccio 13

algoritmo "ex13"
// Funo : Faa um algoritmo que receba um nmero e mostre uma
mensagem
// caso este nmero seja maior que 10.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes

var
numero: inteiro

inicio
// Seo de Comandos
escreva("Digite um nmero: ")
leia(numero)
se numero > 10 entao
escreval("O nmero maior que 10")
fimse

fimalgoritmo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
algoritmo "ex13"

// Funo : Faa um algoritmo que receba um nmero e mostre uma


mensagem
// caso este nmero seja maior que 10.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
numero: inteiro

inicio
// Seo de Comandos
escreva("Digite um nmero: ")
leia(numero)
se numero > 10 entao
escreval("O nmero maior que 10")
fimse

fimalgoritmo
Exerccio 14

algoritmo "ex14"
// Funo : Escrever um algoritmo que leia dois valores inteiro distintos e
// informe qual o maior.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
num1, num2: inteiro

inicio
// Seo de Comandos

escreva("Digite o primeiro nmero: ")


leia(num1)
escreva("Digite o segundo nmero: ")
leia(num2)

se num1 > num2 entao


escreva("O primeiro nmero ",num1," maior que o segundo",num2)
senao
escreva("O segundo nmero",num2," maior que o primeiro",num1)
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"
// Funo : Escrever um algoritmo que leia dois valores inteiro distintos e
// informe qual o maior.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
num1, num2: inteiro

inicio
// Seo de Comandos
escreva("Digite o primeiro nmero: ")
leia(num1)
escreva("Digite o segundo nmero: ")
leia(num2)

se num1 > num2 entao


escreva("O primeiro nmero ",num1," maior que o segundo",num2)
senao
escreva("O segundo nmero",num2," maior que o primeiro",num1)
fimse

fimalgoritmo
Exerccio 15

algoritmo "ex15"
// Funo : Faa um algoritmo que receba um nmero e diga se este nmero
// est no intervalo entre 100 e 200.

// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
numero: inteiro

inicio
// Seo de Comandos
escreva("Digite um nmero: ")
leia(numero)
se numero >= 100 entao
se numero <= 200 entao
escreval("O nmero est no intervalo entre 100 e 200")
senao
escreval("O nmero no est no intervalo entre 100 e 200")
fimse
senao
escreval("O nmero no 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
algoritmo "ex15"
// Funo : Faa um algoritmo que receba um nmero e diga se este nmero
// est no intervalo entre 100 e 200.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
numero: inteiro

inicio
// Seo de Comandos
escreva("Digite um nmero: ")
leia(numero)
se numero >= 100 entao
se numero <= 200 entao
escreval("O nmero est no intervalo entre 100 e 200")
senao
escreval("O nmero no est no intervalo entre 100 e 200")
fimse

senao
escreval("O nmero no est no intervalo entre 100 e 200")
fimse

fimalgoritmo
Exerccio 16

algoritmo "ex16"
// Funo : Escrever um algoritmo que leia o nome e as trs notas obtidas ]
// por um aluno durante o semestre. Calcular a sua
// mdia (aritmtica), informar o nome e sua meno aprovado (media >=
7), // Reprovado (media <= 5) e Recuperao
// (media entre 5.1 a 6.9).
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
nome: caractere
n1, n2, n3, media: real

inicio
// Seo de Comandos
escreval("Sistema de mdias")
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 recuperao...")
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 "ex16"
// Funo : Escrever um algoritmo que leia o nome e as trs notas obtidas ]
// por um aluno durante o semestre. Calcular a sua
// mdia (aritmtica), informar o nome e sua meno aprovado (media >=
7), // Reprovado (media <= 5) e Recuperao
// (media entre 5.1 a 6.9).
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
nome: caractere
n1, n2, n3, media: real

inicio
// Seo de Comandos
escreval("Sistema de mdias")
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 recuperao...")
fimse
fimse

fimalgoritmo
Exerccio 17

algoritmo "ex17"
// Funo : Ler 80 nmeros e ao final informar quantos nmero(s) est()o
// no intervalo entre 10 (inclusive) e 150 (inclusive).
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
x, num, intervalo: inteiro

inicio
// Seo de Comandos
para x de 1 ate 80 faca
escreva("Digite um nmero: ")
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
algoritmo "ex17"
// Funo : Ler 80 nmeros e ao final informar quantos nmero(s) est()o
// no intervalo entre 10 (inclusive) e 150 (inclusive).
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
x, num, intervalo: inteiro

inicio
// Seo de Comandos
para x de 1 ate 80 faca
escreva("Digite um nmero: ")
leia(num)
se num >= 10 entao
se num <= 150 entao
intervalo

Exerccio 18

algoritmo "ex18"
// Funo : Faa 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
// Seo de Declaraes
var
x, idade: inteiro

inicio
// Seo 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
algoritmo "ex18"
// Funo : Faa 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
// Seo de Declaraes
var
x, idade: inteiro

inicio
// Seo 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
Exerccio 19

algoritmo "ex19"
// Funo : 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
// Seo de Declaraes
var
nome, sexo: caractere
x, h, m: inteiro

inicio
// Seo 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
1
2
3

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
algoritmo "ex19"
// Funo : 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
// Seo de Declaraes
var
nome, sexo: caractere
x, h, m: inteiro

inicio
// Seo 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
Exerccio 20

algoritmo "ex20"
// Funo : A concessionria de veculos CARANGO VELHO est vendendo os
// seus veculos com desconto. Faa um
// algoritmo que calcule e exiba o valor do desconto e o valor a ser pago
// pelo cliente de vrios carros. O desconto
// dever ser calculado de acordo com o ano do veculo. At 2000 - 12% e
// acima de 2000 - 7%. O sistema dever
// perguntar se deseja continuar calculando desconto at que a resposta
// seja: \u201c(N) No\u201d . Informar total de carros com
// ano at 2000 e total geral.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
programa, opc: caractere
ano, total, total2000: inteiro
valor, valorFinal, desconto: real

inicio
// Seo 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
16
17
18
19
20
21
22
23

24
25
26
27
28
29
algoritmo "ex20"
// Funo : A concessionria de veculos CARANGO VELHO est vendendo os
// seus veculos com desconto. Faa um
// algoritmo que calcule e exiba o valor do desconto e o valor a ser pago
// pelo cliente de vrios carros. O desconto
// dever ser calculado de acordo com o ano do veculo. At 2000 - 12% e
// acima de 2000 - 7%. O sistema dever
// perguntar se deseja continuar calculando desconto at que a resposta
// seja: \u201c(N) No\u201d . Informar total de carros com
// ano at 2000 e total geral.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
programa, opc: caractere
ano, total, total2000: inteiro
valor, valorFinal, desconto: real

inicio
// Seo 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
Exerccio 21

algoritmo "ex21"
// Funo : Escrever um algoritmo que leia os dados de N pessoas (nome,
// sexo, idade e sade) e informe se est apta ou no
// para cumprir o servio militar obrigatrio. Informe os totais.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
programa, idade, apto: inteiro
nome, sexo, saude, opc: caractere
totApto, total: inteiro
inicio
// Seo de Comandos
programa "B" entao
apto
1
2
3
4
5
6
7
8
9
10
11

12
13
14
15
algoritmo "ex21"
// Funo : Escrever um algoritmo que leia os dados de N pessoas (nome,
// sexo, idade e sade) e informe se est apta ou no
// para cumprir o servio militar obrigatrio. Informe os totais.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
programa, idade, apto: inteiro
nome, sexo, saude, opc: caractere
totApto, total: inteiro
inicio
// Seo de Comandos
programa "B" entao
apto
Exerccio 22

algoritmo "ex22"
// Funo : Faa um algoritmo que receba o preo de custo e o preo de
// venda de 40 produtos. Mostre como resultado se
// houve lucro, prejuzo ou empate para cada produto. Informe media de
// preo de custo e do preo de venda.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
x: inteiro

precoVenda, precoCusto: real


mediaCusto, mediaVenda: real

inicio
// Seo de Comandos
para x de 1 ate 40 faca
limpatela
escreva("Digite o preo de custo: ")
leia(precoCusto)
mediaCusto precoCusto entao
escreval("Houve lucro na venda")
fimse
fimse

fimpara

limpatela
escreval("A mdia de preo de custo foi: ",mediaCusto/40)
escreval("A mdia de preo 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
29
30
31
algoritmo "ex22"
// Funo : Faa um algoritmo que receba o preo de custo e o preo de
// venda de 40 produtos. Mostre como resultado se
// houve lucro, prejuzo ou empate para cada produto. Informe media de
// preo de custo e do preo de venda.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
x: inteiro
precoVenda, precoCusto: real
mediaCusto, mediaVenda: real

inicio
// Seo de Comandos
para x de 1 ate 40 faca
limpatela
escreva("Digite o preo de custo: ")
leia(precoCusto)
mediaCusto precoCusto entao
escreval("Houve lucro na venda")
fimse
fimse

fimpara

limpatela
escreval("A mdia de preo de custo foi: ",mediaCusto/40)
escreval("A mdia de preo de venda foi: ",mediaVenda/40)

fimalgoritmo
Exerccio 23

algoritmo "ex23"
// Funo : Faa um algoritmo que receba um nmero e mostre uma
mensagem
// caso este nmero sege maior que 80, menor
// que 25 ou igual a 40.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
numero: inteiro

inicio
// Seo de Comandos
escreva("Digite um nmero: ")
leia(numero)

se numero > 80 entao


escreval("O nmero maior que 80")
senao
se numero < 25 entao
escreval("O nmero menor que 25")
senao
se numero = 40 entao
escreval("O nmero igual a 40")
fimse
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
algoritmo "ex23"
// Funo : Faa um algoritmo que receba um nmero e mostre uma
mensagem
// caso este nmero sege maior que 80, menor
// que 25 ou igual a 40.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
numero: inteiro

inicio
// Seo de Comandos
escreva("Digite um nmero: ")
leia(numero)

se numero > 80 entao

escreval("O nmero maior que 80")


senao
se numero < 25 entao
escreval("O nmero menor que 25")
senao
se numero = 40 entao
escreval("O nmero igual a 40")
fimse
fimse
fimse

fimalgoritmo
Exerccio 24

algoritmo "ex24"
// Funo : Faa um algoritmo que receba N nmeros e mostre positivo,
// negativo ou zero para cada nmero.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
programa, numero: inteiro
opc: caractere

inicio
// Seo de Comandos
programa 0 entao
escreval("Positivo")
senao
se numero = 0 entao
escreval("O nmero 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
algoritmo "ex24"
// Funo : Faa um algoritmo que receba N nmeros e mostre positivo,
// negativo ou zero para cada nmero.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
programa, numero: inteiro
opc: caractere

inicio
// Seo de Comandos
programa 0 entao
escreval("Positivo")
senao
se numero = 0 entao
escreval("O nmero igual a 0")
fimse
se numero < 0 entao
escreval("Negativo")
fimse
fimse

escreva("Deseja finalizar? (S/N) ")

leia(opc)
se opc = "S" entao
programa
Exerccio 25

algoritmo "ex25"
// Funo : Faa um algoritmo que leia dois nmeros e identifique se so
// iguais ou diferentes. Caso eles sejam iguais imprima
// uma mensagem dizendo que eles so iguais. Caso sejam diferentes,
informe
// qual nmero o maior, e uma
// mensagem que so diferentes.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
num1, num2: inteiro

inicio
// Seo de Comandos
escreva("Digite o primeiro nmero: ")
leia(num1)
escreva("Digite o segundo nmero: ")
leia(num2)
se num1 = num2 entao
escreval("Os nmeros so iguais!")
senao
se num1 > num2 entao
escreval("O nmero",num1," maior que o nmero",num2)
escreval("Eles so diferentes!!!")
senao

escreval("O nmero",num2," maior que o nmero",num1)


escreval("Eles so diferentes!!!")
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
algoritmo "ex25"
// Funo : Faa um algoritmo que leia dois nmeros e identifique se so
// iguais ou diferentes. Caso eles sejam iguais imprima
// uma mensagem dizendo que eles so iguais. Caso sejam diferentes,
informe
// qual nmero o maior, e uma
// mensagem que so diferentes.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
num1, num2: inteiro

inicio
// Seo de Comandos
escreva("Digite o primeiro nmero: ")
leia(num1)
escreva("Digite o segundo nmero: ")
leia(num2)
se num1 = num2 entao
escreval("Os nmeros so iguais!")
senao
se num1 > num2 entao
escreval("O nmero",num1," maior que o nmero",num2)
escreval("Eles so diferentes!!!")
senao
escreval("O nmero",num2," maior que o nmero",num1)

escreval("Eles so diferentes!!!")
fimse
fimse

fimalgoritmo
Exerccio 26

algoritmo "ex26"
// Funo : Faa um algoritmo que leia um nmero de 1 a 5 e escreva por
// extenso. Caso o usurio digite um nmero que no
// esteja neste intervalo, exibir mensagem: nmero invlido.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
numero: inteiro
inicio
// Seo de Comandos
escreva("Digite um nmero de 1 a 5: ")
leia(numero)
escolha numero
caso 1
escreval("Um")
caso 2
escreval("Dois")
caso 3
escreval("Trs")
caso 4
escreval("Quatro")
caso 5
escreval("Cinco")

outrocaso
escreval("Nmero Invlido!!!")
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 "ex26"
// Funo : Faa um algoritmo que leia um nmero de 1 a 5 e escreva por
// extenso. Caso o usurio digite um nmero que no
// esteja neste intervalo, exibir mensagem: nmero invlido.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
numero: inteiro
inicio
// Seo de Comandos
escreva("Digite um nmero de 1 a 5: ")
leia(numero)
escolha numero
caso 1
escreval("Um")
caso 2
escreval("Dois")
caso 3
escreval("Trs")
caso 4
escreval("Quatro")
caso 5
escreval("Cinco")
outrocaso
escreval("Nmero Invlido!!!")
fimescolha

fimalgoritmo
Exerccio 27

algoritmo "ex27"
// Funo : A concessionria de veculos CARANGO est vendendo os seus
// veculos com desconto. Faa 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 veculo de acordo com o combustvel (lcool \u2013 25%, gasolina
// \u2013 21% ou diesel \u201314%). Com valor do veculo zero
// encerra entrada de dados. Informe total de desconto e total pago pelos
clientes.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
desconto, valorPago, valorVeiculo: real
totalDesconto, totalPago: real
combustivel, opc: caractere

inicio
// Seo de Comandos
valorVeiculo 0 faca
limpatela
escreva("Digite o valor do veculo: ")
leia(valorVeiculo)
se valorVeiculo <> 0 entao
escreval("Digite o combustvel")
escreva("(G)asolina / (A)lcool / (D)iesel: ")
leia(combustivel)
escolha combustivel
caso "A"
desconto

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"
// Funo : A concessionria de veculos CARANGO est vendendo os seus
// veculos com desconto. Faa 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 veculo de acordo com o combustvel (lcool \u2013 25%, gasolina
// \u2013 21% ou diesel \u201314%). Com valor do veculo zero
// encerra entrada de dados. Informe total de desconto e total pago pelos
clientes.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
desconto, valorPago, valorVeiculo: real
totalDesconto, totalPago: real
combustivel, opc: caractere

inicio
// Seo de Comandos
valorVeiculo 0 faca
limpatela
escreva("Digite o valor do veculo: ")
leia(valorVeiculo)
se valorVeiculo <> 0 entao
escreval("Digite o combustvel")
escreva("(G)asolina / (A)lcool / (D)iesel: ")
leia(combustivel)
escolha combustivel
caso "A"
desconto
Exerccio 28

algoritmo "ex28"
// Funo : Escrever um algoritmo para uma empresa que decide dar um

// reajuste a seus 584 funcionrios de acordo com os


// seguintes critrios:
// a) 50% para aqueles que ganham menos do que trs salrios mnimos;
// b) 20% para aqueles que ganham entre trs at dez salrios mnimos;
// c) 15% para aqueles que ganham acima de dez at vinte salrios
mnimos;
// d) 10% para os demais funcionrios.
// Leia o nome do funcionrio, seu salrio e o valor do salrio mnimo.
// Calcule o seu novo salrio reajustado. Escrever o
// nome do funcionrio, o reajuste e seu novo salrio. Calcule quanto
// empresa vai aumentar sua folha de pagamento.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
salarioMinimo, novoSalario, reajuste, reajusteTotal, folha, novaFolha, calc,
salario: real
nome, opc: caractere
x: inteiro

inicio
// Seo de Comandos
opc <- "x"
escreval("<><><><><> Sistema de reajuste salarial <><><><><>")
escreva("Digite o valor atual do salrio mnimo: ")
leia(salarioMinimo)
para x de 1 ate 584 faca
limpatela
escreva("Digite o nome: ")
leia(nome)
escreva("Digite o salrio: ")
leia(salario)
calc >> Nome: ",nome)

escreval(">>> Reajuste = 50%: ",reajuste*salario)


escreval(">>> Novo salrio: ",novoSalario)
escreval(">>> Tecle enter para continuar...")
leia(opc)
senao
calc >> Nome: ",nome)
escreval(">>> Reajuste = 20%: ",reajuste*salario)
escreval(">>> Novo salrio: ",novoSalario)
escreval(">>> Tecle enter para continuar...")
leia(opc)
senao
calc >> Nome: ",nome)
escreval(">>> Reajuste = 15%: ",reajuste*salario)
escreval(">>> Novo salrio: ",novoSalario)
escreval(">>> Tecle enter para continuar...")
leia(opc)
senao
reajuste >> Nome: ",nome)
escreval(">>> Reajuste = 10%: ",reajuste*salario)
escreval(">>> Novo salrio: ",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
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
algoritmo "ex28"
// Funo : Escrever um algoritmo para uma empresa que decide dar um

// reajuste a seus 584 funcionrios de acordo com os


// seguintes critrios:
// a) 50% para aqueles que ganham menos do que trs salrios mnimos;
// b) 20% para aqueles que ganham entre trs at dez salrios mnimos;
// c) 15% para aqueles que ganham acima de dez at vinte salrios
mnimos;
// d) 10% para os demais funcionrios.
// Leia o nome do funcionrio, seu salrio e o valor do salrio mnimo.
// Calcule o seu novo salrio reajustado. Escrever o
// nome do funcionrio, o reajuste e seu novo salrio. Calcule quanto
// empresa vai aumentar sua folha de pagamento.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
salarioMinimo, novoSalario, reajuste, reajusteTotal, folha, novaFolha, calc,
salario: real
nome, opc: caractere
x: inteiro

inicio
// Seo de Comandos
opc <- "x"
escreval("<><><><><> Sistema de reajuste salarial <><><><><>")
escreva("Digite o valor atual do salrio mnimo: ")
leia(salarioMinimo)
para x de 1 ate 584 faca
limpatela
escreva("Digite o nome: ")
leia(nome)
escreva("Digite o salrio: ")
leia(salario)
calc >> Nome: ",nome)

escreval(">>> Reajuste = 50%: ",reajuste*salario)


escreval(">>> Novo salrio: ",novoSalario)
escreval(">>> Tecle enter para continuar...")
leia(opc)
senao
calc >> Nome: ",nome)
escreval(">>> Reajuste = 20%: ",reajuste*salario)
escreval(">>> Novo salrio: ",novoSalario)
escreval(">>> Tecle enter para continuar...")
leia(opc)
senao
calc >> Nome: ",nome)
escreval(">>> Reajuste = 15%: ",reajuste*salario)
escreval(">>> Novo salrio: ",novoSalario)
escreval(">>> Tecle enter para continuar...")
leia(opc)
senao
reajuste >> Nome: ",nome)
escreval(">>> Reajuste = 10%: ",reajuste*salario)
escreval(">>> Novo salrio: ",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
Exerccio 29

algoritmo "ex29"
// Funo : Faa um algoritmo que receba o nmero do ms e mostre o ms
// correspondente. Valide ms invlido
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
mes: inteiro

inicio
// Seo de Comandos
escreval("Digite o nmero do ms: ")
leia(mes)
escolha mes
caso 1
escreval("Janeiro")
caso 2
escreval("Fevereiro")
caso 3
escreval("Maro")
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("Ms invlido!")
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
algoritmo "ex29"
// Funo : Faa um algoritmo que receba o nmero do ms e mostre o ms
// correspondente. Valide ms invlido
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
mes: inteiro

inicio
// Seo de Comandos
escreval("Digite o nmero do ms: ")
leia(mes)
escolha mes
caso 1
escreval("Janeiro")
caso 2
escreval("Fevereiro")
caso 3
escreval("Maro")
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("Ms invlido!")

fimescolha

fimalgoritmo
Exerccio 31

algoritmo "ex31"
// Funo : Escrever um algoritmo que leia trs valores inteiros distintos
// e os escreva em ordem crescente
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
num1, num2, num3: inteiro
ordena: vetor[1..3] de inteiro

inicio
// Seo de Comandos
escreva("Digite o primeiro nmero: ")
leia(num1)
escreva("Digite o segundo nmero: ")
leia(num2)
escreva("Digite o terceiro nmero: ")
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
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"
// Funo : Escrever um algoritmo que leia trs valores inteiros distintos

// e os escreva em ordem crescente


// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
num1, num2, num3: inteiro
ordena: vetor[1..3] de inteiro

inicio
// Seo de Comandos
escreva("Digite o primeiro nmero: ")
leia(num1)
escreva("Digite o segundo nmero: ")
leia(num2)
escreva("Digite o terceiro nmero: ")
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
Exerccio 32

algoritmo "ex32"
// Funo : Dados trs valores A, B e C, em que A e B so nmeros reais e C
// um caractere, pede-se para imprimir o resultado

// da operao de A por B se C for um smbolo de operador aritmtico; caso


// contrrio deve ser impressa uma
// mensagem de operador no definido. Tratar erro de diviso por zero.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
A, B: real
C: caractere

inicio
// Seo de Comandos
escreva("Digite o primeiro nmero: ")
leia(A)
escreva("Digite o segundo nmero: ")
leia(B)
escreva("Digite a operao 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 nmero no pode ser dividido por 0!")
senao
escreval("A/B =",A/B)
fimse
outrocaso

escreval("Operador no definido!")
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

30
31
32
33
34
35
36
37
38
algoritmo "ex32"
// Funo : Dados trs valores A, B e C, em que A e B so nmeros reais e C
// um caractere, pede-se para imprimir o resultado
// da operao de A por B se C for um smbolo de operador aritmtico; caso
// contrrio deve ser impressa uma
// mensagem de operador no definido. Tratar erro de diviso por zero.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
A, B: real
C: caractere

inicio
// Seo de Comandos
escreva("Digite o primeiro nmero: ")
leia(A)
escreva("Digite o segundo nmero: ")
leia(B)
escreva("Digite a operao 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 nmero no pode ser dividido por 0!")
senao
escreval("A/B =",A/B)
fimse
outrocaso
escreval("Operador no definido!")
fimescolha
fimalgoritmo
Exerccio 33

algoritmo "ex33"
// Funo : Escrever um algoritmo que leia trs valores inteiros e
// verifique se eles podem ser os lados de um tringulo. Se
// forem, informar qual o tipo de tringulo que eles formam: equiltero,
// isscele ou escaleno
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
la, lb, lc, triangulo: inteiro
inicio
// Seo de Comandos
escreva("Digite o lado A do tringulo: ")
leia(la)

escreva("Digite o lado B do tringulo: ")


leia(lb)
escreva("Digite o lado C do tringulo: ")
leia(lc)

se la < (lc+lb) entao


triangulo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
algoritmo "ex33"
// Funo : Escrever um algoritmo que leia trs valores inteiros e
// verifique se eles podem ser os lados de um tringulo. Se
// forem, informar qual o tipo de tringulo que eles formam: equiltero,

// isscele ou escaleno
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
la, lb, lc, triangulo: inteiro
inicio
// Seo de Comandos
escreva("Digite o lado A do tringulo: ")
leia(la)
escreva("Digite o lado B do tringulo: ")
leia(lb)
escreva("Digite o lado C do tringulo: ")
leia(lc)

se la < (lc+lb) entao


triangulo
Exerccio 34

algoritmo "ex34"
// Funo : A escola \u201cAPRENDER\u201d faz o pagamento de seus
// professores por hora/aula. Faa um algoritmo que calcule e exiba o
// salrio de um professor. Sabe-se que o valor da hora/aula segue a tabela
abaixo:
// Professor Nvel 1 R$12,00 por hora/aula
// Professor Nvel 2 R$17,00 por hora/aula
// Professor Nvel 3 R$25,00 por hora/aula
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var

nivel, horas: inteiro


inicio
// Seo de Comandos
escreval(">>>>> Escola APRENDER <<<<<")
escreva("Digite o nvel do professor (1/2/3): ")
leia(nivel)
escreva("Digite o nmero 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
algoritmo "ex34"
// Funo : A escola \u201cAPRENDER\u201d faz o pagamento de seus
// professores por hora/aula. Faa um algoritmo que calcule e exiba o
// salrio de um professor. Sabe-se que o valor da hora/aula segue a tabela
abaixo:
// Professor Nvel 1 R$12,00 por hora/aula
// Professor Nvel 2 R$17,00 por hora/aula
// Professor Nvel 3 R$25,00 por hora/aula
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
nivel, horas: inteiro

inicio
// Seo de Comandos
escreval(">>>>> Escola APRENDER <<<<<")
escreva("Digite o nvel do professor (1/2/3): ")
leia(nivel)
escreva("Digite o nmero 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
Exerccio 35

algoritmo "ex35"
// Funo : 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
// Snior = 18 - 25 anos
// Apresentar mensagem idade fora da faixa etria quando for outro ano
no contemplado

// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
idade: inteiro

inicio
// Seo 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("Snior")
outrocaso
escreval("Idade fora da faixa etria")
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
30
31
32
33
34
35
algoritmo "ex35"
// Funo : 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
// Snior = 18 - 25 anos
// Apresentar mensagem idade fora da faixa etria quando for outro ano
no contemplado
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
idade: inteiro

inicio
// Seo 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("Snior")
outrocaso
escreval("Idade fora da faixa etria")
fimescolha

fimalgoritmo
Exerccio 36

algoritmo "ex36"
// Funo : Faa um algoritmo que calcule o valor da conta de luz de uma
// pessoa. Sabe-se que o clculo da conta de luz segue
a tabela abaixo:
// Tipo de Cliente Valor do KW/h
// 1 (Residncia) 0,60
// 2 (Comrcio) 0,48
// 3 (Indstria) 1,29
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
residencia, kw: inteiro
consumo: real

inicio
// Seo de Comandos
escreval("Informe o tipo de residncia: ")
escreval("1 - Residncia")
escreval("2 - Comrcio")
escreval("3 - Indstria")
leia(residencia)
escolha residencia
caso 1
escreva("Informe a quantidade de KW gastos no ms: ")
leia(kw)
consumo
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"
// Funo : Faa um algoritmo que calcule o valor da conta de luz de uma
// pessoa. Sabe-se que o clculo da conta de luz segue
a tabela abaixo:
// Tipo de Cliente Valor do KW/h
// 1 (Residncia) 0,60

// 2 (Comrcio) 0,48
// 3 (Indstria) 1,29
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
residencia, kw: inteiro
consumo: real

inicio
// Seo de Comandos
escreval("Informe o tipo de residncia: ")
escreval("1 - Residncia")
escreval("2 - Comrcio")
escreval("3 - Indstria")
leia(residencia)
escolha residencia
caso 1
escreva("Informe a quantidade de KW gastos no ms: ")
leia(kw)
consumo
Exerccio 38

algoritmo "ex38"
// Funo : Em um curso de Cincia da Computao a nota do estudante
// calculada a partir de trs notas atribudas,
// respectivamente, a um trabalho de laboratrio, a uma avaliao semestral
// e a um exame final. As notas variam, de 0
// a 10 e a nota final a mdia ponderada das trs notas mencionadas. A
// tabela abaixo fornece os pesos:
// Laboratrio Peso

// Avaliao semestral Peso 3


// Exame final Peso 5
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
nota1, nota2, nota3: real
media: real
nome, classificacao: caractere
matricula: inteiro

inicio
// Seo de Comandos
escreva("Digite o nome: ")
leia(nome)
escreva("Informe a matrcula: ")
leia(matricula)
escreva("Digite a nota do trabalho de laboratrio: ")
leia(nota1)
escreva("Digite a nota da avaliao semestral: ")
leia(nota2)
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("Matrcula: ",matricula)
escreval("Nota final: ",media)
escreval("Classificao: ",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
35
36
37
38
39
40
41
42
43
44
45

46
47
48
49
50
51
52
53
54
55
56
57
58
algoritmo "ex38"
// Funo : Em um curso de Cincia da Computao a nota do estudante
// calculada a partir de trs notas atribudas,
// respectivamente, a um trabalho de laboratrio, a uma avaliao semestral
// e a um exame final. As notas variam, de 0
// a 10 e a nota final a mdia ponderada das trs notas mencionadas. A
// tabela abaixo fornece os pesos:
// Laboratrio Peso
// Avaliao semestral Peso 3
// Exame final Peso 5
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
nota1, nota2, nota3: real
media: real
nome, classificacao: caractere
matricula: inteiro

inicio
// Seo de Comandos
escreva("Digite o nome: ")
leia(nome)
escreva("Informe a matrcula: ")
leia(matricula)
escreva("Digite a nota do trabalho de laboratrio: ")
leia(nota1)
escreva("Digite a nota da avaliao semestral: ")
leia(nota2)
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("Matrcula: ",matricula)
escreval("Nota final: ",media)
escreval("Classificao: ",classificacao)

fimalgoritmo
Exerccio 39

algoritmo "ex39"
// Funo : Dado o nome de um estudante, com o respectivo nmero de
// matrcula e as trs notas acima mencionadas,
// desenvolva um algoritmo para calcular a nota final e a classificao de
// cada estudante. A classificao dada
// conforme a tabela abaixo:
// Nota Final Classificao
// [8,10] A
// [7,8] B
// [6,7] C
// [5,6] D
// [0,5] R
// Imprima o nome do estudante, com o seu nmero, nota final e
classificao.
// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
idade, grupo: inteiro
nome, grupoRisco: caractere
inicio

// Seo 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"
grupo
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
algoritmo "ex39"
// Funo : Dado o nome de um estudante, com o respectivo nmero de
// matrcula e as trs notas acima mencionadas,
// desenvolva um algoritmo para calcular a nota final e a classificao de
// cada estudante. A classificao dada
// conforme a tabela abaixo:
// Nota Final Classificao
// [8,10] A
// [7,8] B
// [6,7] C
// [5,6] D
// [0,5] R
// Imprima o nome do estudante, com o seu nmero, nota final e
classificao.

// Autor :
// Data : 1/12/2010
// Seo de Declaraes
var
idade, grupo: inteiro
nome, grupoRisco: caractere
inicio
// Seo 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"
grupo