Disposizioni in C

di il
1 risposte

Disposizioni in C

Qualcuno sa spiegarmi perchè ci va la terza variabile nella funzione ? int disposizioni_semplici(int k, int n, int m) a cosa serve m? e perchè senza il programma non funziona?
Nemmeno sostituendo nel

ì
#include <stdio.h>
/*
  Dn,k = n(n-1)...(n-k+1) = n!/(n - k)!
*/
int disposizioni_semplici(int k,int n,int m){
if(n==m-k) 
    return 1;
else
    return ( n*disposizioni_semplici(k,n-1,m) );
}



int main(){

int n, k;
printf("Inserire n: \n");
scanf("%d",&n);
printf("Inserire k: \n");
scanf("%d",&k);

if (n>k) 
    printf("D(%d,%d) = %d", n, k, disposizioni_semplici(k,n,n));
else 
    printf("\nImpossibile eseguire l'operazione\n");

return 0;
}

1 Risposte

  • Re: Disposizioni in C

    Sai come funzionano le chiamatevricoraive? Prova a seguire l'esecuzione per piccoli valori e scopri a cosa serve m. Ricorda che nella prima chiamata vale n iniziale
Devi accedere o registrarti per scrivere nel forum
1 risposte