Sunteți pe pagina 1din 2

Set de probleme N1

Problema 1 ( Obligatoriu)

Sunt date numerele naturale n (n<=20) și m ( m <=n) care se introduc de la tastatură.


Se cere de alcătuit un program care:
a) Să găsească numărul de permutări ale acestei mulțimi;
b) Să găsească numărul de combinări formate din m <=n elemente ale acestei mulțimi;
c) Să găsească numărul de aranjamente formate din m <=n elemente ale acestei mulțimi.

#include <iostream>

using namespace std;

int main()
{
int n,m,a,b,d;
cout<<"introduceti numarul n<=20, n= ";cin>>n;
cout<<"introduceti m<=n, m = ";cin>>m;
cout<<"sunt posibile "<<n*n<<" permutari"<<endl;
d=n-m;
a=fact(n)/fact(d);
cout<<"sunt posibile "<<a<<" de combinatii a "<<n<<" elemente luate cite "<<m<<endl;
b=fact(m)*fact(n)/fact(d);
cout<<"sunt posibile "<<b<<" aranjamente de "<<n<<" elemente luate cite "<<m<<endl;

system("PAUSE");
return EXIT_SUCCESS;
}

Problema 2 ( Obligatoriu)

Folosind structuri vectoriale sa se găsească toate permutările mulțimii A={a 1, a2 ,a3, a4} de tip INTEGER,
elementele căreia se introduc de la tastatura. De afișat toate combinările si aranjamentele posibile care
sunt formate din m=3 elemente.

Problema 3 (Opțional)

a) Sa se găsească toate permutările mulțimii formate din n elemente ( numărul n se introduce de la


tastatură) A={a1, a2 ,a3,..., an} de tip INTEGER, elementele căreia se introduc de la tastatură. De
afișat toate permutările posibile.

b) Să consideram o tablă de șah de dimensiuni n x n (n<=20, n citit de la tastatura). Sa se afișeze pe


ecran toate posibilitățile de a așeza n ture pe această tablă de șah astfel încât oricare doua ture să
nu să se atace.

Două ture se atacă daca se găsesc pe aceeași linie sau pe aceeași coloana.
O soluție va fi afișata pe o linie ca o secvența c 1,c2,...cn , unde ci reprezintă coloana in care este
plasata tura de pe linia i.

S-ar putea să vă placă și