Escolar Documentos
Profissional Documentos
Cultura Documentos
INTRODUÇÃO…………………………………………………………………….……1
LOGICA DE ALGORITMO DE UMA BIBLIOTECA...................................................2
TIPOS DE DADOS...........................................................................................................7
CONCLUSÃO.................................................................................................................11
ANEXO...........................................................................................................................12
0
INTRODUÇÃO
Os algoritmos são como uma receita de bolo: uma sequência de ações que
devem ser executadas até que o objectivo final - o bolo pronto - seja atingido.
1
LOGICA DE ALGORITMO DE UMA BIBLIOTECA
algoritmo "Biblioteca"
// Função :
// Autor :
var
//Criação das variaveis
cpf,nome,exclusao,endereco,livro, autor, editora, ano: vetor [1..20] de caracter
telefone:vetor [1..20] de inteiro
x,y,z: inteiro
opcao: inteiro
//criacao do menu de opções
procedimento MenuP
var
//não irei utilizar nenhuma var local neste procedimento.
inicio
Limpatela
Escreval (" ******************")
Escreval (" * MENU PRINCIPAL *")
Escreval (" ******************")
Escreval ("")
escreval ("#1 - Cadastrar livro")
escreval ("#2 - Buscar livro ")
escreval ("#3 - Listar livro")
escreval ("#4 - Excluir livro")
escreval ("#5 - Emprestar livro")
escreval ("#6 - Devolver livro")
escreval ("#7 - Cadastrar Leitor")
escreval ("#8 - Buscar leitor")
escreval ("#9 - Excluir leitor")
escreval ("#10 - Sair")
Escreval ("")
Escreva ("Entre com a sua opção: ")
leia (opcao)
escolha opcao
caso 1
cadastrolivro
caso 2
buscarlivro
caso 3
2
listarlivro
caso 4
excluirlivro
caso 5
emprestarlivro
caso 6
devolverlivro
caso 7
cadastroleitor
caso 8
buscarleitor
caso 9
excluirleitor
caso 10
sair
outrocaso
MenuP
fimescolha
fimprocedimento
// Fim procedimento menu principal
3
limpatela
Escreval (" ****************")
Escreval (" * LISTAR *")
Escreval (" ****************")
para i de 1 ate x faca
escreval ("Nome do livro : ", livro)
escreval ("Nome do autor : ", autor)
escreval ("Nome da editora : ", editora)
escreval ("Ano de puplicacao : ", ano)
escreval ("")
fimpara
escreval ("Pressione *|ENTER|* para continuar")
leia (C)
MenuP// chama o MENU PRINCIPAL
fimprocedimento
// Fim procedimento Listar
// Busca os registros
procedimento buscarlivro
var
i, a : inteiro
busca, c : caracter
inicio
limpatela
Escreval (" ****************")
Escreval (" * BUSCAR *")
Escreval (" ****************")
escreva ("Entre com o nome do livro: ")
leia (busca)
a <- 0
para i de 1 ate (x-1) faca
se livro = busca então
a <- i
fimse
fimpara
//inicio de impressão do livro.
se a> 0 então
Escreval (" ***********************************")
Escreval ("Nome do livro : ", livro[a])
Escreval ("Nome do autor : ", autor[a])
Escreval ("Nome da editora : ", editora[a])
Escreval ("Ano de publicação : ", ano[a])
Escreval (" ***********************************")
Escreval ("")
senao
escreval ("O livro ", busca, " não foi encontrado em nosso banco de dados")
fimse
escreval ("Pressione *|ENTER|* para continuar")
leia (c)
MenuP
fimprocedimento
4
// Fim procedimento Buscar
// inicio do procedimento de excluir
procedimento excluirlivro
var
i, a : inteiro
busca, c : caracter
inicio
limpatela
Escreval (" ****************")
Escreval (" * EXCLUIR*******")
Escreval (" ****************")
escreva ("Entre com o nome do livro a ser excluído: ")
leia (busca)
a <- 0
para i de 1 ate (x-1) faca
se livro = busca então
a <- i
x<-i
fimse
fimpara
escreval (" Exclusão realizada com sucesso")
escreval ("Pressione *|ENTER|* para continuar")
leia (c)
MenuP
fimprocedimento
// inicio do procedimento de cadastro de leitor
procedimento cadastroleitor
var
//não precisa de nenhuma variavel local
inicio
limpatela
Escreval ("")
Escreval (" *****************")
escreval (" * Cadastro Nº",y, " *")
Escreval (" *****************")
escreval ("")
escreva ("Nome do aluno: ")
leia (nome[y])
escreva ("CPF do aluno: ")
leia (CPF[y])
escreva ("Endereço: ")
leia (endereco[y])
escreva ("Telefone ")
leia (telefone[y])
y <- y + 1
MenuP
fimprocedimento
// fim do procedimento de cadastro do leitor
// Busca os registros de alunos
procedimento buscarleitor
5
var
i, a : inteiro
busca, c : caracter
inicio
limpatela
Escreval (" ****************")
Escreval (" * BUSCAR LEITOR*")
Escreval (" ****************")
escreva ("Entre com o nome do leitor: ")
leia (busca)
a <- 0
para i de 1 ate (x-1) faca
se nome = busca então
a <- i
fimse
fimpara
//inicio de impressão do livro.
se a> 0 então
Escreval (" ***********************************")
Escreval ("Nome do Aluno : ", nome[a])
Escreval ("CPF do Aluno : ", cpf[a])
Escreval ("Endereço do Aluno : ", endereco[a])
Escreval ("Telefone do Aluno : ", telefone[a])
Escreval (" ***********************************")
Escreval ("")
senao
escreval ("O Aluno ", busca, " não foi encontrado em nosso banco de dados")
fimse
escreval ("Pressione *|ENTER|* para continuar")
leia (c)
MenuP
fimprocedimento
procedimento excluirleitor
var
i, a : inteiro
busca, c : caracter
inicio
limpatela
Escreval (" ****************")
Escreval (" * EXCLUIR*******")
Escreval (" ****************")
escreva ("Entre com o nome do leitor: ")
leia (busca)
a <- 0
para i de 1 ate (x-1) faca
se nome = busca então
a <- i
fimse
fimpara
//inicio de impressão do livro.
6
se a> 0 então
escreval (" Exclusão realizada com sucesso")
escreval ("Pressione *|ENTER|* para continuar")
leia (c)
MenuP
fimprocedimento
//inicio do procedimento SAIR
procedimento sair
inicio
limpatela
fimprocedimento
//fim do procedimento SAIR
inicio
//*********
//atribuir valor para X e Y
x<- 1
y<- 1
z<- 1
//*********
//MENU PRINCIPAL
MenuP
fimalgoritmo
TIPOS DE DADOS
Inteiro: define variáveis numéricas do tipo inteiro, ou seja, sem casas decimais.
Real: define variáveis numéricas do tipo real, ou seja, com casas decimais.
7
Nomes de Variáveis e sua Declaração Os nomes das variáveis devem começar
por uma letra e depois conter letras, números ou underline, até um limite de 30
caracteres. As variáveis podem ser simples ou estruturadas (na versão atual, os vetores
podem ser de uma ou duas dimensões). Não pode haver duas variáveis com o mesmo
nome, com a natural exceção dos elementos de um mesmo vetor.
a <- 3 Valor1 <- 1.5 Valor2 <- Valor1 + a vet[1] <- vet[1] + (a * 3) matriz[3,9]
<- a/4 - 5 nome_do_aluno <- "José da Silva" sinalizador <- FALSO
-3, +x. Enquanto o operador unário - inverte o sinal do seu operando, o operador
+ não altera o valor em nada o seu valor. \ Operador de divisão inteira.
8
inteira). Por exemplo, 8 MOD 3 = 2. Tem a mesma precedência do operador de divisão
tradicional. ^ Operador de potenciação. Por exemplo, 5 ^ 2 = 25. Tem a maior
precedência entre os operadores aritméticos binários (aqueles que têm dois operandos).
9
VERDADEIRO se seus dois operandos lógicos forem diferentes, e FALSO se forem
iguais. Equivale ao XOR do Pascal.
escreval (). Idem ao anterior, com a única diferença que pula uma linha em
seguida. É equivalente ao writeln do Pascal. Exemplos: algoritmo "exemplo" var x: real
y: inteiro a: caractere l: logico inicio x <- 2.5 y <- 6 a <- "teste" l <- VERDADEIRO
escreval ("x", x:4:1, y+3:4) // Escreve: x 2.5 9 escreval (a, "ok") // Escreve: testeok (e
depois pula linha) escreval (a, " ok") // Escreve: teste ok (e depois pula linha)
10
CONCLUSÃO
11
ANEXO
12