Ir para conteúdo
Fórum Script Brasil
  • 0

DUVIDA GRAFOS


Leo Junio

Pergunta

Pessoal estou com a seguinte duvida. Estou com um método que imprimi em um Form, logo preciso que seja impresso em um arquivo como faço isto?

segue meu codigo abaixo.

/**

* Imprimir os vertices pendentes no Form1

**/

void TGrafo::VerticesPendentes() {

AnsiString Aux = "";

for( int x = 0; x < n; x++ ){

if ( RetornaGrau(x) == 1 ) {

Aux = Aux + AnsiString(RetornaNome(x).c_str()) + " ";

}//fim if

}//fim for

Form1->Relatorio->Lines->Add(Aux);

}//fim VerticesPendentes

Criei um metodo no main q gera o arquivo, mas o metodo acima é void como inserir o resultado no arquivo?

Abaixo o main do meu programa

#include "grafo.h"

#include <iostream> //cin e cout (windows: iostream.h)

#include <fstream> //fun ̧~es de arquivo (windows: fstream.h)

using namespace std;

//=====================================================================

// DEFINICOES DE CONSTANTES

//=====================================================================

#define endl "\n"

#define TAB_MENU "\t\t\t\t\t\t"

#define TAB "\t"

#define MAX_TAM 100

void gerarRelatorio(Grafo *g){

//cria e abre um arquivo para a escrita em modo texto

ofstream fout ("teste.txt");

//escreve no arquivo

fout << "\nNumero de Vertices: " << g->numeroVertice();

fout << "\nNumero de Arestas: " << g->numeroAresta();

fout << "\nNumero de Componetes: " << g->numeroComponente();

fout << "\nO grafo é Regular? ";

if (g->Regular()== 0){

fout << "Não" ;

}

else

fout << "Sim" ;

fout << "\nO grafo é Nulo? " << g->Nulo();

fout << "\nO grafo é Completo? " ;

if (g->Completo()== 0){

fout << "Não";

}

else

fout << "Sim";

fout << "\nO grafo é Simples? ";

if (g->Simples()== 0){

fout << "Não";

}

else

fout << "Sim";

fout << "\nO grafo é Euleriano? ";

if (g->Euleriano()== 0){

fout << "Não";

}

else

fout << "Sim";

fout << "\nO grafo é Unicursal? ";

if (g->Unicursal()== 0){

fout << "Não";

}

else{

fout << "Sim";

}

fout << "\nO grafo possui condiçoes para ser Hamiltoniano? ";

if (g->Hamiltoniano() == 0){

fout << "Não";

}

else{

fout << "Sim";

}

// fout << "\nGrafo Complementar: " << g->Complementar();

//...

/*//fout << "\nLISTA ADJ:";

for(int i = 0; i < g->numeroVertice(); i++){

fout << "\nVertice(" << i << "):"

//....

}*/

// fecha o arquivo

fout.close();

}

//=====================================================================

// FUNCAO PRINCIPAL

//=====================================================================

int main(int argc, char **argv){

Grafo *g = new Grafo;

char opcao;

FILE *arq;

//Validar o arquivo que contem o grafo

if(argc != 2){

cout << endl << "ERRO: Sintaxe ./main <NOME_ARQUIVO_GRAFO>" << endl << endl;

exit(1);

}else{

arq = fopen(argv[1],"r");

if (arq == NULL){

cout << endl << "ERRO: O arquivo " << argv[1] << " não existe." << endl << endl;

exit(1);

}

fclose(arq);

}

//Leitura do grafo

g->lerGrafo(argv[1]);

do{

clrscr();

cout << "================================" << endl;

cout << "TP1 - GTC - PUC MINAS" << endl;

cout << "================================" << endl;

cout << endl << endl << endl;

cout << TAB_MENU << "(I)Imprimir Grafo" << endl;

cout << TAB_MENU << "(2)Relatorio" << endl;

cout << TAB_MENU << "(3)Grafo Complementar" << endl;

// cout << TAB_MENU << "(1)Verifica se Grafo é Complementar" << endl;

cout << TAB_MENU << "(S)Sair" << endl;

opcao = toupper(getch());

clrscr();

cout << "================================" << endl;

cout << "TP1 - GTC - PUC MINAS" << endl;

cout << "================================" << endl;

cout << endl << endl << endl;

if(opcao == 'I'){

g->imprimir();

getch2();

}

if(opcao == '2'){

gerarRelatorio(g);

getch2();

}

if(opcao == '3'){

cout << "\nGrafo Complementar: ";

Grafo complementar = g->getComplementar();

complementar.imprimir();

getch2();

}

// if(opcao == '1'){

// printf("%d",g->Complementar());

//getch2();

// }

}while(opcao != 'S');

clrscr();

return 0;

}//--------------------------------------------------------------------

se precisar mando a classe grafo.cc

to compilando no linux

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...