Ir ao conteúdo

MarcoShadowbolt

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Tudo que MarcoShadowbolt postou

  1. Boa noite, o problema que tinha antes foi resolvido, agora criou outro kkkk. Preciso da ajuda de vocês, como faço para encontrar os múltiplos de um número com recursividade que estão inseridos na árvore. O enunciado é esse: ''Considerando o mesmo programa que você desenvolveu em sala de aula, baseado em árvore binária, desenvolva agora uma nova funcionalidade que solicita ao usuário um número, e o programa apresenta se esse número (e todos os seus múltiplos) estão na árvore.'' Meu código está assim: struct trabalhop { int numero; struct trabalhop* dir; struct trabalhop* esq; }; typedef struct trabalhop tree; tree* cria_arvore_vazia() { return NULL; } tree* criar_arvore(int numero, tree* dir, tree* esq) { tree* arvore = (tree*) malloc(sizeof(tree)); arvore->numero = numero; arvore->dir = dir; arvore->esq = esq; return arvore; } tree* inserir(tree* arvore, int numero) { if(arvore==NULL) { arvore= criar_arvore(numero, NULL, NULL); }else if (numero < arvore->numero) { arvore->esq = inserir(arvore->esq, numero); }else { arvore->dir = inserir(arvore->dir, numero); } return arvore; } tree* buscar(tree* arvore, int numero) { if(arvore == NULL) { return NULL; } if(numero == arvore->numero) { return arvore; } if(numero > arvore->numero) { return buscar(arvore->dir, numero); }else { return buscar(arvore->esq, numero); } } int main() { int n, opcao; tree *arvore = cria_arvore_vazia(); tree *arvore_busca; do { printf("BEM VINDO AO MENU\n"); printf("\nESCOLHA UMA DAS opções:\n"); printf("\n1 - INSERIR"); printf("\n2 - BUSCAR POR NUMERO E SEUS MULTIPLOS."); printf("\n3 - BUSCAR NOS 'RAIZ' "); printf("\n4 - SAIR\n"); scanf("%i",&opcao); system("cls"); switch(opcao){ case 1: { printf("Insira um numero inteiro: "); scanf ("%i",&n); arvore = inserir(arvore, n); system("cls"); break; } case 2: { printf("Informe o numero que deseja buscar: "); scanf("%i", &n); arvore_busca = buscar(arvore, n); printf("\nNumero: %i\n", arvore_busca->numero); break; } case 3: { } case 4: { printf("Volte sempre!!\n"); exit(0); break; } default: { printf("Opcao invalida!!\n"); printf("Por favor digite uma opcao valida\n"); break; } } }while(opcao != 4); return 0; system("pause"); }

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!