#include int x[50], xcod[50], n; void afis(int y[50]) { for(int i=1;i<=n;i++) printf("%i ", y[i]); printf("\n"); } int verificaPermutare() { int i, j, k; for(i=1; i<=n; i++) { k=0; for(j=1;j<=n;j++) if(i == x[j]) k++; if(k!=1) { printf(" [ ERROR ]\n"); return 0; } } printf(" [ OK ]\n"); return 1; } int citire() { printf("n = ");scanf("%i", &n); for( int i=1 ; i<=n ; i++ ) { printf("x[%i] = ", i); scanf("%i", &x[i]); } printf("Verific daca x este permutare ..."); return verificaPermutare(); } void XtoXcod() { int i, j, k; for(i=1;i<=n;i++) { k=0; for(j=1;j<=i;j++) if(x[j]=1 ; i-- ) { c=i; while(valid(i) && c>1) { swap(x[c], x[i]); c--; swap(x[c], x[i]); } if(c<1) { printf(" [ ERROR ]\n"); return 0; } } return verificaPermutare(); } int main() { if(!citire()) return; XtoXcod(); printf("Afisez xcod : \n"); afis(xcod); if(!verifXcod()) return; printf("Afisez x : \n"); afis(x); }