Documente Academic
Documente Profesional
Documente Cultură
Scrieţi un program care citeşte un tablou bidimensional cu m linii şi n coloane (m<=30, n<=30) care
memorează numere întregi de cel mult patru cifre fiecare. Sa se afişeze tabloul obţinut prin ştergerea
coloanei k.
#include <iostream>
using namespace std;
int main()
{
int a[31][31], i,j,m,n,k,nr=0,z;
cin>>m>>n>>k;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>a[i][j];
for(j=n; j>=1; j--)
if(j==k){
for(z=j+1; z<=n; z++)
for(i=1; i<=m; i++)
a[i][z-1]=a[i][z];
n--;
}
for(i=1; i<=m; i++){
for(j=1; j<=n; j++)
cout<<a[i][j]<<" ";
cout<<endl;
}
return 0;
}
40. Scrieţi un program care citeşte un tablou bidimensional cu m linii şi n coloane (m<=30, n<=30) care
memorează numere întregi distincte de cel mult patru cifre fiecare. Să se afişeze tabloul obţinut prin
ştergerea liniei şi coloanei care memoreazã valoarea minimă.
#include <iostream>
using namespace std;
int main()
{
int a[31][31],l,c, i,j,m,n, min=10000;
cin>>m>>n;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>a[i][j];
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
if(a[i][j]<min){
min=a[i][j];
l=i;
c=j;
}
cout<<endl<<"Linia de sters:"<<l<<endl;
for (i=l;i<=m;i++)
for(j=1;j<=n;j++)
a[i][j]=a[i+1][j];
for(i=1;i<m;i++)
{
for(j=1;j<=n;j++)
cout<<a[i][j]<<" ";
cout<<endl;
}
cout<<endl<<"Coloana de sters:"<<c<<endl;
for(i=1;i<=m;i++)
for(j=c;j<n;j++)
a[i][j]=a[i][j+1];
for(i=1;i<m;i++)
{
for(j=1;j<n;j++)
cout<<a[i][j]<<" ";
cout<<endl;
}
return 0;
}
63. Scrieţi un program care citeşte un tablou bidimensional cu m linii şi n coloane (m<=30, n<=30) care
memorează numere întregi de cel mult patru cifre fiecare. Să se modifice ordinea elementelor astfel
încât fiecare linie sa fie ordonată Crescător.
#include <iostream>
using namespace std;
int main()
{
int a[31][31], i,j,m,n,aux=0,k;
cin>>m>>n;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>a[i][j];
#include <iostream>
using namespace std;
int main()
{
int a[31][31], i,j,m,n,aux=0,k;
cin>>m>>n;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>a[i][j];
#include <iostream>
using namespace std;
int main()
{
int a[31][31],k=1,o, i,j,m,n, v[100],b[100], aux;
cin>>m>>n;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>a[i][j];
66. Scrieţi un program care citeşte un tablou bidimensional cu m linii şi n coloane (m<=30, n<=30) care
memorează numere întregi de cel mult patru cifre fiecare. Să se modifice ordinea elementelor astfel
încât aceasta sa conţină la început elementele pare apoi elementele impare.
#include <iostream>
using namespace std;
int main()
{
int a[31][31],k=1,o, i,j,m,n, v[100],b[100], t=0,p=0;
cin>>m>>n;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>a[i][j];
#include <iostream>
using namespace std;
int main()
{
int a[31][31], i,j,m,n,s=0,max=0 ;
cin>>m>>n;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>a[i][j];
for(i=1; i<=m; i++){
for(j=1; j<=n; j++)
s=a[i][j]+s;
if(s>max)
max=s;
s=0;
}
for (i=1; i<=m; i++){
for(j=1; j<=n; j++)
s=a[i][j]+s;
if(s==max)
cout<<i<<" ";
s=0;
}
return 0;
}
16. Scrieţi un program care citeşte un tablou bidimensional A cu m linii şi n coloane (m<=30, n<=30) care
memorează numere întregi de cel mult patru cifre fiecare, Să se bordeze matricea cu linia m+l şi coloana
n+1, unde A[m+l,j] reprezintă suma elementelor de pe coloana j şi A[i, n+l] reprezintă suma elementelor
de pe linia i iar A[m+l][n+l] va memora suma tuturor componentelor.
#include <iostream>
using namespace std;
int main()
{
int a[31][31], i,j,m,n,s=0,max=0 ;
cin>>m>>n;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>a[i][j];
for(i=1; i<=m; i++){
for(j=1; j<=n; j++)
s=a[i][j]+s;
a[i][n+1]=s;
s=0;}
for(j=1; j<=n; j++){
for(i=1; i<=m; i++)
s=a[i][j]+s;
a[m+1][j]=s;
s=0;}
for(i=1; i<=m+1; i++){
for(j=1; j<=n+1; j++)
cout<<a[i][j]<<" ";
cout<<endl;}
return 0;
}
17. Scrieţi un program care citeşte un tablou bidimensional cu m linii şi n coloane (m<=30, i1<=30) care
memorează numere întregi de cel mult patru cifre fiecare. Să se interschimbe valorile de pe linia p cu
valorile de pe linia q, unde p şi q se citesc de la tastatură.
#include <iostream>
using namespace std;
int main()
{
int a[31][31], i,j,m,n,aux=0 ,p,q;
cin>>m>>n;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>a[i][j];
cin>>p>>q;
for(j=1; j<=n; j++){
aux=a[p][j];
a[p][j]=a[q][j];
a[q][j]=aux;}
for(i=1; i<=m; i++){
for(j=1; j<=n; j++)
cout<<a[i][j]<<" ";
cout<<endl;}
return 0;
}
18. Scrieţi un program care citeşte un tablou bidimensional cu m linii şi n coloane (m<=30, n<=30)
numerotate începând cu valoarea 1 care memorează numere întregi de cel mult patru cifre fiecare. Să se
afişeze numerele de ordine ale liniilor care au aceeaşi sumă.
#include <iostream>
using namespace std;
int main()
{
int a[31][31], i,j,m,n,s[100];
cin>>m>>n;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>a[i][j];
for(i=1;i<=m;i++)
{
s[i]=0;
for(j=1;j<=n;j++)
s[i]=s[i]+a[i][j];
}
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
if (s[i]==s[j] && i!=j)
cout<<"("<<i<<","<<j<<")"<<endl;
return 0;
}
V8
SII
4.
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int v[100],k,p,nr=0,n,nn,c,m,i,aux,j,ok=0;
cin>>n>>k;
nn=n;
while(n>0){
c=n%10;
n=n/10;
nr++;
v[nr]=c;
}
i = 1; j = nr;
while(i <= j) {
aux = v[i];
v[i] = v[j];
v[j] = aux;
i++;
j--;
}
for(i=1;i<=nr;i++)
if(v[i]==k){
p=i;
ok=1;
}
if(ok==1){
n=0;m=nr-1;
for(i=p+1;i<=nr;i++){
n=n+v[i]*pow(10,m);
m=m-1;}
for(i=1;i<=p;i++)
n=n+v[i]*pow(10,p-i);
cout<<n;}
else
cout<<nn;
return 0;
}