Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

[Zadatak] Definisanje refleksivnosti, simetricnosti, antisimetricnosti i tranzitivnosti funkcija

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Definisanje refleksivnosti, simetricnosti, antisimetricnosti i tranzitivnosti funkcija

[ Pregleda: 4306 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

titl

Član broj: 167675
Poruke: 1
212.200.117.*



Profil

icon [Zadatak] Definisanje refleksivnosti, simetricnosti, antisimetricnosti i tranzitivnosti funkcija29.12.2007. u 14:11 - pre 198 meseci
Dobili smo zadatak na faxu da za domaci da definisemo refleksivnost, simetricnost, antisimetricnost i tranzitivnost funkcija. Navodno ce to da se ocenjuje posle praznika. Da li za to koristiti 2 niza ili 1, kako to na najlaksi nacin uraditi?
 
Odgovor na temu

xeron
Sarajevo

Član broj: 25909
Poruke: 133
*.PPPoE-6004.sa.bih.net.ba.



Profil

icon Re: [Zadatak] Definisanje refleksivnosti, simetricnosti, antisimetricnosti i tranzitivnosti funkcija30.12.2007. u 12:17 - pre 198 meseci
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);
}
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Definisanje refleksivnosti, simetricnosti, antisimetricnosti i tranzitivnosti funkcija

[ Pregleda: 4306 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.