problemas para criar um arquivo de leitura e depois salvar em outro arquivo em forma de matriz

1. problemas para criar um arquivo de leitura e depois salvar em outro arquivo em forma de matriz

Lendel dos Santos Rodrigues
lendel

(usa Linux Mint)

Enviado em 03/11/2017 - 16:54h

queria fazer esse programa ler o arquivo e depois salvar em outro arquivo dividindo os resultados de x e y em uma matriz[i][j], o outro arquivo de leitura tem 3 variaveis o de escrita quero que ele fique somente com os as duas ultimas colunas

#include <fstream>
#include <iostream>
#include <cmath>
#include <string>
#include <cstdio>

using namespace std;

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

double a, b, c, theta[][];
int i, j;

string data;
//Associação de abertura:
ifstream entrada("pf39_theta_830000.dat"); // construtor.
//Associação e abertura:
ofstream saida("thetaij.dat"); // construtor.
// Enquanto o final do arquivo não for atingido
while (!entrada.eof())
{
// manipulação:
entrada >> a, b, c; // leitura:
for(i=0; i<=a; i++){
for(j=0; j<=b; j++){
if(!entrada.eof()){ // não é o final de arquivo
//Exibe valores lidos
cout << a << '\t' << b << '\t' << c << endl;
// Manipulação:
saida << theta[i][j] << endl; // Escrita.
}
}
}
}
entrada.close(); // fechamento da entrada.
saida.close(); // fechamento da saída.
return 0;
}



  


2. Re: problemas para criar um arquivo de leitura e depois salvar em outro arquivo em forma de matriz

Paulo
paulo1205

(usa Ubuntu)

Enviado em 03/11/2017 - 22:42h

Seria bom você colocar a explicação no texto da mensagem. O título tem tamanho máximo, e sua explicação, posta no título, acabou ficando truncada.


3. Rapaz tentei fazer aqui outras tentativas mais não deu certo

Lendel dos Santos Rodrigues
lendel

(usa Linux Mint)

Enviado em 09/11/2017 - 17:01h


#include <fstream>
#include <iostream>
#include <cmath>
#include <string>
#include <cstdio>

using namespace std;

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

double a, b, c, theta[][];
int i, j;

string data;
//Associação de abertura:
ifstream entrada("pf39_theta_830000.dat"); // construtor.
//Associação e abertura:
ofstream saida("thetaij.dat"); // construtor.
// Enquanto o final do arquivo não for atingido
while (!entrada.eof())
{
// manipulação:
entrada >> a, b, c; // leitura:
theta = (double**)malloc((Nx) * sizeof(double*));
for( i = 0; i <=Nx-1; i++){
theta[i] = (double*)malloc((Ny) * sizeof(double));
}
if(!entrada.eof()){ // não é o final de arquivo
//Exibe valores lidos
cout << a << '\t' << b << '\t' << c << endl;
// Manipulação:
saida << theta[i][j] << endl; // Escrita.
}
}
}
}
entrada.close(); // fechamento da entrada.
saida.close(); // fechamento da saída.
return 0;
}


Alguém poderia me ajudar a como fazer?


4. Cara deu uma melhorada aqui no código mais está faltado algo que ele não ler todo o arquivo teria co

Lendel dos Santos Rodrigues
lendel

(usa Linux Mint)

Enviado em 15/11/2017 - 09:57h

paulo1205 escreveu:

Seria bom você colocar a explicação no texto da mensagem. O título tem tamanho máximo, e sua explicação, posta no título, acabou ficando truncada.




#include <fstream>
#include <iostream>
#include <cmath>
#include <string>
#include <cstdio>

using namespace std;

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

int linha = 0, coluna = 0, linha_result = 0;
int const dimensao = 488;
int const dimensao_quadrado = dimensao*dimensao;
int theta_linha[dimensao];
int theta_coluna[dimensao];
unsigned char resultado[dimensao_quadrado];

string data;
//Associação de abertura:
ifstream entrada("pf39_theta_830000.dat"); // construtor.
//Associação e abertura:
ofstream saida("thetaij.dat"); // construtor.
// Enquanto o final do arquivo não for atingido
while (!entrada.eof())
{
int i, j;
// manipulação:
entrada >> linha;
entrada >> coluna;
entrada >> resultado;
for(i = 0; i < linha; i++) {
for(j = 0; j < coluna; j++) {
entrada >> theta_linha[linha] >> theta_coluna[coluna]
>> resultado[linha_result];
linha_result++; // leitura
}
}
if(!entrada.eof()){ // não é o final de arquivo
//Exibe valores lidos
for(i = 0; i < linha; i++) {
for(j = 0; j < coluna; j++) {
cout << theta_linha[linha] << " " << theta_coluna[coluna] << " "
<< resultado[linha_result] << endl;
linha_result++;
}
}

for(i = 0; i < linha; i++) {
for(j = 0; j < coluna; j++) {
saida << theta_linha[linha] << theta_coluna[coluna] << resultado[linha_result] << endl;
linha_result++; // Escrita
}
}
}
}
entrada.close(); // fechamento da entrada.
saida.close(); // fechamento da saída.
return 0;
}



já procurei uma solução mais não acho

vou colocar uma parte do arquivo "pf39_theta_830000.dat" se tiver como me ajudar seria muito grato

1 1 -1.000000e+00
1 2 -1.000000e+00
1 3 -1.000000e+00
1 4 -1.000000e+00
1 5 -1.000000e+00
1 6 -1.000000e+00
1 7 -1.000000e+00
1 8 -1.000000e+00
1 9 -1.000000e+00
1 10 -1.000000e+00
1 11 -1.000000e+00
1 12 -1.000000e+00
1 13 -1.000000e+00
1 14 -1.000000e+00
1 15 -1.000000e+00
1 16 -1.000000e+00
1 17 -1.000000e+00
1 18 -1.000000e+00
1 19 -1.000000e+00
1 20 -1.000000e+00






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts