Newsgroup: it.comp.programmare
Titolo: scrittura intelligente

Qualcuno sa dirmi dove posso trovare informazioni sull'algoritmo per creare
la scrittura intelligente? (il t9 dei cellulari)
grazie
                                                                    LoScara

 ha scritto nel messaggio
news:LxWRb.159700$VW.64...@news3.tin.it...

Non lo so... comunque usa un pò di fantasia... tu come lo faresti??

Paolo Ferraresi ha scritto:

io un'idea ce l'ho. se mi riesce di buttarla giu' (solo teoria) magari 
la posto.

 ha scritto nel messaggio
news:LxWRb.159700$VW.64...@news3.tin.it...

scusa, ma mi viene un dubbio.
si potrebbe:
Creare un DB con tuuuuuuuuttttttttttttte le parole del dizionario.
poi utilizzando un pò di logica direi:
ogni parola deve avere un codice, non univoco.
es.
Casa=2272.
se premo questi tasti, deve comparire CASA.
se la parola che cerco è un'altra faccio un movenext (cerco il prossimo) che
abbia il criterio "2272".
fammi sapere cosa ne pensi.
Cerberus
--
***************************************************************
La Classe non è Acqua.
infatti è il modello in base al quale vengono create le istanze di un
oggetto in fase di esecuzione. Definisce le proprietà dell'oggetto e i
metodi utilizzati per gestire le funzioni dell'oggetto stesso.
***************************************************************

si ma così sarebbe troppo facile... io avevo in mente di calcolare, ogni
volta inserito un numero, la parola, data la combinazione delle lettere e
restrigendo ogni volta la lista delle parole da un'altro database...
Sai consigliarmi un modo per mettere le parole dentro il database (tutte
quelle di un dizionario)?
grazie cerberus...

 ha scritto nel messaggio
news:oYRSb.231872$_P.79...@news4.tin.it...

Secondo me ti conviene creare una funzione di hash che data ogni parola crea
un codice... ogni parola imeessa avrà quindi un valore hash. Lo fai per
tutte le parole del tuo dizionario (che ti crei da un database o da un
testo, o un elenco di parole, quello che vuoi), ti metti in memoria parole e
corrispondente hash.
Vai a vedere nel tuo DB (o hash table) a quali parole può corrispondere la
sequenza digitata.
Non mi sembra difficile.
La funzione di hash che trasforma ogni stringa in un valore numerico intero
se ci pensi un pò riesci a creartela...
ciao.

 La funzione di hash che trasforma ogni stringa in un valore numerico
intero
oppure in un'altra stringa... es abcdef in 111222 !

 la scrittura intelligente? (il t9 dei cellulari)
Cerca un articolo sulle catene di Markov nascoste,
che è il criterio (probabilistico) utilizzato dal
software T9 dei cellulari per decidere il probabile
valore corretto del tasto premuto (dico, non crederai
mica che un misero cellulare tenga in ROM un dizionario
di 30-40 mila parole vero? E per giunta in diverse lingue :-)

di 30-40 mila parole vero? E per giunta in diverse lingue :-)
   E` proprio cosi` invece: la tecnologia T9 utilizza grossi database
di vocaboli in piu` lingue. Il database tiene traccia, come minimo,
della parola e del suo indice di frequenza. La tecnologia e`
disponibile per molte decine di lingue, i produttori poi scelgono
quante inserirne nel loro dispositivo, e anche quante caratteristiche
implementare del sistema completo a seconda delle capacita` del loro
hardware.
   Molto spesso le soluzioni per l'utilizzo delle cosiddette "tastiere
ambigue" si appoggiano a database linguistici. P.es. e` sicuramente
cosi` per T9, eZiText, e ITap.
   Non e` cosi` per l'inutilizzabile (***opinione personale***)
LetterWise, che utilizza un sistema di predizione statistica della
prossima lettera, l'utente corregge le predizioni errate lettera per
lettera, con il vantaggio che non e` necessario un vocabolario e il
sistema puo` essere implementato in hardware con capacita` ROM minime.
-- 
S.L.

grazie Paolo mi sembre una buona idea...

 :-)
ah, l'opzione "Dizionario T9" sta lě solo perchč fa fico, quindi?
-- 
  < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
      Don't stand, REACT!      version 0.1.5. C, C++ and ASM developers
                               and beta testers are welcome!

 di 30-40 mila parole vero?
Invece è così.
Inoltre, normalmente è consentito di inserire nuove parole nel
dizionario.