venerdì 13 febbraio 2015

Java calcolo di fattoriale

Definizione di fattoriale

Allora innanzitutto cosa vuol dire n! (n fattoriale)?
vuol dire n * n -1 * n -2 ... * 1

Ci sono due modi di calcolarlo:

  • Ricorsivamente
  • Iterativamente

Iterativamente

In soldoni si decrementa il parametro finché non vale 1. Ovviamente la condizone del ciclo è su quel parametro (è buona norma di programmazione che non esistano cicli infiniti e di conseguenza che sia la condizione del ciclo a determinare la sua terminazione, e non attraverso un if/break* che tra l'altro è indice di pessima programmazione, così come l'abuso di continue, ma ne parlerò un'altra volta).
*Il break su cicli infiniti, non il break in se', che in determinate circostanze e' giusto utilizzare

Ricorsivamente

La cosa più interessante è un metodo ricorsivo, ovvero un metodo che invoca se stesso fino a quando non raggiunge uno schema predefinito che ne determina il ritorno. In questo caso la condizione è che il parametro valga 1. Se il parametro non vale uno si invoca il metodo passandogli come parametro quello ricevuto decrementato di uno.

Nessun commento:

Posta un commento

I messaggi non appaiono subito ma a seguito dell'approvazione di un moderatore. Siete pregati di seguire le seguenti regole