Esercizio 0

Scrivere un metodo ricorsivo sommaNumeri(int n) che restituisce la somma dei numeri da 0 fino ad n. Si può assumere che n sia positivo.

Esercizio 1

Scrivere un metodo ricorsivo che calcoli la successione di Fibonacci. In particolare, il metodo prende come parametro di input un intero n (che possiamo assumere essere positivo) e restituisce l'n-esimo numero della successione di Fibonacci (Fn). La successione è definita come segue:

  • il numero di Fibonacci 0 è 0 (F0 = 0)
  • il numero di Fibonacci 1 è 1 (F1 = 1)
  • gli altri numeri di Fibonacci si ottengono come somma dei due numeri di Fibonacci che lo precedono (Fn = Fn-1 + Fn-2). Così F2 = F1 + F0 = 1 + 0 = 1, F3 = F2 + F1 = 1 + 1 = 2, etc...

ATTENZIONE. Sebbene interessate da un punto di vista didattico, scrivere la successione di Fibonacci in modo ricorsivo non è una scelta particolarmente saggia. È molto probabile che il programma che scriverete avrà complessità computazionale esponenziale (O(2n)).

Esercizio 2.

Sia data la seguente classe:

class Animale {
String nome;
boolean volante;
int numeroZampe;
int pesoMassimo;
}

Scrivere un metodo stampaAnimale che prende in input un oggetto di tipo Animale e lo stampa in maniera leggibile. Provare il metodo stampaAnimale con un semplice programma principale.

Esercizio 3

Con riferimento all'esercizio 2, scrivere un metodo trovaAnimale che prende in input un array di animali a ed un intero n, e restitiuisce il primo animale dell'array che ha n zampe. Se nessun animale ha n zampe, restituisce null.

Esercizio 4

Riscrivere il metodo che calcola la successione di Fibonacci in maniera iterativa. Suggerimento: dato il numero n, effettuare un ciclo for da 1 fino ad n. Ad ogni iterazione i, calcolare l'i-esimo numero di Fibonacci. È necessario utilizzare almeno due variabili che tengono traccia degli ultimi due numeri di Fibonacci calcolati.




Ultime modifiche: lunedì, 9 gennaio 2023, 17:56