Sei sulla pagina 1di 48

ALGORITMOS UTILIZADOS NAS AULAS DE

ALGORITMOS E PROGRAMAÇÃO

algoritmo "conversaoCF"
// Seção de Declarações
var
celsius, far, celsius_inicial : real
qt_temp, incremento,i:inteiro
inicio
// Seção de Comandos

escreval("Informa a temperatura inicial em Graus Celsius:")


leia(celsius_inicial)
escreval("Informa a quantidade de temperaturas da tabela:")
leia(qt_temp)
escreval("Informe o incremento de temperatura em Graus Celsius")
leia(incremento)

celsius<-celsius_inicial
para i de 1 ate qt_temp faca
far<-9/5*celsius+32;
celsius<-celsius+incremento
escreva(i," - ")
escreval("Celsius:",celsius)
escreval("Farenheit:",far)
escreval("")
fimpara
fimalgoritmo

algoritmo "conversaoCFf"
// Seção de Declarações
var
far,celsius: real

funcao conv(c:real):real
var res: real
inicio

res<-9/5*c+32;
retorne res
fimfuncao

inicio
// Seção de Comandos

escreval("Informa a temperatura inicial em Graus Celsius:")


leia(celsius)

far<-conv(celsius)

escreval("Temperatura em Farehneit:", far)

fimalgoritmo
algoritmo "conversaoCF"
// Seção de Declarações
var
celsius,celsius_inicial : real
qt_temp, incremento,i:inteiro
vcelsius, vfar: vetor [1..50] de real
inicio
// Seção de Comandos

escreval("Informa a temperatura inicial em Graus Celsius:")


leia(celsius_inicial)
escreval("Informa a quantidade de temperaturas da tabela:")
leia(qt_temp)
escreval("Informe o incremento de temperatura em Graus Celsius")
leia(incremento)

celsius<-celsius_inicial
para i de 1 ate qt_temp faca
vfar[i]<-9/5*celsius+32;
celsius<-celsius+incremento
vcelsius[i]<-celsius
fimpara

para i de 1 ate qt_temp faca


escreva(i," - ")
escreval("Celsius:",vcelsius[i])
escreval("Farenheit:",vfar[i])
escreval("")
fimpara

fimalgoritmo
algoritmo "Maior2"
// Função : Verificar o maior de dois numeros
// Autor : Profa. Maristela.
// Data : 11/01/2015
// Seção de Declarações
var
n1,n2: real;

inicio
// Seção de Comandos
escreval("Digite dois números quaisquer: ")
leia(n1)
leia(n2)

se (n1>n2) entao
escreva(n1, " e maior que ", n2)
senao
escreva(n2, " e maior que ", n1)
fimse

fimalgoritmo
algoritmo "Maior3"
// Função : Verificar o maior de tres numeros e ordenar (crescente)
// Autor : Profa. Maristela.
// Data : 11/01/2015
// Seção de Declarações
var
n1,n2,n3: real

inicio
// Seção de Comandos
escreval("Digite tres números quaisquer: ")
leia(n1)
leia(n2)
leia(n3)

se (n1=n2) e (n2=n3) entao


escreva ("Os tres numeros sao iguais :", n1, n2, n3)
senao
se (n1=n2) ou (n2=n3) ou (n1=n3) entao
escreva ("Ha numeros iguais :", n1, n2 ,n3)
senao

se (n1>n2) e (n1>n3) e (n2>n3) entao


escreva (" n1>n2>n3 ", n1,">", n2,">", n3)
fimse

se (n1>n3) e (n1>n2) e (n3>n2) entao


escreva (" n1>n3>n2 ", n1,">", n3,">", n2)
fimse
se (n2>n3) e (n2>n1) e (n3>n1) entao
escreva (" n2>n3>n1 ", n2,">", n3,">", n1)
fimse

se (n2>n1) e (n2>n3) e (n1>n3) entao


escreva (" n2>n1>n3 ", n2,">", n1,">", n3)
fimse

se (n3>n1) e (n3>n2) e (n1>n2) entao


escreva (" n3>n1>n2 ", n3,">", n1,">", n2)
fimse

se (n3>n2) e (n3>n1) e (n2>n1) entao


