La congettura di Collatz sembra un gioco da bambini: scegli un numero, applica due semplici regole e finisci nell'1. Ma i matematici sono bloccati da decenni. Nessuno è riuscito a dimostrare che funzioni per tutti i numeri. Un problema che inganna per la sua semplicità e che ha resistito alle menti più brillanti del pianeta. 🧠
Come programmare una simulazione di Collatz in Python 💻
Implementare l'algoritmo è banale. Un ciclo while valuta se il numero è pari o dispari. Se è pari, lo dividi per due; se è dispari, applichi 3n+1. Il codice viene eseguito in millisecondi per valori piccoli, ma provando con numeri enormi, il tempo di calcolo esplode. La sequenza può allungarsi per centinaia di passi prima di collassare nell'1. È un buon esercizio per imparare il controllo di flusso e i cicli in qualsiasi linguaggio di programmazione.
L'algoritmo che ti farà sentire molto intelligente (o molto stupido) 🤯
Programmare Collatz ti dà una falsa sensazione di potere. Lo scrivi in cinque minuti, lo esegui e tutto funziona. Poi pensi: E se dimostrassi io stesso la congettura? Passi un pomeriggio a scarabocchiare numeri. Poi ricordi che matematici con capelli grigi e lavagne enormi ci provano da 90 anni senza successo. Meglio chiudere l'editor e andare a farti un caffè.