Purtroppo non sono ancora entrato molto nell'idea che la programmazione deve tradurre il mio pensiero in codice. Penso di fare ancora l'errore: sicuramente ci sarà un metodo che farà questo per me.

Allora, io credo che un buon modo potrebbe essere usare la similitudine lessicale. Ad esempio potrebbe scomporre ogni parola in una somma di lettere. Quindi la parola CANE sarebbe composta da 1C, 1A, 1N, 1E. La parola SERPENTE sarebbe composta da 1S, 3E, 1R, 1P, 1N, 1T. Quindi quando si inserisce una parola che non corrisponde perfettamente ad una parola tenuta in memoria il sistema cerca tra le parole che scomposte sono più simili a quelle inserite dall'utente. Potrebbe andare?