void menuInicial(){ int opcao = -1; while(opcao != 0){ imprimirOpcoes(0); scanf("%d", &opcao); switch(opcao){ case 1: menuInsercaoArvore(); break; case 2: menuRemocaoArvore(); break; case 3: menuImpressaoArvore(); break; case 4: menuBuscaArvore(); break; case 0: break; default: printf("Opcao invalida.\n\n"); } } }
void menuInsercaoArvore(){ int opcao = -1; char nomeDoArquivo[12]; imprimirOpcoes(1); scanf("%d", &opcao); switch(opcao){ case 1: printf("\nColoque o nome do arquivo para a insercao de elementos na arvore:\nO arquivo deve ter no maximo 12 caracteres no nome\n"); scanf("%s", nomeDoArquivo); lerArquivo(&arvore, nomeDoArquivo); break; default: printf("Opcao Invalida.\n"); } }
void menuImpressaoArvore(){ int opcao; imprimirOpcoes(3); scanf("%d", &opcao); switch(opcao){ case 1: if(arvore.topo == NULL){ printf("Arvore vazia!\n"); } else { imprimirArvore(arvore.topo); } break; default: printf("Opcao Invalida\n\n"); } }
void menuRemocaoArvore(){ tipoNo* aux; int opcao = -1; int elemento; imprimirOpcoes(2); scanf("%d", &opcao); switch(opcao){ case 1: printf("\nEscolha um elemento para remover da arvore: "); scanf("%d", &elemento); aux = buscarNaArvore(elemento, arvore); if(aux){ removerDaArvore(elemento, &arvore); printf("\nSucesso. O elemento foi removido.\n"); } else printf("\nEste elemento nao esta na arvore.\n"); break; default: printf("Opcao Invalida.\n\n"); } }
void menuBuscaArvore(){ int opcao; int elemento; tipoNo *aux; imprimirOpcoes(4); scanf("%d", &opcao); switch(opcao){ case 1: printf("\nEscolha um elemento para buscar: "); scanf("%d", &elemento); aux = buscarNaArvore(elemento, arvore); if(aux){ printf("\nElemento encontrado!\n"); } else { printf("\nElemento nao encontrado!\n"); } break; default: printf("Opcao invalida.\n\n"); break; } }
int main(){ bool sair = false; int opcaoSelecionada; int valorInserido; No *Arvore = NULL; Arvore = (No*) malloc(sizeof(No)); imprimirOpcoes(); while(!sair){ scanf("%d", &opcaoSelecionada); switch(opcaoSelecionada){ case 0: ; imprimirOpcoes(); break; case 1: ; printf("Digite o valor para Busca Recursiva\n"); scanf("%d",&valorInserido); buscaRecursiva(Arvore, valorInserido); break; case 2: ; printf("Digite o valor para Busca Iterativa\n"); scanf("%d",&valorInserido); buscaIterativa(Arvore, valorInserido); break; case 3: ; printf("Digite o valor para Insercao Iterativa\n"); scanf("%d",&valorInserido); insercaoIterativa(Arvore,valorInserido); break; case 4: ; printf("Digite o valor para Insercao Recursiva\n"); scanf("%d",&valorInserido); insercaoRecursiva(Arvore,valorInserido); break; case 5: ; printf("Digite o valor para Remocao\n"); scanf("%d",&valorInserido); remocao(Arvore,valorInserido); break; case 6: ; percursoPre(Arvore); break; case 7: ; percursoIn(Arvore); break; case 8: ; percursoPos(Arvore); break; case 9: ; free(Arvore); sair = true; break; default: ; printf("Opcao invalida, digite 0 para ver todas as opcoes validas\n\n"); break; } } return 0; }