Probleme 4 si 5 va rog , sau macar una dintre ele , dau multe puncte plsssss
Răspunsuri la întrebare
Exercitiile sunt verificate in C++, si le-ai putea incerca in codeblocks.
4. Scrieti un program C/C++ care citeste de la tastatura doua numere naturale n si a si construieste in memorie o matrice cu n linii si n coloane numerotate de la 1 la n, formata numai din valori 0,1 si 2 astfel incat: elementele aflate pe linia a sunt egale cu 0, cele de deasupra liniei a sunt egale cu 1, iar elementele aflate sub linia sunt egale cu 2.
#include <iostream>
using namespace std;
int main()
{
int i,j,n,a,v[25][25];
cout<<"Introduceti nr linii/coloane: ";
cin>>n;
cout<<"a= ";
cin>>a;
for(i=1; i<=n; i++)
for(j=1; j<=n; j++)
if(i<a)
v[i][j]=1;
else if(i>a)
v[i][j]=2;
else
v[i][j]=0;
for(i=1; i<=n; i++)
{
for(j=1; j<=n; j++)
cout<<v[i][j]<<" ";
cout<<endl;
}
return 0;
}
Citim n si a. Matricea nu o citim, pentru ca trebuie sa o construim. O parcurgem, dupa care... daca linia i este mai mica decat a-ul nostru citit, atunci fiecare element din matrice care indeplineste conditia, va lua valoarea 1. La fel si la celelalte. Apoi am afisat matricea.
5. Scrieti un program C/C++ care citeste de la tastatura 4 numere naturale nenule m, n, x si y si elementele unui tablou bidimensional a cu m linii, si n coloane: programul interschimba elementele tabloului bidimensional de pe linia x cu cele de pe linia y.
#include <iostream>
using namespace std;
int main()
{
int i,j,m,n,x,y,aux,v[20][20];
cout<<"Introduceti nr linii: ";
cin>>m;
cout<<"Introduceti nr coloane: ";
cin>>n;
cout<<"x= ";
cin>>x;
cout<<"y= ";
cin>>y;
for(i=1; i<=m; i++)
for(j=1; j<=n; j++)
cin>>v[i][j];
for(i=1; i<=m; i++)
{
for(j=1; j<=n; j++)
if(i==x)
{
aux=v[x][j];
v[x][j]=v[y][j];
v[y][j]=aux;
}
}
for(i=1; i<=m; i++)
{
for(j=1; j<=n; j++)
cout<<v[i][j]<<" ";
cout<<endl;
}
return 0;
}
Citim cele 4 numere cat si matricea. Parcurgem liniile matricii, iar daca ajungem pe linia x, atunci cu o interschimbam cu y, folosind cunoscutul algoritm. Afisam matricea.