Após implementar as funções, utilize a seguinte função principal para testar o seu
programa:
#
#
#
include <stdio.h>
include <stdlib.h>
include "arvore.h"
int main()
{
int n;
NoArvore *arvore1 = arvore_Cria(1,
arvore_Cria(2,
arvore_Cria(4,arvore_criaVazia(),arvore_criaVazia()),
arvore_Cria(5,arvore_criaVazia(),arvore_criaVazia())),
arvore_Cria(3,
arvore_criaVazia(),
arvore_Cria(6,arvore_criaVazia(),arvore_criaVazia())));
NoArvore *arvore2 = arvore_Cria(1,
arvore_Cria(2,
arvore_Cria(4,arvore_criaVazia(),arvore_criaVazia()),
arvore_Cria(5,
arvore_Cria(6,arvore_criaVazia(),arvore_criaVazia()),
arvore_criaVazia())),
arvore_Cria(3,
arvore_criaVazia(),arvore_criaVazia()));
printf("Arvore 1:\n\n");
arvore_imprime(arvore1,0);
printf("\n");
printf("Arvore 2:\n\n");
arvore_imprime(arvore2,0);
printf("\n");
n = arvore_folhas(arvore1);
printf("Total Folhas Arvore 1: %d\n", n);
n = arvore_folhas(arvore2);
printf("Total Folhas Arvore 2: %d\n", n);
n = arvore_intermediarios(arvore1);
printf("Total Intermediarios Arvore 1: %d\n", n);
n = arvore_intermediarios(arvore2);
printf("Total Intermediarios Arvore 2: %d\n", n);
n = arvore_pares(arvore1);
printf("Total Pares Arvore 1: %d\n", n);
n = arvore_pares(arvore2);
printf("Total Pares Arvore 2: %d\n", n);
n = arvore_iguais(arvore1, arvore2);
printf("Arvore 1 igual a arvore 2? %s\n", n == 1? "Sim":"Nao");
n = arvore_iguais(arvore1, arvore1);
printf("Arvore 1 igual a arvore 1? %s\n", n == 1? "Sim":"Nao");
n = arvore_alturaMaior(arvore1, 2);
printf("Altura da arvore 1 eh maior que 2? %s\n", n == 1? "Sim":"Nao");
n = arvore_alturaMaior(arvore2, 2);
printf("Altura da arvore 2 eh maior que 2? %s\n\n", n == 1? "Sim":"Nao");
return 0;
}