Scholieren.com forum

Scholieren.com forum (https://forum.scholieren.com/index.php)
-   Software & Hardware (https://forum.scholieren.com/forumdisplay.php?f=20)
-   -   [c++]faculteit (https://forum.scholieren.com/showthread.php?t=482444)

Dr HenDre 19-05-2003 20:21

[c++]faculteit
 
mijn vraag is heel simpel. Hoe neem je in c++ de faculteit van een getal. Dus 5!=5󫶗󫎽. Ik heb matlab doorgespit maak nix gevonden :(

bvd

eXo 19-05-2003 20:27

Schrijf een loop?

Koen 19-05-2003 20:41

In php heb je gmp_fact(), misschien bestaat er voor C++ ook zoiets?

Everdarkgreen 20-05-2003 01:13

ehm, schrijf gewoon een functietje als

long fact (long n) {
long i;
for (i = 1; n>1; i *= n--) { }
return i;
}

Saeed al-Sahaf 20-05-2003 06:18

of recursieve functie
want n! = n * (n - 1) * (n - 2) * .... * 1

Code:

int factulteit(int n) {
  if(n == 0 || n == 1) {
      return 1;
  } else {
      return n * faculteit(n - 1);
}


Everdarkgreen 20-05-2003 08:42

Waarom geheugen vreten als het niet nodig is? :D

Recursieve functies zien er vaak simpel en duidelijk uit, maar zijn meestal veel minder effici雗t dan de corresponderende loop-functie.

Bovendien zal bij jou je programma crashen als je fact(-1) invoert :D (is te verhelpen door if (n == 0 || n == 1) vervangen in if (n <= 1).


Alle tijden zijn GMT +1. Het is nu 08:48.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.