Informática, perguntado por isapuala334, 9 meses atrás

Questão A

Vamos fazer a programação de uma ARVORE para testar seu conhecimento no computador.

Aqui você deve fazer um programa em linguagem C ou C++ que contenha os seguintes itens:

A estrutura de dados (struct) deverá conter os seguintes dados:

nome do município

· área total do município (em km2)

· população

A árvore deverá ter funções para inserir, percorrer e listar, que podem ser conseguidas nas aulas da disciplina (e não valerão nota, mas formam a base para ela). Então, prossiga resolvendo a avaliação:

a) Faça uma função que conte o número de municípios, percorrendo os nós cadastrados na árvore.

b) Faça uma função que mostre apenas os nomes dos municípios com mais de X habitantes. Por exemplo, X pode ser 100.000 pessoas.

c) Faça uma função que mostre a densidade demográfica de cada cidade. A densidade demográfi

Soluções para a tarefa

Respondido por LarissaMoura3
0

A árvore com as determinadas funções para inserir, percorrer e listar pode ser desenvolvida da seguinte forma:

''#include <stdio.h>

#include <string.h>

#include <stdlib.h>

#define TAM 5

#define MAX 80

int main ()

{

  /* Declarando um vetor de apontadores */

  char *mat[TAM];

  /* Declara um buffer para efetuar a leitura */

  char buffer[MAX];

  int i,j;

  printf("\nEntre com %d Frases:\n\n", TAM);

  for (i=0; i<TAM; i++)

  {

      gets(buffer);

      /* Aloca em mat[i] a quantidade de caracteres suficiente para armazenar o buffer */

      mat[i]=(char *) calloc((strlen(buffer)+1), sizeof(char));

      /* Testa se a alocação teve sucesso */

      if (!mat)

      {

          printf ("** Erro: Memoria Insuficiente **");

          for(j=0; j < i; j++)

              free(mat[j]);

          exit(1);

      }

      /* Copia a string, do buffer para o vetor de strings */

      strcpy(mat[i],buffer);

  }    

  printf("\nFrases digitadas");

  for(i=0; i<TAM; i++)

  printf("%s\n", mat[i]);

  for(j=0; j<TAM; j++)

  free(mat[j]);

}''

As árvores binárias são interessantes considerando a forma que as mesmas são percorridas. Distintos algoritmos possibilitam esse processo, entre eles estão os de busca em largura e busca em profundidade.

Bons estudos!

Perguntas interessantes