Documente Academic
Documente Profesional
Documente Cultură
Tehnici de programare.
Tema. Metoda trierii.
Aranjamente și
combinari
Definiție
Fie P o problemă, soluţia căreia poate fi găsită analizând
consecutiv toate elementele si ale unei mulţimii finite
S={s1, s2 , s3 , ... , sn} denumită mulţimea soluţiilor posibile.
În cele mai simple cazuri elementele si (1≤ i ≤ n) pot fi
reprezentate prin valori de tipuri simple: numerice, char, boolean.
În problemele mai complicate suntem nevoiţi să reprezentăm
aceste elemente prin tablouri sau articole.
Se menţionează că în majoritatea problemelor soluţiile posibile
s1, s2, s3, ... ,sn nu sunt indicate explicit în enunţul problemei şi
elaborarea algoritmilor pentru calcularea lor cade în sarcina
programatorului.
Schema generală a unui algoritm bazat pe
metoda trierii
sau poate fi redată cu
ajutorul unui ciclu:
la tastatură.
Ieşire: fiecare linie a fişierului text secv.out va conţine câte o
//Program GenerAranjamente
#include<iostream> void Aranj(int i)
using namespace std; {int j,k;
#define nmax 20 if (i==m+1) Scrie();
else for (j=1;j<=n;j+
int A[nmax];
+)
bool Disp[nmax];
if (Disp[j])
int i, n, m;
{ A[i]=j;
Disp[j]=false;
Aranj(i+1);
Disp[j]=true;}
}
Sfârşit