escreva (" n3>n2>n1 ", n3,">", n2,">", n1)
fimse
fimse
fimse

fimalgoritmo
algoritmo "Med-Arit"
// Função : Calcular a média aritmética
// Autor : Profa. Maristela.
// Data : 11/01/2015
// Seção de Declarações
var
ma, n1, n2, n3, n4: real

inicio
// Seção de Comandos
escreval("Digite as 4 notas: ")
leia(n1)
leia(n2)
leia(n3)
leia(n4)

ma<-(n1+n2+n3+n4)/4

escreval("")
escreva("A media eh:",ma)

fimalgoritmo
algoritmo "Med-Arit"
// Função : Calcular a média aritmética
// Autor : Profa. Maristela.
// Data : 11/01/2015
// Seção de Declarações
var
ma, n1, n2, n3, n4: real

inicio
// Seção de Comandos
escreval("Digite as 4 notas: ")
leia(n1)
leia(n2)
leia(n3)
leia(n4)

ma<-(n1+n2+n3+n4)/4

escreval("")
escreva("A media eh:",ma)
escreval("")

se (ma>=7) entao
escreval("Aluno Aprovado!!")
senao
se (ma>=4) entao
escreval("Aluno em Exame!!")
senao
escreval("Aluno Reprovado!!")
fimse
fimse

fimalgoritmo
algoritmo "Med-Pond"
// Função : Calcular a média ponderada
// Autor : Profa. Maristela.
// Data : 11/01/2015
// Seção de Declarações
var
mp, n1, n2, n3: real
p1,p2,p3: inteiro

inicio
// Seção de Comandos
escreval("Digite as 3 notas: ")
leia(n1)
leia(n2)
leia(n3)

escreval("Digite os 3 pesos: ")


leia(p1)
leia(p2)
leia(p3)

mp<-((n1*p1)+(n2*p2)+(n3*p3))/(p1+p2+p3)

escreval("")
escreva("A media ponderada eh:",mp)

fimalgoritmo
algoritmo "Med-Pond-selecao"
// Função : Calcular a média ponderada
// Autor : Profa. Maristela.
// Data : 11/01/2015
// Seção de Declarações
var
mp, n1, n2, n3: real
p1,p2,p3: inteiro

inicio
// Seção de Comandos
escreval("Digite as 3 notas: ")
leia(n1)
leia(n2)
leia(n3)

escreval("Digite os 3 pesos: ")


leia(p1)
leia(p2)
leia(p3)

mp<-((n1*p1)+(n2*p2)+(n3*p3))/(p1+p2+p3)

escreval("")
escreva("A media ponderada eh:",mp)

se (mp>=0) e (mp<=10) entao


se (mp>=8) e (mp<=10) entao
escreva (" Conceito A ")
senao
se (mp>=7) e (mp<8) entao
escreva (" Conceito B")
senao
se (mp>=6) e (mp<7) entao
escreva (" Conceito C")
senao
se (mp>=0) entao
escreva (" Conceito D")
fimse
fimse
fimse
fimse
senao
escreva (" Media Invalida!!!")
fimse

fimalgoritmo
algoritmo "par_impar"
// Função : Identificar numeros pares ou ímpares
// Autor :
// Data : 3/20/2015
// Seção de Declarações
var
numero,resto:inteiro
inicio
// Seção de Comandos
escreva("Digite um numero inteiro:")
leia(numero)
resto<-numero mod 2
se(resto=0) entao
escreva("O numero : ",numero, "e par!!")
senao
escreva("O numero : ",numero, "e impar!!")
fimse

fimalgoritmo
algoritmo "par_impar"
// Função : Identificar numeros pares ou ímpares
// Autor : Prof. Maristela.
// Data : 3/20/2015
// Seção de Declarações
var
ni, nf,resto,i:inteiro
inicio
// Seção de Comandos
//vamos trocar a entrada de um número pela
//entrada de um numero inicial e um numero final ok?

escreva("Digite um numero inteiro para iniciar:")


leia(ni)
escreva("Digite um numero inteiro para finalizar:")
leia(nf)

para i de ni ate nf faca

