Class ? O_O

Ok, I do medium level C++ exercises, but I havent done yet a ”class”. I have here a matrix (done be myself ( copyright 2011© jumper007® ) ;D ), and I dont know how to take it in a class O_O. i know is something like
class nameClass: ... but i dont know how exactly I should do it ;D. Can you guys help me ?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#include <fstream>
using namespace std;

// Initializam o functie "afiseazaMatricea", care sa poata fi folosita pt. a afisa toate valorile matricei si pozitiile lor
void afiseazaMatricea(double matrix[1001][1001])
{
     int i,j;
     for (i=1; i<=1001; ++i)
         for (j=1; j<=1001; ++j)
         {
             out<<"Valoarea matricei pentru linia "<<i<<" si coloana "<<j<<" este: "<<matrix[i][j]<<"\n";
         }
}

// Initializam o functie "afiseazaTranspusa", care sa poata fi folosita pt. a afisa toate valorile transpusei si pozitiile lor
void afiseazaTranspusa(double transpusa[1001][1001])
{
     int i,j;
     for (i=1; i<=1001; ++i)
         for (j=1; j<=1001; ++j)
         {
             out<<"Valoarea transpusei pentru linia "<<j<<" si coloana "<<i<<" este: "<<transpusa[j][i]<<"\n";
         }
}

// Vom calcula minimul, maximul, transpusa matricei si vom verifica cate min si max au fost gasite pe parcurs si afisam matricea
int main()
{
    // Introducem o matrice de 1000 randuri si 1000 coloane incepand cu 1
    int matrix[1001][1001];
    int transpusa[1001][1001];
    int k=0,l=0,i,j,max,min,transpusa;
    // Introducem ca baza de date pentru citire si scriere fisierele matrix.in respectiv matrix.out
    ifstream in("matrix.in");
    ofstream out("matrix.out");
    // Parcurgem matricea
    for (i=1; i<=1001; ++i)
        for (j=1; j<=1001; ++j)
        {
            // Citim o valoare din fisierul matrix.in pentru spatiul de pe linia i si coloana j
            in>>matrix[i][j];
            // Initializam maximul si minimul matricii cu primul element din matrice
            max=matrix[1][1];
            min=matrix[1][1];
            // Verificam daca exista un numar mai mare in matrice decat cel presupus, iar daca da maximul ia valoarea matrix[i][j]
            if (max>matrix[i][j])
            {
                                 max=matrix[i][j];
                                 // Calculam cate inlocuiri s-au efectuat pana s-a ajuns la valoarea maxima din matrice
                                 k++;
            }
            // Verificam daca exista un numar mai mic in matrice decat cel presupus, iar daca da minimul ia valoarea matrix[i][j]
            if (min<matrix[i][j])
            {
                                 min=matrix[i][j];
                                 // Calculam cate inlocuiri s-au efectuat pana s-a ajuns la valoarea minima din matrice
                                 l++;
            }
            // Calculam transpusa matricii cu j linii si i coloane
            transpusa[j][i]=matrix[i][j];
            // Afisam in fisierul matrix.out valoarea pentru transpusa matricei, valoarea minima si maxima din matrice
            out<<transpusa[j][i]<<" ";
            out<<" "<<min<<" "<<max;
            // Afisam si contorul pentru minim si maxim
            out<<" "<<k<<" "<<l;
            // Afisam matricea cu pozitia si valoarea corespunzatoare folosind functia definita anterior
            out<<afiseazaMatricea(matrix);
            // Afisam transpusa matricei cu pozitia si valoarea corespunzatoare folosind functia definita anterior
            out<<afiseazaTranspusa(transpusa);
        }
    
    in.close();
    out.close();
    return 0;
}
I don't know whether you have seen it already, but on this site's tutorial there is a whole section on object oriented programming, starting with two lessons on classes. If you can read up on it and work it out for yourself you'll probably learn it better.

Here is the link to the first one http://cplusplus.com/doc/tutorial/classes/.

Hope this helps.
In this specific case, it might make sense to think about modeling matrix on std::vector and your functions on std::algorithms. Your matrix is a fixed size 2D array. You could make a matrix class that can be constructed with any size.
Topic archived. No new replies allowed.