/* Demonstrira vise povratnih vrednosti funkcije koristeci prenos preko 
   pokazivaca */

/* Funkcija istovremeno vraca dve vrednosti - kolicnik i ostatak dva
   data broja.  Ovo se postize tako sto se funkciji predaju vrednosti
   dva broja (x i y) koji se dele i adrese dve promenljive na koje ce
   se smestiti rezultati */
void div_and_mod(int x, int y, int* div, int* mod) {
  printf("Kolicnik postavljam na adresu : %p\n", div);
  printf("Ostatak postavljam na adresu : %p\n", mod);
  *div = x / y;
  *mod = x % y;
}

int main() {
  int div, mod;
  printf("Adresa promenljive div je %p\n", &div);
  printf("Adresa promenljive mod je %p\n", &mod);

  /* Pozivamo funkciju tako sto joj saljemo vrednosti dva broja (5 i 2)
	 i adrese promenljvih div i mod na koje ce se postaviti rezultati */
  div_and_mod(5, 2, &div, &mod);
	
  printf("Vrednost promenljive div je %d\n", div);
  printf("Vrednost promenljive mod je %d\n", mod);
	
  return 0;
}