GRAFOS

11/09/2008

0

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 &807;~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


Leojunio

Leojunio

Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar