Rageh
19-09-2007, 10:46
Ciao ragazzi... sto diventando matto... sto ***** di prof ci ha penalizzato a tutti perchè non abbiamo seguito i suoi corsi, e ci ha messo l'input/output su file quando la cosa non doveva entrare nell'esame...
Dunque il programma mi fa inserire gli elementi di una matrice, e me li stampa su un file.txt in formato CSV, e dopo ogni riga va a capo, e fin qui tutto ok.
Ora devo creare un sottoprogramma che leggendo gli elementi dal file mi crea un vettore che ha per elementila somma dei numeri ricavati da ciascuna riga del file, non ci riesco.
ogni aiuto è apprezzatissimo... lo scritto ormai è andato... ora vorrei che funzionasse per l'orale...
Programma completo, corretto ore 12.38
#include <iostream>
#include <stdlib.h>
#include <fstream>
#include <string>
#include <sstream>
using namespace std;
void input_matrice (int n);
void calcola_vettore_somma (int V[]);
void output (int V[], int n);
int main ()
{ int n, *V;
cout<<"Inserire il riemp: ";cin>>n;
V = new int [n];
input_matrice(n);
calcola_vettore_somma(V);
output(V, n);
system ("PAUSE");
return 0;
}
void input_matrice (int n)
{
int j = 0;
int temp;
ofstream out;
out.open ("elementi_matrice.txt", ios::out);
out<<n<<"\n";
while (j<n)
{
for (int i=0; i<n-1; i++)
{
cout<<"Inserire l'elemento della riga "<<j+1<<" colonna "<<i+1<<": ";
cin>>temp;
out<<temp<<", ";
}
cout<<"Inserire l'elemento della riga "<<j+1<<" colonna "<<n<<": ";
cin>>temp;
out<<temp<<"\n";
j++;
}
out.close();
}
void calcola_vettore_somma (int V[])
{
int n;
int temp;
ifstream in;
in.open ("elementi_matrice.txt", ios::in);
in>>n;
while(in>>temp)
{ cout<<temp;
for (int i=0; i<n; i++)
V[i]=temp+V[i];
}
in.close();
}
void output (int V[], int n)
{
system ("cls");
cout<<"(";
for (int i=0; i<n-1; i++)
cout<<V[i]<<", ";
cout<<V[n]<<")";
}
Il problema è qui
void calcola_vettore_somma (int V[])
{
void calcola_vettore_somma (int V[])
{
int n;
int temp;
ifstream in;
in.open ("elementi_matrice.txt", ios::in);
in>>n;
while(in>>temp)
{ cout<<temp;
for (int i=0; i<n; i++)
V[i]=temp+V[i];
}
in.close();
}
Dunque il programma mi fa inserire gli elementi di una matrice, e me li stampa su un file.txt in formato CSV, e dopo ogni riga va a capo, e fin qui tutto ok.
Ora devo creare un sottoprogramma che leggendo gli elementi dal file mi crea un vettore che ha per elementila somma dei numeri ricavati da ciascuna riga del file, non ci riesco.
ogni aiuto è apprezzatissimo... lo scritto ormai è andato... ora vorrei che funzionasse per l'orale...
Programma completo, corretto ore 12.38
#include <iostream>
#include <stdlib.h>
#include <fstream>
#include <string>
#include <sstream>
using namespace std;
void input_matrice (int n);
void calcola_vettore_somma (int V[]);
void output (int V[], int n);
int main ()
{ int n, *V;
cout<<"Inserire il riemp: ";cin>>n;
V = new int [n];
input_matrice(n);
calcola_vettore_somma(V);
output(V, n);
system ("PAUSE");
return 0;
}
void input_matrice (int n)
{
int j = 0;
int temp;
ofstream out;
out.open ("elementi_matrice.txt", ios::out);
out<<n<<"\n";
while (j<n)
{
for (int i=0; i<n-1; i++)
{
cout<<"Inserire l'elemento della riga "<<j+1<<" colonna "<<i+1<<": ";
cin>>temp;
out<<temp<<", ";
}
cout<<"Inserire l'elemento della riga "<<j+1<<" colonna "<<n<<": ";
cin>>temp;
out<<temp<<"\n";
j++;
}
out.close();
}
void calcola_vettore_somma (int V[])
{
int n;
int temp;
ifstream in;
in.open ("elementi_matrice.txt", ios::in);
in>>n;
while(in>>temp)
{ cout<<temp;
for (int i=0; i<n; i++)
V[i]=temp+V[i];
}
in.close();
}
void output (int V[], int n)
{
system ("cls");
cout<<"(";
for (int i=0; i<n-1; i++)
cout<<V[i]<<", ";
cout<<V[n]<<")";
}
Il problema è qui
void calcola_vettore_somma (int V[])
{
void calcola_vettore_somma (int V[])
{
int n;
int temp;
ifstream in;
in.open ("elementi_matrice.txt", ios::in);
in>>n;
while(in>>temp)
{ cout<<temp;
for (int i=0; i<n; i++)
V[i]=temp+V[i];
}
in.close();
}