next up previous
Next: Fibbonacijevo zaporedje Up: Funkcijski podprogrami Previous: Funkcijski podprogrami

Izračun faktoriele

Izračunali bomo z rekurzivno formulo tex2html_wrap_inline93 .

#include<stdio.h>
long Fakt(int a);     /*prototip*/
void main(void) {
  int n;
  printf("Za katero naravno število naj računa faktorelo:\n");
  scanf("%d", &n);
  printf("%d! =%ld \n", n, Fakt(n));
} /* main */

long Fakt(int a) {    /* resnična funkcija */
  long c;             /* rezultat funkcije */
  if (n < 2)          /* samo za 0!=1 in 1!=1*/
    c= 1;
  else
    c= n * Fakt(n-1); /* n! = n * ((n-1)!) */
    return c;         /* vrne kar je funkcija izračunala */
} /* Fakt */
Funkcijo Fakt lahko zapišemo krajše. recimo:
long Fakt(int a) {    /* resnična funkcija */
  
  return ((n < 2)? 1: n*FAKT(n-1));

} /* Fakt */



Andrej Brodnik (Andy)
Wed Feb 25 14:19:03 MET 1998