Informatică, întrebare adresată de razvan1292, 8 ani în urmă

Cum fac cca intr o matrice patratica sa schimb aceste valori intre ele?

De ex
#include
#include

using namespace std;

int main(){
int a[100][100] = { {3,5,8,2},{11,14,6,7},{4,7,12,51},{13,86,35,72} }, l = 4, c = 4, i, j;
for (i = 0; i < l; i++) {
for(j = 0; j < c; j++){
if (a[i][j] == a[j][i])
cout << setw(3) << a[j][i]<<" ";
cout << endl;
}
}

}
aici e codul meu dar e gresit

Anexe:

razvan1292: a 10 a
razvan1292: în c++?
razvan1292: cod ?

Răspunsuri la întrebare

Răspuns de andrei750238
6

Deci vrei sa interschimbi valorile simetrice fata de diagonala principala.

Nota : O astfel de operatie e posibila doar pe o matrice patratica. Astfel nu are sens sa avem doua variabile l si c.

#include <iostream>

#include <iomanip>

using namespace std;

int main(){

//Declarare date

int a[100][100] = { {3,5,8,2},{11,14,6,7},{4,7,12,51},{13,86,35,72} }, l = 4, c = 4, i, j;

//Interschimbare valori

for (i = 0; i < l; i++) {

 for(j = i+1; j < c; j++){

  int aux = a[i][j];

  a[i][j] = a[j][i];

  a[j][i] = aux;

 }

}

//Afisare matrice

for (i = 0; i < l; i++) {

 for(j = 0; j < c; j++){

  cout << setw(3) << a[i][j] << " ";

 }

 cout << endl;

}

}

Alte întrebări interesante