Post con tag fibonacci

Generatore di Fibonacci in Python

Il seguente algoritmo utilizza l’istruzione yield per creare un generatore di numeri di Fibonacci:

def fibonacci(n):
    current = 0
    next = 1

    for i in range(n):
        yield current
        current, next = next, next + current

n = 13
for i in fibonacci(n):
    print(i)

Output:

0
1
1
2
3
5
8
13
21
34
55
89
144

Fibonacci iterativo in Java

Implementazione iterativa dell’algoritmo di Fibonacci in Java.
Vengono stampati i primi n numeri, con n passato da console o generato casualmente, della successione:

import java.util.Random;

public class fibo
{
	public static void main(String[] args)
	{
		int n;
		try {
			n = Integer.parseInt(args[0]);
		}
		catch(ArrayIndexOutOfBoundsException e)
		{
			Random generator = new Random();
			n = generator.nextInt(20) + 1;
		}

		int current = 0;
		int next = 1;

		for(int i = 0; i < n; i++)
		{
			System.out.println(current);
			int temp = current;
			current = next;
			next += temp;
		}
	}
}

Fibonacci iterativo in C#

La seguente implementazione iterativa dell’algoritmo di Fibonacci sfrutta lo statement yield e l’interfaccia IEnumerable, definita nel namespace System.Collections.Generic, per generare i primi n numeri della serie di Fibonacci:

Continua >

Fibonacci iterativo in Ruby

Il seguente algoritmo, sfruttando i blocchi e lo statement yield di Ruby, stampa i primi n numeri della successione di fibonacci, con n passato da linea di comando:

Continua >