Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Modify the code as necessary to generate and print all 6! = 720 combinations of

ID: 3694741 • Letter: M

Question

Modify the code as necessary to generate and print all 6! = 720 combinations of the 5 letter input string: “abcdef”. For example: abcdef, abcedf, abdcef, ...

#include <stdio.h>

#include <stdlib.h>

void swap (int v[], int i, int j)

{

   int   t;

   t = v[i];

   v[i] = v[j];

   v[j] = t;

}

void perm (int v[], int n, int i)

{

int   j;

if (i == n)

{

       for (j=0; j<n; j++) printf ("%d ", v[j]);

       printf (" ");

}

else

for (j=i; j<n; j++)

{

swap (v, i, j);

perm (v, n, i+1);

swap (v, i, j);

}

}

int main ()

{

   int v[5], i;

   for (i=0; i<5; i++) v[i] = i+1;

   perm (v, 5, 0);

   exit (0);

}

Explanation / Answer

Answer: Below is the modified code :

#include <stdio.h>

#include <stdlib.h>

void swap (int v[], int i, int j)

{

   int   t;

   t = v[i];

   v[i] = v[j];

   v[j] = t;

}

void perm (int v[], int n, int i)

{

int   j;

if (i == n)

{

printf ("%d ", v[j]);

       for (j=0; j<n; j++) printf ("%d ", v[j]);

       printf (" ");

}

else

for (j=i; j<n; j++)

{

swap (v, i, j);

Perm(v,n+1,i)

swap (v, i, j);

}

}

int main ()

{

   int v[5], i;

   for (i=0; i<5; i++) v[i] = i+1;

   perm (v, 5, 0);

   exit (0);

}

int main ()

{

   int v[5], i;

   for (i=0; i<5; i++) v[i] = i+1;

   perm (v, 5, 0);

   exit (0);

}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote