Potrebna ti je matrica tj. 2d niz.
Relacija je simetricna ako za svaki element važi da je u relaciji sa samim sobom.
Relacija je refleksivna ako za elemente i i j važi da ako je i u relaciji sa j onda je i j u relaciji sa i.
Relacija je tranzitivna ako za elemente i, j i k vazi da ako su elementi i i j u relaciji, i ako su elementi j i k u relaciji da su onda i elementi i i k u.
Code:
//Funkcija koja ispituje refleksivnost relacije:
//Funkcija provjerava elemente na glavnoj dijagonali i ako pronađe
//element koji nije u relaciji sam sa sobom vraca 0 sto znaci da nije refleksivna.
//U suprotnom vraća 1 što znači da je refleksivna
int refleksivna(int **matrica, int n)
{
int i;
for(i=0; i<n; i++)
if(!matrica[i][i])
return 0;
return 1;
}
//Funkcija koja ispituje simetričnost relacije:
//Prolazi se kroz sve elemente ispod glavne dijagonale i provjerava
//da li su oni u istoj relaciji kao njima simetricni elementi.
//Ako nadje odgovarajuci par za koji relacija simetricnosti ne
//vazi, funkcija vraca 0.
int simetricna(int **matrica, int n)
{
int i,j;
for(i=1; i<n; i++)
for(j=0; j<i; j++)
if(matrica[i][j]!=matrica[j][i])
return 0;
return 1;
}
if (argc > 1 && strcmp(argv[1], "-advice") == 0) {
printf("Don't Panic!n");
exit(42);
}