resto<-i mod 2
se(resto=0) entao
escreval(i, " - par")
senao
escreval(i, " - impar")
fimse

fimpara

fimalgoritmo
algoritmo "Quadrado"
// Seção de Declarações
var
lado, area: real

inicio
// Seção de Comandos
escreval("Digite o valor para um lado: ")
leia(lado)
area<-lado*lado
escreval("Area do quadrado=",area)

fimalgoritmo
algoritmo "quadrados"
// Seção de Declarações
var
n,i:inteiro
soma,valor:real

inicio
// Seção de Comandos

escreval("Soma dos Quadrados")

escreval("")
escreval("Digite o número de valores:")
leia(n)
escreval("")

soma<-0
para i de 2 ate n faca
escreval("Digite um valor:")
leia(valor)
soma<-soma+(valor*valor)
fimpara

escreval("Soma dos quadrados=",soma)

fimalgoritmo

algoritmo "Triangulo"
// Função : identificar tipo de triangulo
// Autor : Profa. Maristela.
// Data : 11/01/2015
// Seção de Declarações
var
a,b,c: real

inicio
// Seção de Comandos
escreval("Digite o valor para 3 lados de um triangulo: ")
leia(a)
leia(b)
leia(c)

se (a<b+c) ou (b<a+c) ou (c<a+b) entao


escreval("E um triangulo!!")
se (a=b) e (b=c) entao
escreval("Triangulo Equilatero")
senao
se ((a=b) e (b<>c)) ou ((a=c) e (c<>b)) ou ((b=c) e (c<>a)) entao
escreval("Triangulo Isosceles")
senao
escreval("Triangulo Escaleno")
fimse
fimse
senao
escreval("Nao e um triangulo!!")
fimse

fimalgoritmo
algoritmo "vol-esfera"
// Função : Calcular o volume de uma esfera
// Autor : Profa. Maristela.
// Data : 11/01/2015
// Seção de Declarações
var
V,r: real

inicio
// Seção de Comandos
escreval("Digite o valor do raio: ")
leia(r)

V<-4/3*(Pi*r^3)

escreval("")
escreva("O volume eh:",V)

fimalgoritmo
algoritmo "primo"
// Função : Identificar se o número é primo
// Autor : Prof. Maristela.
// Data : 3/20/2015
// Seção de Declarações
var

numero, resto, qt_restos, i: inteiro


inicio
// Seção de Comandos
//vamos trocar a entrada de um número pela
//entrada de um numero inicial e um numero final ok?

resto<-0
qt_restos<-0
escreva("Digite um numero:")
leia(numero)

para i de 1 ate numero faca

resto<- numero mod i


se (resto=0) entao
qt_restos<-qt_restos+1
fimse
//escreval("resto= ", resto)

fimpara
se (qt_restos=2) entao
escreva("O numero ",numero, " e primo")
senao
escreva("O numero ",numero, " nao e primo")
fimse

fimalgoritmo
algoritmo "qprimo"
// Função : Contar quantos números primos há entre os valores digitados
// Autor : Prof. Maristela.
// Data : 3/20/2015
// Seção de Declarações
var

numero, resto, qt_restos, i: inteiro


inicio
// Seção de Comandos
//vamos trocar a entrada de um número pela
//entrada de um numero inicial e um numero final ok?

numero<-1
enquanto (numero<>0) faca

resto<-0
qt_restos<-0
escreval("Digite um numero (Caso deseje encerrar, digite 0 (zero):")
leia(numero)

para i de 1 ate numero faca

resto<- numero mod i


se (resto=0) entao
qt_restos<-qt_restos+1
fimse
fimpara
se (qt_restos=2) entao
escreval("O numero ",numero, " e primo")
senao
escreval("O numero ",numero, " nao e primo")
fimse

fimenquanto

fimalgoritmo
algoritmo "par_impar"
// Função : Identificar numeros pares ou ímpares
// Autor : Prof. Maristela.
// Data : 3/20/2015
// Seção de Declarações
var
n,i:inteiro
valor,soma:real
inicio
// Seção de Comandos
//vamos trocar a entrada de um número pela
//entrada de um numero inicial e um numero final ok?

escreva("Digite a quantidade de valores:")


