Ir ao conteúdo
  • Cadastre-se

mgwn

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. Olá! Estou fazendo um trabalho sobre algoritmo de Dijkstra, e estou tendo problemas para ler o arquivo de entrada. O arquivo de entrada seguirá o seguinte modelo: Onde a 1ª linha me dirá a quantidade de vértices e arestas do grafo, a última linha o ponto de partida (origem), e o restante as arestas. Não estou conseguindo ler as arestas e atribuir o peso aos respectivos vértices. Segue meu código: #include <stdlib.h> #include <stdio.h> #include <limits.h> int letraParaNumero(char vertice){ char c = vertice; int v = c - 65; return v; } int main(){ int V, E; FILE *f = fopen("dados.txt", "r"); fscanf(f, "%d %d", &V, &E); // lê primeira linha do arquivo int grafo[V][V]; int v1, v2, peso; char vertice1, vertice2; while(fscanf(f, "%c %c %d", &vertice1, &vertice2, &peso) != EOF){ v1 = letraParaNumero(vertice1); v2 = letraParaNumero(vertice2); grafo[v1][v2] = peso; grafo[v2][v1] = peso; } fclose(f); } Também preciso fazer a leitura da última linha e atribuir a variável de partida, que seria lida como um char e convertida para int com a função letraParaNumero. Obrigado pela atenção!

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!