Coefficiente binomiale

motocross'88

Nuovo Utente
26 Ott 2009
17
0
0
Ciao a tutti! sono alle prese con un nuovo problemino.
dovrei riuscire a calcolare il coefficiente binomiale (attraverso un metodo) , usando-richiamando il metodo del fattoriale. praticamente è cosi: ci sono due numeri (5,3 esempio) per calcolare il coeff.binomiale dovrei fare: 5!/(3!*(5-3)!)
ho fatto il metodo fattoriale, ma non so come creare il metodo coefficiente binomiale che per risolvere il calcolo si avvalga dei metodi del fattoriale.
qualcuno puo aiutarmi?
vi posto il codice..
Codice:
public class CalcoloBinomiale{ public static int n,n2,differenza,denominatore,r,coeff_binomiale;
	public static void main(String[] args) {
		int n,n2,differenza,denominatore,coefBinomiale;
		Scrittore.video.println("inserisci primo numero ");
        n=Lettore.tastiera.leggiInt(); 
        Scrittore.video.println("inserisci secondo numero ");
		n2=Lettore.tastiera.leggiInt();
		differenza=n-n2;  
		/*Scrittore.video.println(n + "! = " + fattoriale(n));
		Scrittore.video.println("differenza! tra " +n+ " e " +n2+ " e' " + fattoriale(differenza));*/
		denominatore=(fattoriale(differenza)*fattoriale(n2));
		/*Scrittore.video.println("denominatore " + denominatore);*/
		coefBinomiale=(fattoriale(n)/denominatore);
		Scrittore.video.println("Coefficiente binomiale e' " + coeff_binomiale(r));
	}
	 public static int coeff_binomiale(int r) {
     
     	denominatore=(fattoriale(differenza)*fattoriale(n2));
     	r=(fattoriale(n)/(fattoriale(n2)*denominatore));
     	return r;
     //	throw new java.lang.ArithmeticException;
}  
public static int fattoriale(int n)
{ int f=1;
while (n>0)
{ f=f*n;
n--;}
return f;}
 	
}
 

lespaul

Utente Attivo
30 Lug 2009
91
6
0
www.simplesoft.it
Ciao Motocross, il metodo è semplicissimo da fare visto che hai gia il calcolo del fattoriale. Ti posto il metodo statico che si basa sulla formula che hai definito tu cioè l'esempio -> 5!/(3!*(5-3)!):
Codice:
public static int calcolaCoefficienteBinominiale(int a, int b) {
     int binom = fattoriale(a)/((fattoriale(b)*(fattoriale(a-b));
     return binom;
}
il metodo fattoriale() é quello che hai postato nel codice