Ejercicio c++

Hola necesito saber el código para la utilización de parejas hasta el numero 7 y definir si hay solución en cada uno es decir 2 3 1 2 1 3 así, gracias

1 respuesta

Respuesta
1
La verdad es que no entiendo muy bien tu pregunta, pero bueno, trataré de responderte.
Creo que el siguiente código te podría solucionar el problema. Ahí va:
# include<stdio.h>
# include<conio.h>
# include<stdlib.h>
# include<dos.h>
# define NUMERO_MAXIMO_ELEMENTOS_VECTOR 100
# define en(x,x1,x2)((x)1)&&(x)<=(x2))
void rellenar_vector(int vect[]);
void escribir_vector(int vect[]);
void permutar(int v[],int m);
void intercambiar(int *p1,int *p2);
int main(void)
{
clrscr();
int vector[NUMERO_MAXIMO_ELEMENTOS_VECTOR];
puts("Permutaciones");
rellenar_vector(vector);
printf("\nTotal de permutaciones y grupos de permutaciones");
permutar(vector,vector[0]);
textcolor(11);
printf("\n\n\tESTOS SON TODOS LOS GRUPOS DE PERMUTACIONES QUE SE PUEDEN REALIZAR");
textcolor(12);
textcolor(GREEN+BLINK);
gotoxy(10,16);cprintf("Pulse cualquier tecla para finalizar");
getch();
return 0;
}
/****************************************************************************/
void rellenar_vector(int vect[])
{
register int i;
do
{
printf("Introduzca el numero de elementos del vector: ");
scanf("%d",&vect[0]);
fflush(stdin);
}while(! (vect[0],1,NUMERO_MAXIMO_ELEMENTOS_VECTOR));
printf("\nIntroduzca los %d elementos a permutar: ",vect[0]);
for(i=1;i<=vect[0];i++)
scanf("%d",&vect);
fflush(stdin);
putchar('\n');
getch();
}
/****************************************************************************/
void escribir_vector(int vect[])
{
clrscr();
static unsigned int numero_de_permutacion=0;
register int i;
++numero_de_permutacion;
gotoxy(15,9); printf("ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿");
gotoxy(15,10);printf("³Total de permutaciones ³ Grupos de Permutaciones ³");
gotoxy(15,11);printf("ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´");
gotoxy(15,12);printf("³ Permutacion %2u ³ ³",numero_de_permutacion);
gotoxy(15,13);printf("ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ");
gotoxy(51,12);
for(i=1;i<=vect[0];i++)
printf("%d",vect);
getch();
}
/****************************************************************************/
void permutar(int v[], int m)
{
register int i;
if(m>1)
for(i=1;i<=m;i++)
{
intercambiar(&v, &v[m]);
permutar(v,m-1);
intercambiar(&v,&v[m]);
}
else
escribir_vector(v);
}
/****************************************************************************/
void intercambiar(int *p1,int *p2)
{
int aux;
aux=*p1;
*p1=*p2;
*p2=aux;
}

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas