View Full Version : Generare casualmente stringhe e frasi di senso compiuto
Ciao ragazzi, avrei la necessità di scrivere (in java) un generatore casuale di stringhe e frasi.
La parte più difficile è quella di costruire anche alcune frasi di senso compiuto.
Faccio un esempio banale.
Supponiamo voglia creare e memorizzare in un DB un nuovo libro, con i campi:
-Autore: Pinco Pallino
-Titolo: Rocco e i suoi fratelli
-Casa editrice: Pornadori
-Data: 30/10/2007
-....
I valori numerici è abbastanza semplice crearli random, ma per le stringhe e frasi?
Esistono dei dizionari da cui si possa recuperare delle informazioni?
Che soluzione consigliate?
grazie
^TiGeRShArK^
25-10-2007, 21:44
Usa il ProteusKompozer :O
:asd:
Dai, ho voluto fare un esempio simpatico :D
Cerco qualche consiglio serio :)
AnonimoVeneziano
25-10-2007, 23:15
Il problema nel tuo caso è che quelle frasi sono tutte tranne che casuali :D
Cioè tutte quelle stringhe appartengono ad un contesto (nel tuo esempio un record di un libro) e ad ogni riga (autore, libro, casa editrice) sono state scritte stringhe contestualizzate.
L'autore che hai scritto è in effetti un nome valido (parodico, certo) di persona, stessa cosa per il nome del libro e casa editrice. Sarebbe stato più strano e "casuale" se avessi messo come Autore "Pornadori" e casa editrice "Rocco i suoi fratelli".
Insomma, spero di aver reso chiaro il concetto che quel pezzo di testo non è casuale :p
Almeno come minimo devi specificare un contesto per fare una cosa del genere.
Ciao
EDIT: Se il tuo scopo è creare solo un "generatore di libri fasulli" allora potresti creare dei file database dove tenere i nomi di autori fasulli e i titoli inventati. A quel punto fai in modo che, all'atto della generazione del libro , il tuo programma peschi a caso tra , rispettivamente, gli autori , i titoli, le case editrici, le date ... etc memorizzate nel file di database (che può essere scritto in XML o come vuoi tu).
Usa il ProteusKompozer :O
:asd:
che cosa è ? Ho cercato in google ma trova solo 4 risultati e nessuno che lo spiega.
Un algoritmo naive per un generatore casuale di frasi lo trovi nel libro "the practice of programming" di pike.
In pratica è il seguente (esempio con profondità 2).
Prendi un paio di frasi (puoi benissimo usare dei capoversi di libri o roba del genere)
e spezzetti le frasi a gruppi di 2 parole (2 è la profondita).
tipo
Il gatto dorme in santa pace sul letto.
Il papa parla dalla santa sede
diventa
<inizio> il
il gatto
gatto dorme
dorme in
in santa
santa pace
pace sul
sul letto
letto <fine>.
<inizio> il
il papa
papa parla
parla dalla
dalla santa
santa sede
sede <fine>.
poi prendi i pezzi e li valuti con un generatore random dove il primo pezzo fa match per scegliere il secondo.
esempio:
devi scegliere un inizio (qui ne hai 2 identici (esempio un po' sfigato)
il
poi cerchi tutti quelli che fanno match
il papa, il gatto e scegli random
il gatto
poi iteri e puoi arrivare ad una cosa del tipo
il gatto dorme in stanta sede.
ovviamente piu consideri la profondità alta 3, 4 parole e piu consideri le parole appartententi alla parte inizalie per fare match meno saranno le frasi disponibili ma sempre piu sensate.
Sono stato spiegato?
feyd
^TiGeRShArK^
26-10-2007, 13:20
che cosa è ? Ho cercato in google ma trova solo 4 risultati e nessuno che lo spiega.
:asd:
è un programmino fatto da un utente di questo forum (in C# se non erro) che genera post casuali sfruttando gli interventi un pò "strani" di un certo altro utente :asd:
esce fuori qualcosa di questo genere:
Una capriola veramente rimarchevole, fai attenzione alle slogature perchè andare a messa e stare a casa nel medesimo momento non sono due condizioni conciliabili tra loro. Io non ho nulla di particolarmente astioso verso questo governo perchè alla fin fine non è tanto diverso dal precedente ma non posso passar sopra ai ripetuti tentativi, riusciti grazie alla dabbenaggine media italica, di fregare il cittadino con raggiri contabili degli di un azzeccagarbugli di quart'ordine. Rifletti bene prima di parlare e leggi con la dovuta attenzione, risparmierai figure peregrine come questa.
Powered by ProteusKompozer v1.0.2
:asd:
:asd:
è un programmino fatto da un utente di questo forum (in C# se non erro) che genera post casuali sfruttando gli interventi un pò "strani" di un certo altro utente :asd:
esce fuori qualcosa di questo genere:
:asd:
Ma è bellissimo, soprattutto perchè la frase torna grammaticalmente ma non vuol dire nulla.
Credo che per ottenere qualcosa del genere occorra un database contenente tutte le parole divise per nomi, verbi, aggettivi, articoli e preposizioni.
Si trova qualcosa del genere online ?
^TiGeRShArK^
26-10-2007, 14:10
Ma è bellissimo, soprattutto perchè la frase torna grammaticalmente ma non vuol dire nulla.
Credo che per ottenere qualcosa del genere occorra un database contenente tutte le parole divise per nomi, verbi, aggettivi, articoli e preposizioni.
Si trova qualcosa del genere online ?
:rotfl::rotfl::rotfl::rotfl:
Il bello è che questo programma non fa altro che prendere i post dell'utente in questione, li divide in 3 parti (prologo, contenuto, conclusione) e li unisce in maniera casuale :asd:
Il merito maggiore è tutto suo non del programma :asd:
lukeskywalker
26-10-2007, 15:16
Ma è bellissimo, soprattutto perchè la frase torna grammaticalmente ma non vuol dire nulla.
questo non è merito del programma ma dell'utente imhohttp://img154.imageshack.us/img154/8242/sisi002ls9.gif
comunque sappi che il suo uso (del programma intendo) è vietato in questo forum
http://img116.imageshack.us/img116/7393/afraidyt3.gif
Usa il ProteusKompozer :O
:asd:
Le voleva di senso compiuto
lukeskywalker
26-10-2007, 16:59
Le voleva di senso compiuto
lol
Primo siete OT. Secondo questa non è piazzetta. Terzo prendere per i fondelli un utente di questo forum mi sembra assolutamente fuori luogo.
Intanto chiudo e creo un altro thread per gokan.
Per le suddette motivazioni vengono comminati 3 gg di sospensione a lukeskywalker, das, sider e ^TiGeRShArK^.
Il nuovo thread di Gokan è questo: http://www.hwupgrade.it/forum/showthread.php?t=1587535
Rimossa la sospensione a das in quanto non era a conoscenza della situazione pregressa ed i suoi post non avevano scopo provocatorio.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.