#include /* Definirana je funkcija binom. Argumenti funkcije su n i k, tipa int. Funkcija vraca vrijednost tipa long. Unutar funkcije deklarirane su dvije varijable : vrijednost te i. To su tzv. lokalne varijable koje postoje samo u vrijeme izvrsavanja te funkcije. Svaka funkcija koja vraca neku vrijednost mora sadrzavati makar jednu return naredbu. Nailaskom na return zaustavlja se izvodjenje funkcije i u pozivni program se vraca ona vrijednost koja stoji uz return. U nasem primjeru ako je n jednak k zaustavlja se funkcija i vraca 1 jer je n povrh n jednako 1. Isto tako ako je k jednak 0 vraca 1 jer vrijedi n povrh 0 jednako 0. Ako prosla dva uvjeta nisu izvrsena doci ce do izvrsavanje for petlje. Ona racuna brojnik vrijednost=n(n-1)...(n-k+1) u formuli. Brojac i je inicijaliziran s vrijednosti n i u svakom prolazu smanjuje se za 1 dok ne postane jednak n-k. */ long binom(int n, int k) { long vrijednost = 1; int i; if (n == k) return 1; if (k == 0) return 1; for (i = n; i > n-k ; i--) vrijednost *= i; for (i = 1; i <= k; ++i) vrijednost /= i; return vrijednost; } int main(void) { long bnm; int n, k; for (n = 0; n < 10; n++) { for (k = 0; k <= n; k++) { bnm = binom(n, k); printf("%ld ",bnm); } printf("\n"); } /* zaustavi ekran */ getchar(); return 0; }