miercuri, 29 mai 2013

Afisare elemente din diagonala principala.

 In imaginea de mai sus am reprezentat o matrice patratica cu n=3, iar in dreptul fiecarui element am scris coordonatele lui, de exemplu elementul 4 se afla pe linia 2 si pe coloana 1, fiind reprezentat in imagine ca 4(2,1) .
 Tot din imagine se observa faptul ca elementele care alcatuiesc diagonala principala sunt pe pozitii care au numarul liniei egal cu numarul coloanei (l = c). In cazul nostru diagonala principala este alcatuita din 1, 5 si 9.
  •  Program care citeste o matrice patratica si afiseaza elementele diagonalei principale:
#include <iostream>

using namespace std;

int main()
  
{
    int n,l,c;
    cout<<"N= ";
    cin>>n;  //Citirea variabilei n
    int a[n][n];
    for(l=1;l<=n;l++) //Citirea matricii de la tastatura
    {
        for(c=1;c<=n;c++)
        {
            cout<<"a["<<l<<"]["<<c<<"]= ";
            cin>>a[l][c];
        }
    }
    cout<<"Elementele diagonalei principale: "; //Afisarea elem. din diag. principala
    for(l=1;l<=n;l++)
    {
        for(c=1;c<=n;c++)
        {
            if(l==c) //Se verifica daca elementul face parte din diagonala principala
            {
                cout<<a[l][c]<<" ";//Daca face parte din diag. principala se afiseaza pe ecran.
            }
        }
    }
    return 0;
}
  • Executarea programului:

Ce este o matrice patratica, diagonala secundara si diagonala principala a unei matrici patratice.

O matrice patratica este doar o simpla matrice avand numarul de linii egal cu numarul de coloane (nl = nc). Pentru a citi o matrice patratica avem nevoie doar de valoarea variabilei n, unde n este egal cu numarul de linii si cu numarul de coloane ( n = nl = nc ) si de valoarea fiecarui element al matricii.
Cum arata o matrice patratica, care este diagonala secundara si cea principala ?
Avem drept exemplu o matrice patratica cu n = 3.
  • Diagonala principala este alcatuita din urmatoarele elemente: 1, 5 ,9.
  • Diagonala secundara este alcatuita din : 3, 5, 7.

Citirea unei matrici de la tastatura + afisare pe ecran.

#include <iostream>
using namespace std;
int main()
{
    int l,c,nl,nc;
//Citirea de la tastatura a numarului de linii
    cout << “Numar linii: “;
    cin>>nl;
//Citirea de la tastatura a numarului de coloane
    cout <<”Numar coloane: “;
    cin>>nc;
//Definirea matricii
    int a[nl][nc];
//Citirea matricii de la tastatura
    for(l=1;l<=nl;l++)
    {
        for(c=1;c<=nc;c++)
        {
            cout<<”a["<<l<<"]["<<c<<"]= “;
            cin>>a[l][c];
        }
    }
//Afisarea matricii citite
    for(l=1;l<=nl;l++)
    {
        for(c=1;c<=nc;c++)
        {
            cout<<a[l][c]<<” “;
        }
        cout<<endl;
    }
    return 0;
}
  • Executarea programului:

marți, 28 mai 2013

Citirea unei matrici din fisier si afisarea pe ecran

  

  • Cititi din fisier o matrice si afisati-o pe ecran.

#include <iostream>
#include <fstream>
using namespace std;

int main()
{
    int l,c,nl,nc;
    ifstream f("data.in");

//Citirea numarului de randuri si coloane din fisierul data.in.
    f>>nl>>nc;

//Initializarea matricii
    int a[nl][nc];

//Completarea matricii.
    for(l=1;l<=nl;l++)
    {
        for(c=1;c<=nc;c++)
        {
        f>>a[l][c];
        }
    }

//Afisare Matrice
    for(l=1;l<=nl;l++)
    {
        for(c=1;c<=nc;c++)
        {
            cout<<a[l][c]<<" ";
        }
        cout<<endl;
    }

    return 0;
}

  • Executarea programului:
Continut fisier data.in :
3 3
1 2 3
4 5 6
7 8 9