Escolar Documentos
Profissional Documentos
Cultura Documentos
Algoritmos - exercícios
Escolha
Algoritmo "opções-banco"
Var
opc: caracter
saldo, dep, saq, saldoF: real
Inicio
saldo<-0
repita
escreval("Escolha uma opção:")
escreval("(A)Saldo")
escreval("(B)Depósito")
escreval("(C)Saque")
escreval("(X)Sair")
leia(opc)
ate (opc= "A") ou (opc= "B") ou (opc= "C") ou (opc="X")
escolha opc
caso "A"
escreval("Vc escolheu Saldo, quanto você tem de saldo?")
leia(saldoF)
caso "B"
escreval("Vc escolheu Depósito, digite o valor que vc quer depositar:")
leia(dep)
saldoF<- saldo + saldoF
dep<- dep + saldoF
escreval(dep)
caso "C"
escreval("Vc escolheu Saque, digite o valor que vc quer retirar")
leia(saq)
escreval("O valor do saque foi: ", saq)
caso "X"
escreval("Vc escolheu Sair")
fimescolha
Fimalgoritmo
Var
num, i, soma : inteiro
Inicio
num <- 0
escreval("digite um número inteiro positivo: ")
leia(num)
enquanto (i<= num) faca
escreva(i)
Algoritmos - exercícios 1
soma<- soma + i
i<- i + 2
fimenquanto
escreval(" A soma dos números pares do intervalo de 0 a", num, " é:", soma)
Fimalgoritmo
Var
i, num : inteiro
Inicio
num<- 1
i <- 1
enquanto (i<= 50) faca
escreva(i)
i<- i + 1
fimenquanto
Fimalgoritmo
Algoritmo "impares"
Var
num, i: inteiro
Inicio
num <- 0
escreval("digite um número inteiro positivo: ")
leia(num)
enquanto (i<= num) faca
escreva(i)
i<- i + 3
fimenquanto
Fimalgoritmo
Var
num: inteiro
Inicio
escreval("digite um número inteiro positivo: ")
leia(num)
enquanto (num > 0) faca
escreval("o inverso de", num, " é 1/",num)
fimenquanto
se (num=0) entao
escreva("nao pode dividir por zero")
fimse
Fimalgoritmo
Algoritmo "mediaesoma-PARA"
Var
n1,n2, aluno: inteiro
med: real
Inicio
Algoritmos - exercícios 2
para aluno de 1 ate 2 faca
escreva(aluno)
escreval(" Digite suas duas notas: ")
leia(n1,n2)
med<- (n1+n2)/2
escreval("A méd foi: ", med)
fimpara
se (med<6) entao
escreval("Reprovado!")
fimse
se (6 > med <=7) entao
escreval("Recuperação!")
senao
escreva("Aprovado!")
fimse
Fimalgoritmo
Algoritmo "mediadealunos-para"
Var
n1,n2, aluno, soma: inteiro
med, medT: real
Inicio
soma<- 0
para aluno de 1 ate 2 faca
escreva(aluno)
escreval(" Digite suas duas notas: ")
leia(n1,n2)
med<- (n1+n2)/2
soma<-soma + (n1+n2)
medT<- soma/5
escreval(aluno, " A méd foi: ", med)
se (med<6) entao
escreval(aluno, " Reprovado!")
fimse
se (med<=6)ou(med<=7) entao
escreval(aluno, " Recuperação!")
fimse
se (med>7) entao
escreval(aluno, " Aprovado!")
fimse
fimpara
escreval("Amed da turma foi: ", medT )
//escreval("O total de alunos aprovado foi: ", )
// escreval("O total de alunos de recuperação foi: ",)
// escreval("O total de alunos reprovados foi: ", ) falta colocar a quantidade
Fimalgoritmo
Algoritmo "somados30primeiros"
Var
cont, num, soma: inteiro
Inicio
cont<-0
para cont de 0 ate 30 faca
escreva(cont)
fimpara
para cont de 0 ate 30 passo 2 faca
soma<-soma+cont
fimpara
escreval(" A soma foi: ", soma)
Fimalgoritmo
Algoritmos - exercícios 3
Algoritmo "mediaesoma-PARA"
Var
n1,n2, aluno: inteiro
med: real
Inicio
Fimalgoritmo
Algoritmo "mediadealunos-para"
Var
n1,n2, aluno, soma: inteiro
med, medT: real
Inicio
soma<- 0
para aluno de 1 ate 2 faca
escreva(aluno)
escreval(" Digite suas duas notas: ")
leia(n1,n2)
med<- (n1+n2)/2
soma<-soma + (n1+n2)
medT<- soma/5
escreval(aluno, " A méd foi: ", med)
se (med<6) entao
escreval(aluno, " Reprovado!")
fimse
se (med<=6)ou(med<=7) entao
escreval(aluno, " Recuperação!")
fimse
se (med>7) entao
escreval(aluno, " Aprovado!")
fimse
fimpara
escreval("Amed da turma foi: ", medT )
//escreval("O total de alunos aprovado foi: ", )
// escreval("O total de alunos de recuperação foi: ",)
// escreval("O total de alunos reprovados foi: ", ) falta colocar a quantidade
Fimalgoritmo
Algoritmo "mediaesoma-PARA"
Var
n1,n2, aluno: inteiro
med: real
Inicio
Algoritmos - exercícios 4
leia(n1,n2)
med <- (n1+n2)/2
escreval("A méd foi: ", med)
fimpara
se (med<6) entao
escreval("Reprovado!")
fimse
se (6 > med <=7) entao
escreval("Recuperação!")
senao
escreva("Aprovado!")
fimse
Fimalgoritmo
Algoritmo "mediadealunos-para"
Var
n1,n2, aluno, soma: inteiro
med, medT: real
Inicio
soma<- 0
para aluno de 1 ate 2 faca
escreva(aluno)
escreval(" Digite suas duas notas: ")
leia(n1,n2)
med<- (n1+n2)/2
soma<-soma + (n1+n2)
medT<- soma/5
escreval(aluno, " A méd foi: ", med)
se (med<6) entao
escreval(aluno, " Reprovado!")
fimse
se (med<=6)ou(med<=7) entao
escreval(aluno, " Recuperação!")
fimse
se (med>7) entao
escreval(aluno, " Aprovado!")
fimse
fimpara
escreval("Amed da turma foi: ", medT )
//escreval("O total de alunos aprovado foi: ", )
// escreval("O total de alunos de recuperação foi: ",)
// escreval("O total de alunos reprovados foi: ", ) falta colocar a quantidade
Fimalgoritmo
Algoritmo "mediaesoma-PARA"
Var
n1,n2, aluno: inteiro
med: real
Inicio
Algoritmos - exercícios 5
fimse
Fimalgoritmo
Var
cont: inteiro
Inicio
para cont de 1 ate 50 faca
escreva(cont: 3) // :3 espaçamento
fimpara
Fimalgoritmo
Algoritmo "areasQuadril"
Var
cont, xQ: inteiro
L, area: real
Inicio
escreval("Quantos quadriláteros vc quer saber a área?")
leia(xQ)
para cont de 1 ate xQ faca
escreva("Qual o lado? ")
leia(L)
area<- L*L
escreval(" A área do quadrilat é:", area)
fimpara
Fimalgoritmo
Algoritmo "somados30primeiros"
Var
cont, num, soma: inteiro
Inicio
cont<-0
para cont de 0 ate 30 faca
escreva(cont)
fimpara
para cont de 0 ate 30 passo 2 faca
soma<-soma+cont
fimpara
escreval(" A soma foi: ", soma)
Fimalgoritmo
Var
cont: inteiro
Inicio
cont<-1
repita
escreva(cont)
cont<- cont + 1
ate cont > 50
Algoritmos - exercícios 6
Fimalgoritmo
Algoritmo "tabuada"
Var
num, i, resul: inteiro
Inicio
i<- 0
escreva("digite o numero que vc quer ver a tabuada completa: ")
leia(num)
repita
escreval(num," x",i,"=",resul)
i<- i +1
resul<- num * i
ate i>10
Fimalgoritmo
Algoritmo "pararNoZero"
Var
num: inteiro
Inicio
repita
escreva("digite um número: ")
leia(num)
ate num=0
Fimalgoritmo
Vetores:
Algoritmo "semnome"
Var
N: vetor[1..5] de real
Algoritmos - exercícios 7
valor: real
i: inteiro
Inicio
Fimalgoritmo
Algoritmo "semnome"
Var
x: vetor[1..5] de inteiro
y: vetor [1..5] de inteiro
i: inteiro
Inicio
para i de 1 ate 5 faca
leia(x[i])
fimpara
para i de 1 ate 5 faca
leia (y[i])
fimpara
se (x[i]=y[i]) entao
escreval("Os vetores são iguais")
senao
escreval("Os vetores não são iguais")
fimse
Fimalgoritmo
Algoritmo "semnome"
Var
A: vetor[1..5] de inteiro
B: vetor [1..5] de inteiro
i: inteiro
quant: inteiro
Inicio
para i de 1 ate 5 faca
escreva("digite o", i,".o numero do vetor A: ")
leia(A[i])
fimpara
para i de 1 ate 5 faca
escreva("digite o", i,".o numero do vetor B: ")
leia(B[i])
fimpara
quant<- 0
para i de 1 ate 5 faca
se (A[i]>B[i]) entao
quant<- quant + 1
fimse
fimpara
escreval("Existe", quant, " elemento(s) no vetor A que são maiores que B")
Fimalgoritmo
Algoritmo "semnome"
Algoritmos - exercícios 8
Var
num: vetor[1..10] de inteiro
quant1, quant2, i, x: inteiro
med, soma: real
Inicio
soma<- 0
quant1<- 0
para i de 1 ate 10 faca
escreva("digite o", i,".o numero: ")
leia(num[i])
fimpara
para i de 1 ate x faca
se (num[i]<0) entao
quant1<- quant1 + 1
soma<- soma + quant1
med<- soma/quant1
fimse
fimpara
para i de 1 ate 10 faca
se (num[i]>0) entao
quant2<- quant2 +1
fimse
fimpara
escreval("Os valores positivos são: ", quant2)
escreval("A med dos números negativos foi: ", med) // problema na media
Fimalgoritmo
Algoritmo "ex8VETOR"
var
vet: vetor[1..10] de inteiro
i,j,aux: inteiro
inicio
para i de 1 ate 10 faca
escreval("Digite o", i, "º numero:")
leia(vet[i])
fimpara
Algoritmo "semnome"
Var
elem: vetor[1..3] de inteiro
el: vetor[1..3] de inteiro
i, j: inteiro
Inicio
para i de 1 ate 3 faca
escreva("digite um numero: ")
leia(elem[i])
fimpara
para j de 1 ate 3 faca
escreva("digite um numero: ")
leia(el[j])
Algoritmos - exercícios 9
fimpara
se (elem[i]<>el[j]) entao
escreva("Elementos diferentes")
senao
escreva("Possui elemento(s) iguais")
fimse
// colocar quantidade depois
Fimalgoritmo
Algoritmo "semnome"
Var
N: vetor[1..4] de inteiro
aluno: caractere
med, soma: real
i: inteiro
Inicio
soma<- 0
para i de 1 ate 4 faca
escreva("Digite sua", i, "o. Nota: ")
leia(N[i])
soma<- soma + N[i]
med<- soma/4
fimpara
escreval("A Média foi", med)
Fimalgoritmo
Algoritmo "medosalunos-vetor"
Var
aluno: vetor [1..3] de caracter
i, tot: inteiro
n1: vetor[1..3] de real
n2: vetor[1..3] de real
Mt, sm: real
med: vetor [1..3] de real
Inicio
Algoritmos - exercícios 10
v: vetor [1..5] de inteiro
menor, i: inteiro
inicio
para i de 1 ate 5 faca
escreva("digite um número: ")
leia(v[i])
fimpara
menor <- v[1]
para i de 2 ate 5 faca
se (v[i] < menor) entao
menor <- v[i]
fimse
fimpara
para i de 1 ate 5 faca
se (v[i] = menor) entao
escreval ("O menor elemento é ", menor, " na posição ", i)
fimse
fimpara
fimalgoritmo
Algoritmo "totaldePares"
Var
nums: vetor[1..4] de inteiro
i, TotalP: inteiro
Inicio
TotalP<- 0
para i <- 1 ate 4 faca
escreval("digite numero")
leia(nums[i])
se (nums[i]%2=0) entao
TotalP<- TotalP +1
fimse
fimpara
escreval("o total de pares foi", TotalP)
para i<- 1 ate 4 faca
se (nums[i]%2=0) entao
escreval("par na posição", i)
fimse
fimpara
Fimalgoritmo
Algoritmo "semnome"
Var
N: vetor[1..10] de inteiro
med, soma: real
i: inteiro
Inicio
soma<- 0
para i de 1 ate 10 faca
leia(N[i])
soma<- soma + N[i]
med<- soma/10
fimpara
escreval("A Média foi", med)
para i de 1 ate 10 faca
se (N[i]>=7) entao
escreval("O número", N[i], " está acima da média")
fimse
fimpara
Fimalgoritmo
Algoritmos - exercícios 11
Matrizes
Algoritmo "semnome"
// Disciplina : [Linguagem e Lógica de Programação]
Var
matA: vetor[1..4,1..4] de inteiro
l, c, sP, sI, quantP, quantI: inteiro
Inicio
sP<- 0
sI<- 0
quantP<- 0
quantI<- 0
para l de 1 ate 4 faca
para c de 1 ate 4 faca
escreva("Digite um número: ")
leia(matA[l,c])
se (matA[l,c]% 2 = 0) entao
sP<- sP + matA[l,c]
quantP<- quantP+1
fimse
se(matA[l,c]% 2 = 1) entao
sI<- sI + matA[l,c]
quantI<- quantI+1
fimse
fimpara
fimpara
limpatela
// mostrar a matriz
escreval("------- MATRIZ A -------")
para l de 1 ate 4 faca
para c de 1 ate 4 faca
escreva(matA[l,c]:3)
fimpara
escreval()
fimpara
//resultados
Fimalgoritmo
Algoritmo "semnome"
// Disciplina : [Linguagem e Lógica de Programação]
Var
matA, matB, matC: vetor[1..3,1..3] de inteiro
l, c, sA, sB : inteiro
Inicio
sA<- 0
sB<- 0
para l de 1 ate 3 faca
para c de 1 ate 3 faca
escreva("Digite um número: ")
leia(matA[l,c])
sA<- sA + matA[l,c]
fimpara
fimpara
Algoritmos - exercícios 12
para c de 1 ate 3 faca
escreva("Digite um número: ")
leia(matB[l,c])
sB<- sB + matB[l,c]
fimpara
fimpara
limpatela
// mostrar a matriz
escreval("MATRIZ A -------")
para l de 1 ate 3 faca
para c de 1 ate 3 faca
escreva(matA[l,c])
fimpara
escreval()
fimpara
escreval("MATRIZ B -------")
para l de 1 ate 3 faca
para c de 1 ate 3 faca
escreva(matB[l,c])
fimpara
escreval()
fimpara
escreval("MATRIZ C -------")
para l de 1 ate 3 faca
para c de 1 ate 3 faca
escreva(matC[l,c])
fimpara
escreval()
fimpara
//resultados
Algoritmo "semnome"
// algoritmo para ler nomes
// informar em qual posição o nome informado está
Var
matA: vetor[1..2,1..2] de caractere
x: caractere
l, c : inteiro
Inicio
Algoritmos - exercícios 13
se (matA[l,c] = x) entao
escreval("Esse nome", matA[l,c], " foi informado pelo usuário na posição", l, c)
senao
escreval("Não foi informado")
fimse
Fimalgoritmo
Algoritmo "semnome"
// matriz quadrada
// valor 2 quando índices forem iguais
// valor -3 quando índices forem diferentes
// somar a diagonal principal
Var
matA: vetor[1..3,1..3] de inteiro
l, c, soma, sDP: inteiro
Inicio
sDP<- 0
para l de 1 ate 3 faca
para c de 1 ate 3 faca
leia(matA[l,c])
se (l=c) entao
matA[l,c]<- 2
sDP<- sDP + matA[l,c]
senao
matA[l,c]<- -3
fimse
fimpara
fimpara
limpatela
// falta soma
// mostrar a matriz
escreval("MATRIZ A")
para l de 1 ate 3 faca
para c de 1 ate 3 faca
escreva(matA[l,c])
fimpara
escreval()
fimpara
// mostrar resultados
escreval("A soma da diagonal principal é: ", sDP)
Fimalgoritmo
Algoritmo "MatrizexemploBOM"
Var
mat: vetor[1..4, 1..4] de inteiro
l, c, sDP, p2L, maior3C: inteiro
Inicio
sDP<-0 //somar os números da diagonal principal
p2L<- 1 // começa com o 1 por conta da multiplicação, se for por zero vai zerar tudo
para l de 1 ate 4 faca
para c de 1 ate 4 faca
escreva("digite um número: ")
leia(mat[l,c])
se (l=c) entao
Algoritmos - exercícios 14
sDP<- sDP + mat[l,c]
fimse
fimpara
fimpara
// fazer outro para apenas para a coluna, pois a linha é fixa (L2)
para c de 1 ate 4 faca
p2L<- p2L * mat[2, c] // multiplicando pelo prox numero q foi digitado
fimpara
// fazer outro para apenas a linha, pois a coluna agr é fixa (C3)
para l de 1 ate 4 faca
se (mat[l,3]> maior3C) entao
maior3C<- mat[l,3] // para declarar que um valor será maior faz isso
fimse
fimpara
// mostrar resultados
escreval("A soma da diagonal principal é", sDP)
escreval("A multiplicação da linha 2 é", p2L)
escreval("O maior valor na coluna 3 é", maior3C)
Fimalgoritmo
Algoritmo "MATRIZIDENTIDADE"
Var
mat: vetor[1..3, 1..3] de inteiro
l, c: inteiro
Inicio
para l de 1 ate 3 faca
para c de 1 ate 3 faca
se (l=c) entao
mat[l,c]<- 1
senao
mat[l,c]<- 0
fimse
fimpara
fimpara
para l de 1 ate 3 faca
para c de 1 ate 3 faca
escreva(mat[l,c]:3)
fimpara
escreval() // vai mostrar a matriz no formato que escrevemos
fimpara
Fimalgoritmo
Algoritmo "semnome"
Var
mat: vetor[1..3, 1..2] de inteiro
l, c, totpar: inteiro
Inicio
Algoritmos - exercícios 15
para l de 1 ate 3 faca
para c de 1 ate 2 faca
escreva("digite um numero: ")
leia(mat[l,c])
fimpara
fimpara
totpar<-0
para l de 1 ate 3 faca
para c de 1 ate 2 faca
se (mat[l,c] % 2 = 0) entao
escreva("{",mat[l,c],"}" )
totpar<- totpar +1
senao
escreva(mat[l,c]: 3)
fimse
fimpara
escreval()
fimpara
escreval("A quantidade de valores pares", totpar)
Fimalgoritmo
Modularização
Algoritmo "volumedeESFERAFUNCAO"
Var
raio, res: real
// globais
fimfuncao
Fimalgoritmo
Algoritmo "somaFunção"
Var
V1, V2, s: inteiro
// globais
Algoritmos - exercícios 16
escreval("digite o segundo valor: ")
leia(V2)
s<- soma(V1,V2) //cria na função
escreval("A soma entre V1 e V2 é: ", s)
Fimalgoritmo
Algoritmo "exemploProcedimento"
procedimento soma(var A,B: inteiro) //quando coloca a palavra var, quer dizer passagem de parâmetro por referência
inicio
fimprocedimento
X<- 8 // globais
Y<- 6 // o endereço de x vai ser passado para A e o de y para B (NÃO É O VALOR)
soma(X,Y)
escreval("valor de X: ", X)
escreval("valor de Y: ", Y)
escreva(X,Y) //aq vai ser mostrado já o resultado da soma
Fimalgoritmo
Algoritmo "parImparFuncao"
Var
V1, V2, N: inteiro
res: caractere
// globais
Fimalgoritmo
Algoritmo "funcoesprontas"
// Funções do visualG
Var
// Seção de Declarações das variáveis
Algoritmos - exercícios 17
nome: caractere
i: inteiro
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
escreva("Digite seu nome: ")
leia(nome)
escreval("total de letras no seu nome ", compr(nome))
escreval("seu nome maíusculo ", maiusc(nome))
escreval("seu nome minusculo ", minusc(nome))
escreval("a primeira letra do seu nome é ", copia(nome, 1,1))
escreval("a última letra do seu nome é ", copia(nome, 4, 1)) //ultima letra
escreval("posição da letra E do seu nome é ", pos("E", nome)) //pode colocar se é maisculo ou minusculo
escreval("o codigo da letra B é ", asc("B"))
Algoritmo "fatorialFuncao"
Var
N,F: inteiro
// globais
fimfuncao
Fimalgoritmo
Algoritmo "exemploProcedimento"
//sem parametros
// Disciplina : [Linguagem e Lógica de Programação]
Var
peso, i, maior: inteiro
nome, pesado: caractere
procedimento topo()
inicio
limpatela
escreval("DETECTOR DE PESADO")
escreval("Maior peso até agora", maior, "kg")
escreval("----------------------------------")
fimprocedimento
Inicio
topo()
para i de 1 ate 4 faca
Algoritmos - exercícios 18
escreval("nome: ")
leia(nome)
escreval("peso: ")
leia(peso)
se (peso > maior) entao
maior<- peso
pesado<- nome
fimse
topo()
fimpara
topo()
escreval("A pessoa mais pesada foi ", pesado, " com", maior, " quilos")
Fimalgoritmo
Algoritmo "parIMPARprocedimento"
Var
i: inteiro
vet: vetor[1..6] de inteiro // globais
inicio
fimprocedimento
Fimalgoritmo
Algoritmo "ex1.MOD"
//sem parametros
// Disciplina : [Linguagem e Lógica de Programação]
Var
letras: vetor[1..10] de caractere
i, quant: inteiro
x: caractere
Inicio
quant<- 0
para i de 1 ate 10 faca
escreva("digite uma letra: ")
leia(letras[i])
fimpara
Algoritmos - exercícios 19
quant<- quant+1
fimse
fimpara
//resultados
escreva("A letra digitada tem no vetor: ", quant, " vezes")
Fimalgoritmo
Algoritmo "exemploProcedimento"
//sem parametros
// Disciplina : [Linguagem e Lógica de Programação]
Var
A,B: inteiro
escreval("valor A:", A)
escreval("valor B: ", B)
escreval("A soma entre o valor A e B é: ", A+B)
fimprocedimento
Inicio
// atribuir valor
A<- 3 + 2
B<- 4 + 1
soma(A,B) // vai para o procedimento, parâmetro
Fimalgoritmo
Algoritmos - exercícios 20