Se considera tabloul A[1..N,1..N] de numere intregi, unde N <=20. Scrieti un program care va aduna la fiecare element al tabloului initial valoarea elementului maxim de pe diagonala principala. (Va rog. Ms)
Răspunsuri la întrebare
Salut, daca am inteles bine matricea este de tip patratica deoarece trb sa aiba diagonala nu? toate elementele matricei trb adunate cu cel mai amre nr de pe diagonala principala nu? Elementele de pe diagonala principala au i == j (linia = coloana)
Uite programul sper ca intelegi ce am facut aici, daca ai intrebari lasa un reply sau un multumesc daca te-am ajutat :)
#include <iostream>
using namespace std;
int A[20][20],n;
int main(){
cout<<"Da-ti nr de coloane si linii = ";
cin>>n;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++){
cout<<"A["<<i<<"]["<<j<<"] ";
cin>>A[i][j];
}
cout<<"Matricea initiala este:"<<endl;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)
cout<<A[i][j]<<" ";
cout<<endl;
}
int nrmax = A[1][1];
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)
if(i == j && A[1][1] < A[i][j])
nrmax = A[i][j];
}
cout<<"Nr maxim de pe diagonala este: "<<nrmax<<endl;
cout<<"Matricea modificata este:"<<endl;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)
cout<<A[i][j]+nrmax<<" ";
cout<<endl;
}
return 0;
}