Aiuto codifica in c++

di il
9 risposte

Aiuto codifica in c++

Vi prego aiutatemi a risolvere questo esercizio in c++


Sia dato un file F1 su memoria di massa contenente una matrice di interi;sulla prima riga del file sono presenti le dimensioni di righe e colonne della matrice. sia dato un file F2 su memoria di massa contenente un vettore di interi; sulla prima riga del file è indicata la dimensione del vettore.
scrivere un programma modulare che verifichi se il vettore in F2 è uguale ad una riga, una colonna o alle due diagonali della matrice di F1.
ove si verificasse tale condizione il programma deve stampare a video un meggaggio contenente l'indice di riga e o colonna o la tipologia di diagonale.

esempio
File F1 File F2 Output
4 4 4 il vettore è uguale alla riga 3 della matrice
4 2 3 4 4 5 6 6 il vettore è uguale alla diagonale principale
4 5 6 2
1 2 6 4
4 5 6 6

9 Risposte

  • Re: Aiuto codifica in c++

    E la domanda qual è?
  • Re: Aiuto codifica in c++

    Ho codificato i due file, ma non riesco a fare il confronto
  • Re: Aiuto codifica in c++

    Cioè hai del codice da mostrare che non funziona? Se non lo vediamo come si fa a dirti qualcosa?
  • Re: Aiuto codifica in c++

    Ecco il file sorgente :
    #include <iostream>
    #include <fstream>
    #include <iomanip>
    #define maxcarnomefile 10
    #define dimvett 100
    #define maxcarnomefile1 20
    void aprifile (int vett[], int riemp);
    typedef char T_nome_file[maxcarnomefile1];
    usig namespace std;
    int letturamatrice (char nf[], int * &mat, int &n);
    void uscitamatrice (int *mat, int n);
    usig namespace std;
    int main ()
    {
    int riemp=0;
    int vett[dimvett];
    aprifile(vett,riemp);
    T_nome_file nome_file;
    int *MAT;
    int N;
    cout<<"\n inserisci il nome del file contenente i dati ";
    cin.getline(nome_file,maxcarnomefile1-1, '\n');
    letturamatrice(MAT,N);
    return 0;
    }
    void aprifile (int vett[], int riemp)
    {
    char nomefile[maxcarnomefile];
    fstrem miofile;
    miofile.open("D:\\vettore.txt", ios::in);
    if(!miofile)
    {
    cout<<"errore di apertura del file"<<nomefile;
    exit (1);
    }
    miofile>>riemp;
    for(int i=0;i<riemp;i++)
    miofile>>vett;
    cout<<"gli elementi letti sono : "<<riemp;
    for(int i=0;i<riemp;i++)
    {
    cout<<"\n VETT["<<setw(2)<<i<<"] =";
    cout<<setw(5)<<vett;
    }
    miofile.close();
    cout<<endl<<endl;
    }
    int*elemento(int*mat, int r, int n)
    {
    return mat+((r*n)+c);
    }
    int letturamatrice(char nf[], int * &mat, int &n)
    {
    int r, c, valore;
    fstream miofile1;
    miofile1.open(nf, ios::in);
    if(!miofile1)
    {
    cout<<"errore di apertura file";
    exit (0);
    }
    miofile1>>n;
    mat=new int [n*n];
    for(int r=0;r<n;r++)
    for(int c=0;c<n;c++)
    {
    miofile1>>valore;
    *elemento(mat,r,c,n)=valore;
    }
    miofile1.close();
    return o;
    }void uscitamatrice(int *mat, int n)
    {
    int r,c;
    cout<<"\n matrice quadrata di ordine N= "<<n;
    for(r=0;r<n;r++)
    {
    cout<<endl;
    for(c=0;c<n;c++)
    cout<<setw(4)<<*elemento(mat,r,c,n);
    }
    }
  • Re: Aiuto codifica in c++

    Ok ... devi includere il codice tra tag CODE altrimenti non si capisce nulla.

    E devi indicare dove non funziona e in quale parte, secondo te.
  • Re: Aiuto codifica in c++

    Non riesco a fare il confronto,....questa parte gira......il confronto tra vettore e matrice
  • Re: Aiuto codifica in c++

    La ttura della matrice avviene come anche quella del vettore
  • Re: Aiuto codifica in c++

    Ma il confronto non so come farlo
  • Re: Aiuto codifica in c++

    Codice tra tag code???....come fare?
Devi accedere o registrarti per scrivere nel forum
9 risposte