joi, 17 aprilie 2008

Test de evaluare sumativa

1. Se consideră următoarea secvenţă de program în care a este o matrice pătratică cu n linii şi n coloane, iar i şi j sunt variabile de tip întreg:
for(i=1;i<=4;i++)
for(j=1;j<=4;j++)
if(i<=j)a[i][j]=i;
else a[i][j]=j;
Dupa executarea secventei de mai sus,varianta b reprezinta matricea formata.
1111
1222
1233
1234


2. Scrieti un program C++ care citeste de la tastatura numerul natural n si (2<=n<=10) si care construieste si apoi afiseaza o matrice A cu n linii si n coloane in fisierul “prob2.out”, construita astfel: pe diagonale sa fie 0, intre diagonale, in partea superioara si inferioara 1, restul 2.


3. Se citeste din fisierul “prob3.in” o matrice patratica cu n*n (2<=n<=20) elemente intregi cu cel mult 3 cifre. Sa se afiseze pe ecran, separate prin spatiu , elementele minime de pe fiecare coloana.



4. Sa se ordoneze crescator elementele de pe chenarul unei matrice cu m linii si n coloane (2<=n,m<=10) cu elemente intregi. “Chenarul” se va afisa apoi in fisierul prob4.out, pe aceeasi linie, cu spatiu intre elemente.


#include
int a[2][10],v[20],k,t,gasit,aux,i,j,n,m,min;
void main()
{cout<<"n=";cin>>n;
cout<<"m=";cin>>m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
cin>>a[i][j];
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
if(i==1||i==n||j==1||j==m)
v[k++]=a[i][j];
t=k;
do
{gasit=0;for(k=1;k<=t;k++)
if(v[k]>v[k+1])
{aux=v[k];
v[k]=v[k+1];
v[k+1]=aux;
gasit=1;
}
}
while(gasit==0);
ofstream f("prob4.out");
for(k=1;k<=t;k++)
f<f.close();
}

Niciun comentariu: