Ir ao conteúdo

Rafaelmos

Membro Pleno
  • Posts

    41
  • Cadastrado em

  • Última visita

Tudo que Rafaelmos postou

  1. @fspjonny Certo obrigado novamente, eu limitei assim, por que não manjo muito de usar algumas funções, como estou aprendendo tentei fazer de uma forma que eu consiga compreender melhor e também que alguém que não saiba muito programação entenda.
  2. Esqueci de te mostrar como ficou o código kkk. lista = [ 2 , 0, 5 , 8 , 9] print (lista) v = int(input("Digite o valor a ser procurado: ")) if v not in lista: print ("valor nao existe na lista") else: indice = lista.index(v) antecessor = indice-1 tamanho = len(lista) sucessor = indice+1 if sucessor >= tamanho: print(f"Antecessor de {v} é {lista[antecessor]}") print(f"Sucessor não exite") elif antecessor <= tamanho-(tamanho+1): print(f"Antecessor não exite") print(f"Sucessor de {v} é {lista[sucessor]}") elif antecessor >= tamanho-(tamanho+1) and tamanho >= sucessor: print(f"Antecessor de {v} é {lista[antecessor]}") print(f"Sucessor de {v} é {lista[sucessor]}")
  3. Bom tenho outra duvida, eu você pode ver minha outra pergunta, https://www.clubedohardware.com.br/forums/topic/1413058-sobre-o-antecessor-e-sucessor-de-uma-arvore-binária/?tab=comments#comment-7640117 Essa pergunta que fiz aqui, antes dessa da arvore, era para tentar fazer uma gambiarra, mas notei que não ia funcionar, devido que a lista ficava poderia só ficar em InOrdem, PosOrdem ou em PreOrdem, assim, não dava para eu fazer dessa maneira. Ai tentei de outra maneira, mas não estou conseguindo chamara função sucessor nem a antecessor.
  4. Ajudaram sim, fui meio lento para entender, mas terminei entendendo.
  5. Opa @fspjonny valeu, desculpe por demorar a responder, eu conseguir aqui. Agradeço.
  6. class No: def __init__(self, valor): self.valor = valor self.direita = None self.esquerda = None def __str__(self): return str(self.valor) class Arvore: def __init__(self): self.raiz = None self.folhas = 0 def __addNo(self, no, perc): if no.valor > perc.valor: if perc.direita == None: perc.direita = no else: self.__addNo(no, perc.direita) elif no.valor < perc.valor: if perc.esquerda == None: perc.esquerda = no else: self.__addNo(no, perc.esquerda) else: raise ("Esse número ja existe") def add(self, valor): no = No(valor) if self.raiz == None: self.raiz = no else: self.__addNo(no, self.raiz) self.folhas += 1 def __buscarNo(self, valor, perc, pai): if perc == None: return None, pai if perc.valor == valor: return perc, pai else: if valor > perc.valor: return self.__buscarNo(valor, perc.direita, perc) else: return self.__buscarNo(valor, perc.esquerda, perc) def buscar(self, valor): if self.raiz == None: return False no, pai = self.__buscarNo(valor, self.raiz, None) if no == None: return False return True def __imprimir(self, perc): if perc != None: print(perc) self.__imprimir(perc.esquerda) self.__imprimir(perc.direita) def imprimir(self): self.__imprimir(self.raiz) def antecessor(self, perc, pai): if perc.direita == None: return perc, pai else: self.antecessor(perc.direita, perc) def sucessor(self, perc, pai): if perc.esquerda == None: return perc, pai else: self.sucessor(perc.esquerda, perc) def remover(self, valor): if self.raiz == None: raise ("...") no, pai = self.__buscarNo(valor, self.raiz, None) if no == None: raise ("...") elif no.esquerda == None: if pai == None: self.raiz = self.raiz.direita else: if pai.esquerda == no.esquerda: pai.esquerda = no.direita else: pai.direita = no.direita elif no.direita == None: if pai == None: self.raiz = self.raiz.esquerda else: if perc.esquerda == no: perc.esquerda = no.esquerda else: perc.direita = no.esquerda else: sucessor, sucessorPai = self.sucessor(no.direita, no) no.valor = sucessor.valor if sucessorPai == no.direita: sucessorPai.direita = None else: sucessorPai.esquerda = None self.folhas -= 1 arvore = Arvore() arvore.add(10) arvore.add(30) arvore.add(70) arvore.add(50) arvore.add(200) arvore.add(150) arvore.add(300) #arvore.remover(10) #arvore.imprimir() #print(arvore.buscar(150)) #print(arvore.folhas) antecessor = arvore.antecessor(50) print("Antecessor" , antecessor) Bom galera do forum estou tentado, retornar a função do sucessor e antecessor dessa árvore, mas não estou sabendo como, não sei se é algum erro na codificação ou se estou tentando imprimir valor do sucessso/antecessor de maneira errada. Vocês poderiam me indicar como posso corrigir essas funções se estiverem incorretas, ou me mostrar a forma correta de chama-las.
  7. Estou querendo, fazer uma função que procure dentro de uma lista uma string ou numeral, e diga o sucessor e antecessor dele nessa lista. Por exemplo [ 2 , 0 , 5 , 8 , 9] Ai se eu digitasse o numero 5, a programa me falasse que o 0 vem antes do 5 na lista e o 9 vem depois.
  8. @El_Gabriel_10 assim como o DiF eu recomendo a UE4, pois apesar de ter menos tutoriais sobre ela na net, ela é uma engine diretamente ligada a EpicGames, recomendo tu pegar um curso de 20 conto pelo Udemy sobre a UE4, para tu pegar uma noção boa com ela, mas também pode procurar no Youtube que é a mesma coisa kkk.
  9. @LNPotte @Hanner pois obrigado pela informação, vou dar uma pesquisadas nessas fontes que vocês me recomendaram e vou pegar uma no meu orçamento.
  10. As configurações são Pentium G5400, 16Gb de Ram 2400mhz(dois pentes de 8gb), B360M Plus Gaming, junto com a Gpu Rx570 eu precisaria de quantos watts ?

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!