leia(n)

para i de 1 ate n faca

escreva("Digite um valor:")
leia(valor)
se (valor>=0) entao
soma<-soma+valor
fimse

fimpara
escreva("A soma dos valores positivos e: ", soma)

fimalgoritmo
algoritmo "fatorial"
// Função : calcular o fatorial de um numero qualquer
// Autor : Maristela
// Data : 3/24/2015
// Seção de Declarações
var
fat, n, i, ant: inteiro
inicio
// Seção de Comandos
fat<-0
ant<-1
escreva("Digite um numero qualquer:")
leia(n)

para i de 1 ate n faca


fat<-i*ant
ant<-fat
fimpara
escreva("Fatorial de ",n, " e = ",fat)

fimalgoritmo
algoritmo "par_impar"
// Função : Maior e menor de 50
// Autor : Prof. Maristela.
// Data : 3/20/2015
// Seção de Declarações
var
i:inteiro
maior, menor, valor:real
inicio
// Seção de Comandos
//vamos trocar a entrada de um número pela
//entrada de um numero inicial e um numero final ok?

maior<-0
menor<-999999999999

para i de 1 ate 5 faca

escreva("Digite um valor:")
leia(valor)
se (valor>maior) entao
maior<-valor
fimse
se (valor<menor) entao
menor<-valor
fimse

fimpara
escreval("O maior valor digitado e: ", maior)
escreval("O menor valor digitado e: ", menor)

fimalgoritmo
algoritmo "par_impar"
// Função : Identificar numeros pares ou ímpares
// Autor : Prof. Maristela.
// Data : 3/20/2015
// Seção de Declarações
var
ni, nf,resto,i:inteiro
inicio
// Seção de Comandos
//vamos trocar a entrada de um número pela
//entrada de um numero inicial e um numero final ok?

escreva("Digite um numero inteiro para iniciar:")


leia(ni)
escreva("Digite um numero inteiro para finalizar:")
leia(nf)

para i de ni ate nf faca

resto<-i mod 2
se(resto=0) entao
escreval(i, " - par")
senao
escreval(i, " - impar")
fimse

fimpara

fimalgoritmo
algoritmo "temperatura"

// Função : Farenheit para Celsius

// Autor : Prof. Maristela.

// Data : 3/20/2015

// Seção de Declarações

var

i : inteiro

resp:caracter

c: vetor [1..100] de real

f: vetor [1..100] de real

inicio

//seção de comandos

resp<-"S"

i<-1

enquanto (resp="S") faca

escreval("*** Entrada de Dados ***")

escreval("")

escreva("Digite a temperatura em Farenheit:")

leia(f[i])

c[i]<-(f[i]-32)/1.8

escreval("")

escreval("Deseja continuar cadastrando? (S/N)")

leia(resp)

i<-i+1

limpatela
fimenquanto

limpatela

escreval("*** Relatorio de Saida de Temperaturas ***")

escreval("")

para i de 1 ate 100 faca

se ((f[i]=0) e (c[i]=0)) entao

i<-101

senao

escreval("Farenheit: ",f[i])

escreval("Celsius : ",c[i])

se(c[i]<5) entao

escreval("FRIO")

fimse

se((c[i]>=5) e(c[i]<25)) entao

escreval("AGRADAVEL")

fimse

se(c[i]>=25) entao

escreval("QUENTE")

fimse

escreval("--------------------------------------------------------------")

fimse

fimpara

fimalgoritmo
algoritmo "vetor_10"

// Função : Incluir 10 números em um vetor e mostrá-los

// Autor : Prof. Maristela.

// Data : 3/20/2015

// Seção de Declarações

var

i,j,k : inteiro

v1 : vetor [1..10] de real

inicio

//seção de comandos

para i de 1 ate 10 faca

escreval("Digite um numero qualquer:")

leia(v1[i])

fimpara

limpatela

para i de 1 ate 10 faca

escreval("v",i,": ",v1[i])

fimpara

fimalgoritmo
algoritmo "vetor_10"

// Função : Incluir 10 números em um vetor e mostrá-los

// Autor : Prof. Maristela.

// Data : 3/20/2015

// Seção de Declarações

