Advertisement
Guest User

Untitled

a guest
Jan 18th, 2017
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.70 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. char sp1[]=" ";
  5. int x1[10], n1, nrsol1=0;
  6.  
  7. int Afisare()
  8. { int i;
  9. cout<<sp1;
  10. for(i=1;i<=n1;i++)
  11. cout<<x1[i]<<" ";
  12. cout<<endl;
  13. nrsol1++;
  14. }
  15.  
  16. int Valid(int k)
  17. { int i;
  18. for(i=1;i<=k-1;i++)
  19. if (x1[k]==x1[i]) return 0;
  20. return 1;
  21. }
  22.  
  23. void BackRec1(int k)
  24. { int i;
  25. for(i=1;i<=n1;i++)
  26. { x1[k]=i;
  27. if (Valid(k))
  28. if (k==n1) Afisare();
  29. else BackRec1(k+1);
  30. }
  31. }
  32.  
  33. int main()
  34. { cout<<"Permutarile primelor n numere naturale (n<10)"<<endl;
  35. cout<<endl<<sp1<<" Dati valoarea lui n: "; cin>>n1;
  36. cout<<endl;
  37. BackRec1(1);
  38. cout<<endl<<sp1<<"Numar solutii: "<<nrsol1;
  39. return 0;
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement