lunedì 27 gennaio 2014

Calcolo combinatorio

# include <stdio.h>

int vett[4]={1,2,3,4};
int i,j,h,x;
void stampa(int v[],int dim);

int main()
{
 for(h=0;h<4;h++)
{
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
{
x=vett[2];   //inserisco valore vett[2] in variabile di appoggio
vett[2]=vett[3];   //inserisco valore vett[3] in vett[2]
vett[3]=x;   //inserisco valore salvato in x in vett[3]
stampa(vett,4);   //chiamata alla procedura di stampa con passaggio parametri vettore e dimensione per visualizzare vettore con combinazioni modificate in ciclo FOR
}
x=vett[2];   //rieseguo nuovamente l'operazione di scambio del ciclo FOR j per riposizionare il vettore alla situazione di scambio
vett[2]=vett[3];
vett[3]=x;

x=vett[1];   //inserisco valore vett[1] in variabile di appoggio
vett[1]=vett[2];   //inserisco valore vett[1] in vett[2]
vett[2]=x;   //inserisco valore salvato in x in vett[2]
}
x=vett[2];   //rieseguo nuovamente l'operazione di scambio del ciclo FOR j per riposizionare il vettore alla situazione di scambio
vett[2]=vett[3];
vett[3]=x;

x=vett[1];   //rieseguo nuovamente l'operazione di scambio del ciclo FOR i per riposizionare il vettore alla situazione di scambio
vett[1]=vett[2];
vett[2]=x;

x=vett[0];   //inserisco valore vett[1] in variabile di appoggio
vett[0]=vett[1];   //inserisco valore vett[1] in vett[2]
vett[1]=x;   //inserisco valore salvato in x in vett[2]
}
}

void stampa(int v[],int dim)   //procedura di stampa con passaggio parametri vettore e dimensione (4)
{
int y;   //dichiaro indice per ciclo FOR
for(y=0;y<dim;y++)   //eseguo ciclo FOR per visualizzare contenuto vettore
{
printf("%d\t",v[y]);   //stampa + TAB per posizioni vettore 
}
printf("\n\n");   //spaziatura a capo
}

Nessun commento:

Posta un commento