Sviluppiamo l’algoritmo della successione di Fibonacci in Python.

Ricordiamo che la successione di Fibonacci è una successione di numeri interi positivi in cui ciascun numero a cominciare dal terzo è la somma dei due precedenti eccetto i primi due che sono 1, 1.

Ad esempio se N=9, i termini della successione sono: 1, 1, 2, 3, 5, 8, 13, 21, 34.

La successione di Fibonacci in Python

Realizziamo dunque un algoritmo che rappresenti la successione di Fibonacci in Python.

Prendere in input un numero N e visualizzare gli N termini della successione di Fibonacci.

Per realizzare questo algoritmo innanzitutto prendiamo due variabili a e b e ad entrambe assegniamo il valore 1. Creiamo così i primi due termini della successione di Fibonacci che andremo subito a stampare.

Quindi realizziamo un ciclo for per visualizzare gli N termini con un indice i che varia da 0 ad N-1. Dopo, all’interno del ciclo calcoliamo il terzo termine c e poi scambiamo a con b e b con c. Infine stampiamo c.

Ecco dunque una possibile soluzione:

N=int(input('Quanti numeri?: ' ))
a,b=1,1
print(a)
print(b)

for i in range(N):
    c=a+b
    a=b
    b=c
    print(c, end=' ')

Una volta capito il procedimento, riscriviamo l’algoritmo in maniera più elegante, evitando un pò di istruzioni, come ad esempio i print iniziali e realizziamo lo scambio in un’unica riga.

Ecco dunque la soluzione:

N=int(input('Quanti numeri?: ' ))
    
a,b=1,1

for i in range (N):
    print(a, end=' ')
    a,b=b,a+b
    print()

Nelle prossime lezioni vedremo anche una soluzione ricorsiva all’algoritmo sulla successione di Fibonacci in Python.

Alcuni link utili

Indice tutorial sul linguaggio Python

1 – Introduzione al linguaggio Python

2 – Le variabili

3 – Operatori aritmetici e di assegnazione

4 – Stringhe in python

5 – Casting in python

6 – Input e print in python

7 – Primi esercizi in python

8 – Errori in Python

9 – Script Python

10 – Scambio di variabili in python

11 – Modulo math

12 – Operatori di confronto e booleani in python