var

i,j,k : inteiro

v1 : vetor [1..10] de real

aux: real

inicio

//seção de comandos

para i de 1 ate 10 faca

escreval("Digite um numero qualquer:")

leia(v1[i])

fimpara

limpatela

aux<-v[1]

para i de 2 ate 10 faca

se (aux>v[i]) entao

aux<-v[i]

senao
aux = vetor[i];

vetor[i] = vetor[j];

vetor[j] = aux;

fimpara

para i de 1 ate 10 faca

escreval("v",i,": ",v1[i])

fimpara

fimalgoritmo
algoritmo "vetor_10"

// Função : Incluir 10 números em um vetor e mostrá-los

// Autor : Prof. Maristela.

// Data : 3/20/2015

// Seção de Declarações

var

i,j,k : inteiro

v1 : vetor [1..10] de real

s1 : vetor [1..10] de real

rep1: vetor[1..10] de real

rep, maior, menor, media:real

inicio

//seção de comandos

para i de 1 ate 10 faca

escreval("Digite um numero qualquer:")

leia(v1[i])

se (i>1) entao

s1[i]<-s1[i-1]+v1[i]

senao

s1[i]<-v1[i]

fimse

fimpara

limpatela
maior<-0

menor<-999999999

k<-0

para i de 1 ate 10 faca

escreval("v",i,": ",v1[i])

escreval("somatorio parcial",i,": ",s1[i])

se (v1[i]>maior) entao

maior<-v1[i]

fimse

se (v1[i]<menor) entao

menor<-v1[i]

fimse

para j de 1 ate 10 faca

se(v1[i]=rep1[j]) entao

escreval("Repetiu: ", v1[i])

k<-k+1

rep1[k]<-v1[i]

fimse

fimpara

fimpara

media<-s1[10]/10

escreval("Maior=",maior," Menor=",menor," Media=",media)

fimalgoritmo
algoritmo "matriz_aut"

var

matriz:vetor[1..10,1..10] de inteiro

i,j,m,n:inteiro

inicio

escreval("***** Entrada de Dados *****")

escreval("")

escreva("Digite o numero de linhas e o numero de colunas para matriz:")

leia(m,n)

para i de 1 ate m faca

para j de 1 ate n faca

matriz[i,j]<-0

fimpara

fimpara

limpatela

escreval("***** Resultados da matriz *****")

para i de 1 ate m faca

para j de 1 ate n faca

//escreval("Linha:",i," Coluna:",j," Numero=",matriz[i,j])

escreva(matriz[i,j])

fimpara
escreval("")

fimpara

fimalgoritmo
algoritmo "matriz_aut"

var

matriz:vetor[1..10,1..10] de inteiro

i,j,m,n:inteiro

inicio

escreval("***** Entrada de Dados *****")

escreval("")

escreva("Digite o numero de linhas e o numero de colunas para matriz:")

leia(m,n)

para i de 1 ate m faca

para j de 1 ate n faca

se(i=1) entao

matriz[i,j]<-1

senao

matriz[i,j]<-0

fimse

fimpara

fimpara

limpatela

escreval("***** Resultados da matriz *****")

para i de 1 ate m faca


para j de 1 ate n faca

//escreval("Linha:",i," Coluna:",j," Numero=",matriz[i,j])

escreva(matriz[i,j])

fimpara

escreval("")

fimpara

fimalgoritmo
algoritmo "matriz_aut"

var

matriz:vetor[1..10,1..10] de inteiro

i,j,m,n:inteiro

inicio

escreval("***** Entrada de Dados *****")

escreval("")

escreva("Digite o numero de linhas e o numero de colunas para matriz:")

leia(m,n)

para i de 1 ate m faca

para j de 1 ate n faca

se(j=1) entao

matriz[i,j]<-1

senao

matriz[i,j]<-0

fimse

fimpara

fimpara

limpatela

escreval("***** Resultados da matriz *****")

para i de 1 ate m faca


para j de 1 ate n faca

//escreval("Linha:",i," Coluna:",j," Numero=",matriz[i,j])

escreva(matriz[i,j])

fimpara

escreval("")

fimpara

fimalgoritmo
algoritmo "matriz_par"

