Menu
Coddy logo textTech

Iteratore di Fibonacci

Lezione 11 di 13 del corso Iteratori in Python di Coddy.

challenge icon

Sfida

Facile

Crea una classe FibonacciIterator che genera numeri di Fibonacci fino a un limite specificato. La classe deve implementare il protocollo iteratore e avere i seguenti metodi:

  • __init__(self, limit): Inizializza l'iteratore con un limite.
  • __iter__(self): Restituisce l'oggetto iteratore stesso.
  • __next__(self): Genera il numero di Fibonacci successivo oppure solleva StopIteration quando viene raggiunto il limite.

Dopo aver implementato la classe FibonacciIterator, creane un'istanza usando il valore di input come limite. Quindi, scorri i numeri di Fibonacci e stampa ciascun numero su una nuova riga finché non viene sollevata l'eccezione StopIteration.

Verrà fornito il seguente input:

  • Un numero intero che rappresenta il limite superiore della sequenza di Fibonacci

Provalo tu

# Leggi l'input
limit = int(input())

class FibonacciIterator:
    def __init__(self, limit):
        self.limit = limit
        # TODO: Inizializza gli altri attributi necessari

    def __iter__(self):
        # TODO: Implementa il metodo __iter__

    def __next__(self):
        # TODO: Implementa il metodo __next__

# Crea un'istanza di FibonacciIterator
fib_iterator = FibonacciIterator(limit)

# TODO: Scorri i numeri di Fibonacci e stampa ciascun numero
# Suggerimento: usa un ciclo for o while con try-except per gestire StopIteration

# Esempio di come stampare un numero di Fibonacci:
# print(fib_number)

Tutte le lezioni di Iteratori in Python

Esercitati da solo: Compilatore Python online