grafos
* CALCULO DA DISTANCIA MINIMA EM UM GRAFO *
* *
* MAIN.C *
* *
**********************************************************************/
/* Inclusão de Bibliotecas */
#include
#include
#include
#include
/* Valor padrão para definir vértices não adjacentes */
#define INFINITO_POSITIVO 1000
/* FUNÇÃO PRINCIPAL DO PROGRAMA */ int main()
{
/*********************************************************************/
/***************** DECLARAÇÃO DE VARIÁVEIS ************************/
/********************************************************************/
/* Variavel para trabalhar com o arquivo de texto */
FILE *txt;
/* Variaveis para trabalhar com o grafo */ int origem, destino, peso, grafo[100][100];
/* Armazena a menor distancia de v0 a todos os outros i vértices de G. */ int dist[100];
/* Vetor booleano:
1 significa que o vetor está em C. 0 significa que não está */ int C[100];
/* Variáveis auxiliares para a execução de laços no programa. */ int i,j;
/* Variável Auxiliar, para definir o vértice de V(G) analisado */ int w = 0;
/* Variavel auxiliar para definir a posição do w escolhido dentro do vetor de distâncias. */ int posicao_w;
/* Variavel posicao_wiliar para definir |V(C)| */ int tamanho_C = 0;
/**********************************************************************/
/**************** TRABALHANDO COM O GRAFO *************************/
/*********************************************************************/
/* Atribuindo um valor infinito à todas as posições da matriz, fazendo com que caso alguma aresta não exista, não seja utilizada pelo algoritmo de menor caminho */ for(i = 0; i < 100; i++){ for(j = 0; j < 100; j++){ grafo[i][j] = INFINITO_POSITIVO;
}
}
/**********************************************************************/
/******************** LEITURA DE ARQUIVOS ***************************/