Você está na página 1de 6

algoritmo "Locadora"

// Função : Locadora
// Autor : Jucelino Filho
// Data : 28/03/2011
// Seção de Declarações
var
CPF,ALUGUEL,STATUS,CATEGORIA,NOMEFILME,NOME:VETOR [1..20] DE CARACTER
OPC,X,F:INTEIRO
FILME1,CLIENTE1,ALUGUEL1,CODFILM,DEVOLVERFILME:INTEIRO
Q:CARACTER
OPC1:CARACTER
OPCCPF:REAL

PROCEDIMENTO MENUPRINCIPAL
INICIO
repita
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. LOCADORA LOC MAIS .-.-.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-.")
ESCREVAL("
")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-.")
ESCREVAL(" 1-MENU FILME
")
ESCREVAL(" 2-MENU CLIENTES
")
ESCREVAL(" 3-ALUGAR
")
ESCREVAL(" 4-DEVOLVER
")
ESCREVAL(" 5-VOLTAR
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-.")
REPITA
ESCREVA("ESCOLHA UMA OPÇÃO! ")
LEIA(OPC)
ATE(OPC>=1)E(OPC<=5)
LIMPATELA
ESCOLHA OPC
CASO 1
MFILMES
CASO 2
MCLIENTE
CASO 3
ALUGAR
CASO 4
DEVOLVER
CASO 5
INTERROMPA
OUTROCASO
ESCREVAL("OPÇÃO INVALIDA ESCOLHA UMA OPÇÃO DE 1 ATE 5")
FIMESCOLHA
ATE FALSO
ATE OPCAO=5
FIMPROCEDIMENTO
PROCEDIMENTO MFILMES
INICIO
repita
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.LOC MAIS-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
-.-.-.-.-.-.-.-.-.")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
-.-.-.-.-.-.-.-.-.")
ESCREVAL(" 1- CADASTRAR
")
ESCREVAL(" 2- LISTAR
")
ESCREVAL(" 3- SAIR
")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
-.-.-.-.-.-.-.-.-.")
repita
ESCREVA("ESCOLHA UMA OPÇÃO:")
leia(OPC)
ate (OPC>=1)e(OPC<=3)
LIMPATELA
escolha OPC
CASO 1
CADASTROFILME
CASO 2
LISTARFILME
CASO 3
INTERROMPA
OUTROCASO
ESCREVAL("OPÇÃO INVALIDA ESCOLHA UMA OPÇÃO DE 1 ATE 3 ")
FIMESCOLHA
FIMREPITA
FIMPROCEDIMENTO
PROCEDIMENTO CADASTROFILME
INICIO
REPITA
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-")
ESCREVAL("
")
ESCREVAL(" CADASTRO FILME
")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-")
ESCREVA("DIGITE O NOME DO FILME : ")
FILME1<-FILME1+1
LEIA(NOMEFILME[FILME1])
ESCREVA("DIGITE A CATEGORIA DO FILME : ")
LEIA(CATEGORIA[FILME1])
STATUS[FILME1]<-"DISPONIVEL"
REPITA
ESCREVAL("DESEJA CADASTRAR OUTRO FILME S OU N ?")
LEIA(OPC1)
ATE(OPC1="S")OU (OPC1="N")
LIMPATELA
ATE OPC1="N"
LIMPATELA
FIMPROCEDIMENTO
PROCEDIMENTO LISTARFILME
inicio
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
-.-.-.-.-.-.-.-.-")
ESCREVAL("
")
ESCREVAL(" LISTAGEM DE FILMES
")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
-.-.-.-.-.-.-.-.-")
ESCREVAL("COD FILME CATEGORIA STATUS ALUGAD
O ")
PARA F de 1 ate FILME1 faca
se status[F]="DISPONIVEL" entao
ALUGUEL[F]<-"DISPONIVEL"
fimse
ESCREVAL(F," ",NOMEFILME[F]," ",CATEGORIA[F],"
",STATUS[F]," ",ALUGUEL[F])
FIMPARA
ESCREVA("DIGITE QUALQUER TECLA PARA CONTINUAR : ")
LEIA(Q)
LIMPATELA
FIMPROCEDIMENTO
PROCEDIMENTO MCLIENTE
INICIO
REPITA
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-CLIENTE-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-")
ESCREVAL(" 1- CADASTRAR
")
ESCREVAL(" 2- LISTAR
")
ESCREVAL(" 3- SAIR
")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-")
REPITA
ESCREVA("OPÇÃO:")
LEIA(OPC)
ATE (OPC>=1)e(OPC<=3)
LIMPATELA
ESCOLHA OPC
CASO 1
CADASTROCLIENTE
CASO 2
LISTARCLIENTE
CASO 3
INTERROMPA
OUTROCASO
ESCREVAL("OPÇÃO INVALIDA ESCOLHA UMA OPÇÃO DE 1 ATE 3 ")
FIMESCOLHA
FIMREPITA
fimprocedimento
PROCEDIMENTO CADASTROCLIENTE
INICIO
REPITA
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
-.-.-.-.-.-.-.-.-.-.-.-")
ESCREVAL("
")
ESCREVAL(" CADASTRO DO CLIENTE
")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
-.-.-.-.-.-.-.-.-.-.-.-")
ESCREVA("DIGITE O NOME DO CLIENTE : ")
CLIENTE1<-CLIENTE1+1
LEIA(NOME[CLIENTE1])
ESCREVA("DIGITE DIGITE O CPF DO CLIENTE : ")
LEIA(CPF[CLIENTE1])
REPITA
ESCREVAL("DESEJA CADASTRAR OUTRO CLIENTE S OU N ?")
LEIA(OPC1)
ATE(OPC1="S")OU (OPC1="N")
LIMPATELA
ATE OPC1="N"
LIMPATELA
FIMPROCEDIMENTO
PROCEDIMENTO LISTARCLIENTE
INICIO
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-")
ESCREVAL("
")
ESCREVAL(" Listagem de Clientes
")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-")
ESCREVAL("Cod. Nome CPF")
PARA X DE 1 ATE CLIENTE1 FACA
ESCREVAL(X," ",NOME[x]," ",CPF[x])
FIMPARA
ESCREVA("DIGITE QUALQUER TECLA PARA CONTINUAR : ")
LEIA(Q)
LIMPATELA
FIMPROCEDIMENTO
PROCEDIMENTO ALUGAR
INICIO
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-LOC MAIS-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
-.-.-.-.-.-.-.-.-")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.--.-.-.-.-.-.-.-.
-.-.-.-.-.-.-.-.-")
ESCREVAL(" ALUGAR FILMES
")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.--.-.-.-.-.-.-.-.
-.-.-.-.-.-.-.-.-")
REPITA
ESCREVA("DIGITE O CODIGO DO CLIENTE : ")
LEIA(ALUGUEL1)
ESCREVAL(NOME[ALUGUEL1])
ATE(ALUGUEL1>=1)E (ALUGUEL1<=CLIENTE1)
REPITA
ESCREVA("DIGITE O CODIGO DO FILME ",NOME[ALUGUEL1],":")
LEIA(CODFILM)
LIMPATELA
ATE(CODFILM>=1)E(CODFILM<=FILME1)
SE STATUS[CODFILM]="ALUGADO" ENTAO
REPITA
ESCREVA("FILME : " ,CODFILM,"ESTA ALUGADO ESCOLHA OUTRO FILME")
LEIA(CODFILM)
SE STATUS="DISPONIVEL" ENTAO
ESCREVA("FILME",CODFILM,"ALUGADO COM SUCESSO PARA" ,CLIENTE1)ENTAO
STATUS<-"ALUGADO"
FIMSE
FIMSE
FIMREPITA
LIMPATELA
FIMPROCEDIMENTO

PROCEDIMENTO DEVOLVER
inicio
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-LOC MAIS.-.-.-.-.-.-.--.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.--.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-")
ESCREVAL(" DEVOLVER FILMES
")
ESCREVAL("
")
ESCREVAL("-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.--.-.-.-.-.-.-
.-.-.-.-.-.-.-.-.-.-")
REPITA
ESCREVA("DIGITE O CODIGO DO FILME QUE SERA DEVOLVIDO : ")
LEIA(DEVOLVERFILME)
LIMPATELA
ATE(DEVOLVERFILME>=1)E(DEVOLVERFILME<=CODFILM)
SE STATUS[DEVOLVERFILME]="DISPONIVEL" ENTAO
REPITA
ESCREVAL("O FILME",CODFILM," "," JÁ ESTA NA LOCADORA IMPOSSIVEL ENTR
EGAR! ")
ATE DEVOLVERFILME=CODFILME

ESCREVAL("FILME DEVOLVIDO COM SUCESSO VOLTE SEMPRE")


STATUS[DEVOLVERFILME]<-"DISPONIVEL"
FIMSE
FIMREPITA
FIMPROCEDIMENTO

INICIO
MENUPRINCIPAL
inicio
escreval("ENTER PARA CONTINUAR")
leia(Q)
limpatela
fimrepita
fimalgoritmo