Alguém pode me ajudar a resolver esse raciocínio lógico que eu não estou conseguindo resolver, que é a implantação de um menu onde eu cadastro, listo, busco e excluo o usuário.
e além de excluir o usuário, os posteriores tem que assumir a posição do que foi apagado.
Algoritmo "Remover usuário da estrutura de arrays bidimensionais"
procedimento menu ()
var
op : caractere // Opções do menu
fimproc : inteiro // Opção de sair do menu
Inicio
repita
limpatela
escreval ("********** Menu **********")
escreval ("Digite o numero da opção desejada.")
escreval ("")
escreval ("1 - Cadastrar usuário")
escreval ("2 - Listar")
escreval ("3 - Buscar")
escreval ("4 - Excluir")
escreval ("5 - Sair")
escreval ("")
escreva ("Digite uma opção: ")
leia(op)
limpatela
escolha(op)
caso "1"
cadastro()
caso "2"
listar()
caso "3"
buscar()
caso "4"
excluir()
caso "5"
fimproc <- 5
interrompa
outrocaso
Menu()
fimescolha
ate(fimproc = 5)
fimprocedimento
se encontrou = 0 então
escreval ("Usuário não encontrado")
fimse
leia (sr)
fimprocedimento
procedimento excluir()
var
nome : caractere
encontra : inteiro
contador : inteiro
scont : inteiro
scontd : inteiro
aux : caracter
inicio
limpatela
escreval ("----- Excluir Cadastrado -----")
escreva ("Digite o nome para a Excluir; ")
leia(nome)
limpatela
encontra <- 0
para contador de 0 ate 4 faca
se (usuario[contador]) = nome então
usuario[contador,0]:= ""
usuario[contador,1]:= ""
encontra <-1
escreval (" Usuario Excluido!")
escreval ("Aperte qualquer tecla para voltar.")
leia(sr)
// A Reorganização acontece aqui
se usuario[contador] = "" então
para scont de contador+0 ate 4 faca
para scontd de contador+0 ate 1 faca
aux <- usuario[cont,contd]
usuario[scont,scontd] <- usuario[scont+1,scontd+1]
usuario[cont,contd+1] <- usuario[scont,scontd+1]
usuario[cont+1,contd+1] <- aux
fimpara
fimpara
fimse
fimse
fimpara
Pergunta
DuarteGuilher
Alguém pode me ajudar a resolver esse raciocínio lógico que eu não estou conseguindo resolver, que é a implantação de um menu onde eu cadastro, listo, busco e excluo o usuário.
e além de excluir o usuário, os posteriores tem que assumir a posição do que foi apagado.
Algoritmo "Remover usuário da estrutura de arrays bidimensionais"
procedimento menu ()
var
op : caractere // Opções do menu
fimproc : inteiro // Opção de sair do menu
Inicio
repita
limpatela
escreval ("********** Menu **********")
escreval ("Digite o numero da opção desejada.")
escreval ("")
escreval ("1 - Cadastrar usuário")
escreval ("2 - Listar")
escreval ("3 - Buscar")
escreval ("4 - Excluir")
escreval ("5 - Sair")
escreval ("")
escreva ("Digite uma opção: ")
leia(op)
limpatela
escolha(op)
caso "1"
cadastro()
caso "2"
listar()
caso "3"
buscar()
caso "4"
excluir()
caso "5"
fimproc <- 5
interrompa
outrocaso
Menu()
fimescolha
ate(fimproc = 5)
fimprocedimento
procedimento cadastro()
var
op: inteiro
inicio
limpatela
escreval ("--------- Menu de cadastro ---------")
escreva ("Nome: ")
Leia (usuario[cont,contd])
contd := contd + 1
escreva ("Idade: ")
leia (usuario[cont,contd])
cont := cont + 1
contd := contd - 1
fimprocedimento
procedimento listar()
var
inicio
para cont de 0 ate 4 faca
escreva ("|Nome: ",Usuario[cont,0])
escreval (" - Idade: ",usuario[cont,1],"|")
fimpara
escreval("----------------------")
escreva ("Digite qualquer tecla para sair.")
leia (sr)
fimprocedimento
procedimento buscar(): caractere
var
nome : caractere
encontrou : inteiro
contador : inteiro
inicio
limpatela
escreval ("----- Buscar Cadastrados -----")
escreva ("Digite o nome para a busca: ")
leia(nome)
limpatela
encontrou <- 0
para contador de 0 ate 4 faca
se (usuario[contador]) = nome então
escreval ("Nome: ", usuario[contador,0], "| Idade ", usuario[contador,1])
encontrou <-1
fimse
fimpara
se encontrou = 0 então
escreval ("Usuário não encontrado")
fimse
leia (sr)
fimprocedimento
procedimento excluir()
var
nome : caractere
encontra : inteiro
contador : inteiro
scont : inteiro
scontd : inteiro
aux : caracter
inicio
limpatela
escreval ("----- Excluir Cadastrado -----")
escreva ("Digite o nome para a Excluir; ")
leia(nome)
limpatela
encontra <- 0
para contador de 0 ate 4 faca
se (usuario[contador]) = nome então
usuario[contador,0]:= ""
usuario[contador,1]:= ""
encontra <-1
escreval (" Usuario Excluido!")
escreval ("Aperte qualquer tecla para voltar.")
leia(sr)
// A Reorganização acontece aqui
se usuario[contador] = "" então
para scont de contador+0 ate 4 faca
para scontd de contador+0 ate 1 faca
aux <- usuario[cont,contd]
usuario[scont,scontd] <- usuario[scont+1,scontd+1]
usuario[cont,contd+1] <- usuario[scont,scontd+1]
usuario[cont+1,contd+1] <- aux
fimpara
fimpara
fimse
fimse
fimpara
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.