var

m:vetor[1..3,1..3] de inteiro

resto, qtpar,i,j:inteiro

inicio

qtpar <-0

escreval("***** Entrada de Dados *****")

escreval("")

para i de 1 ate 3 faca

para j de 1 ate 3 faca

escreva("Digite um valor para linha:",i," coluna:",j,":")

leia(m[i,j])

resto<-m[i,j] mod 2

se(resto=0) entao

qtpar<-qtpar+1

fimse

fimpara

fimpara

limpatela

escreval("***** Resultados da matriz *****")


para i de 1 ate 3 faca

para j de 1 ate 3 faca

resto<-m[i,j] mod 2

se(resto=0) entao

escreval("Linha:",i," Coluna:",j," Numero=",m[i,j])

fimse

fimpara

fimpara

escreval("Quantidade de numeros pares: ", qtpar)

fimalgoritmo
algoritmo "Mult_matrizes"

// Função : Multiplicação de matrizes

// Autor : Maristela.

// Data : 06/04/2015

// Seção de Declarações

var

mat1: vetor [1..3,1..3] de inteiro //linha,coluna

mat2: vetor [1..3,1..3] de inteiro //linha,coluna

mat3: vetor [1..3,1..3] de inteiro //linha,coluna

m,n,l,c,i,j,acumula,k:inteiro

inicio

// Seção de Comandos

escreval("***** Entrada de Dados *****")

escreval("")

escreva("Digite o numero de linhas e o numero de colunas para as matrizes:")

leia(m)

leia(n)

para i de 1 ate m faca

para j de 1 ate n faca

escreva("Matriz 1: Digite um valor para linha: ",i," coluna: ",j,": ")

leia(mat1[i,j])

fimpara

fimpara
para i de 1 ate m faca

para j de 1 ate n faca

escreva("Matriz 2: Digite um valor para linha: ",i," coluna: ",j,": ")

leia(mat2[i,j])

fimpara

fimpara

limpatela

//l<-1

//c<-1

escreval("***** Resultado *****")

para i de 1 ate m faca

para j de 1 ate n faca

//mat3[i,j]<-((mat1[i,1]*mat2[1,j])+(mat1[i,2]*mat2[2,j]))

//mat3[i,j]<-((mat1[i,c]*mat2[l,j])+(mat1[i,c+1]*mat2[l+1,j]))

acumula<-0

para k de 1 ate n faca

acumula<-(acumula+(mat1[i,k]*mat2[k,j]))

fimpara

mat3[i,j]<-acumula

escreval("Matriz 3 ",i , " x ",j , " : ", mat3[i,j])

fimpara

fimpara
fimalgoritmo
algoritmo "temperatura"

// Função : Farenheit para Celsius

// Autor : Prof. Maristela.

// Data : 3/20/2015

// Seção de Declarações

var

i,j : inteiro

resp:caracter

temperatura: vetor [1..100,1..2] de real //linha,coluna

inicio

//seção de comandos

resp<-"S"

i<-1

enquanto (resp="S") faca

escreval("*** Entrada de Dados ***")

escreval("")

escreva("Digite a temperatura em Farenheit:")

leia(temperatura[i,1])

temperatura[i,2]<-(temperatura[i,1]-32)/1.8

escreval("")

escreval("Deseja continuar cadastrando? (S/N)")

leia(resp)

i<-i+1

limpatela

fimenquanto
limpatela

escreval("*** Relatorio de Saida de Temperaturas ***")

escreval("")

escreval("Farenheit: | Celsius | Situacao")

para i de 1 ate 100 faca

se ((temperatura[i,1]=0) e (temperatura[i,2]=0)) entao

i<-101

senao

escreva(temperatura[i,1]," | ",temperatura[i,2]," | ")

se(temperatura[i,2]<5) entao

escreval("FRIO")

fimse

se((temperatura[i,2]>=5) e(temperatura[i,2]<25)) entao

escreval("AGRADAVEL")

fimse

se(temperatura[i,2]>=25) entao

escreval("QUENTE")

fimse

fimse

fimpara

escreval("--------------------------------------------------------------")

fimalgoritmo

Potrebbero piacerti anche