Naviga in questa discussione:
1 Utenti anonimi
Re: possibilità nei librogame |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Allievo
Iscritto il:
30/6/2008 12:38 Messaggi:
24
Livello : 3
HP : 0 / 65 |
Citazione:
si lo porto alla maturità, ma l'argomento è il librogame, non l'algoritmo con cui rappresentarlo, anche perchè sono al classico e queste cose non le abbiamo fatte neanche di sfuggita, solo, che scrivendo la tesina, ho scritto che una delle particlarità del librogame è che può essere riletto-rigiocato un numero molto, ma naturalmente un numero finito, poi leggendo Borges mi ha colpito la sua frase finale "[Quain] si pentì dell’ordine ternario e auspicò che, tra i suoi futuri imitatori, gli uomini scegliessero il binario e i demiurghi e gli dèi l’infinito: infinite storie infinitamente ramificate", e allora mi sono chiesto: ok che non è infinito, ma quanto è questo numero? e così ho iniziato a rompervi le balle con sta storia!
Inviato il: 2/7/2008 9:37
|
||||||||||
Trasferisci | |||||||||||
Re: possibilità nei librogame |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Allievo
Iscritto il:
30/6/2008 12:38 Messaggi:
24
Livello : 3
HP : 0 / 65 |
Citazione:
ho eseguito alla lettera le tue istruzioni, ma mi da lo stesso errore che mi dava prima, ti copio ciò che mi compare: **************************************************************** IDLE 1.2 >>> class Node: def __init__(self,key): self.key = key self.children = [] def visit(root,curPath,paths): if root.children == []: paths += [curPath] for x in root.children: visit(x,curPath + [x.key],paths) # ******************************************************************** # Test # ******************************************************************** root = Node("a") v1 = Node("b") v2 = Node("c") v3 = Node("d") v4 = Node("e") v5 = Node("f") v6 = Node("g") root.children += [v1] root.children += [v2] v1.children += [v3] v1.children += [v4] v2.children += [v5] v2.children += [v6] paths = [] visit(root,[root.key],paths) print paths File " def __init__(self,key): ^ IndentationError: expected an indented block >>> il programma che uso è macpython 2.5 scaricato dal sito www.python.it
Inviato il: 2/7/2008 12:18
|
||||||||||
Trasferisci | |||||||||||
Re: possibilità nei librogame |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Diacono
Iscritto il:
6/5/2008 19:23 Messaggi:
59
Livello : 6
HP : 0 / 138 |
Ah ok, ho capito!
quando ti da l'errore INDENT vuol dire che manca la tabulazione. Python vuole necessariamente il codice indentato con i caratteri di tabulazione. Purtroppo quando ti posto il codice nel forum i caratteri di tabulazione si perdono. Dovrei trovare un modo per caricarti direttamente il file .py ... purtroppo qui si può solo uploadare immagini, o sbaglio? Facciamo così: ti rimetto il codice scrivendo ***TAB*** dove devi mettere il carattere di tabulazione: class Node: ***TAB*** def __init__(self,key): ***TAB*** ***TAB*** self.key = key ***TAB*** ***TAB*** self.children = [] def visit(root,curPath,paths): ***TAB*** if root.children == []: ***TAB*** ***TAB*** paths += [curPath] ***TAB*** for x in root.children: ***TAB*** ***TAB*** visit(x,curPath + [x.key],paths) # ******************************************************************** # Test # ******************************************************************** root = Node("a") v1 = Node("b") v2 = Node("c") v3 = Node("d") v4 = Node("e") v5 = Node("f") v6 = Node("g") root.children += [v1] root.children += [v2] v1.children += [v3] v1.children += [v4] v2.children += [v5] v2.children += [v6] paths = [] visit(root,[root.key],paths) print paths
Inviato il: 2/7/2008 12:26
|
||||||||||
_________________
|
|||||||||||
Trasferisci | |||||||||||
Re: possibilità nei librogame |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Allievo
Iscritto il:
30/6/2008 12:38 Messaggi:
24
Livello : 3
HP : 0 / 65 |
ah ok perfetto mi funzia!!!
mi viene questo: [['a', 'b', 'd'], ['a', 'b', 'e'], ['a', 'c', 'f'], ['a', 'c', 'g']] ma cosa significa?
Inviato il: 2/7/2008 13:22
|
||||||||||
Trasferisci | |||||||||||
Re: possibilità nei librogame |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Supremo Maestro
Iscritto il:
8/4/2005 19:08 Da Roma
Messaggi:
3427
Livello : 45
HP : 0 / 1104 |
Citazione:
Credo che ti abbia trovato 4 percorsi, in quanto ci sono 4 foglie in quell'albero.
Inviato il: 2/7/2008 13:35
|
||||||||||
_________________
Possano la dea Ishir e il dio Kai guidarmi in questo nuovo mondo.... |
|||||||||||
Trasferisci | |||||||||||
Re: possibilità nei librogame |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Diacono
Iscritto il:
6/5/2008 19:23 Messaggi:
59
Livello : 6
HP : 0 / 138 |
L'output è l'elenco dei percorsi possibili.
Nell'esempio abbiamo 4 percorsi possibili: ['a', 'b', 'd'] ['a', 'b', 'e'] ['a', 'c', 'f'] ['a', 'c', 'g'] (ovviamente devi pensare alle lettere come a numeri di paragrafi. Anzi, forse l'esempio sarebbe stato più chiaro sostituendo alle lettere i numeri...) Supponi di aggiungere un ulteriore nodo Z in cui far confluire d, e , f, g Avremmo ancora 4 storie, tutte con lo stesso finale: ['a', 'b', 'd', 'z'] ['a', 'b', 'e', 'z'] ['a', 'c', 'f', 'z'] ['a', 'c', 'g', 'z'] Nel caso di Lupo Solitario avresti ad esempio: ['1', '12', ...., '350'] ['1', '17', ...., '350'] ecc... come storie che si concludono con successo! Anzi , guarda, entrando nel dettaglio di Lupo Solitario dovresti impostare così i dati del programma: root = Node("1") p1 = Node("2") p2 = Node("3") # ecc.... devi mettere tutti i paragrafi fino al 350.... p350 = Node("350") # scrivi le interconnessioni tra i paragrafi # ad es. supponi che dall' 1 puoi andare al 12 o al 17: root.children += [p12] root.children += [p17] # ecc.. ecc.. #poi fai partire il programma: paths = [] visit(root,[root.key],paths) print paths
Inviato il: 2/7/2008 14:07
|
||||||||||
_________________
|
|||||||||||
Trasferisci | |||||||||||
Re: possibilità nei librogame |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Accolito
Iscritto il:
25/5/2008 9:45 Da Napoli
Messaggi:
90
Livello : 8
HP : 0 / 186 |
Citazione:
io l'ho fatto stamattina. Complimenti per la scelta molto originale
Inviato il: 2/7/2008 14:33
|
||||||||||
Trasferisci | |||||||||||
Re: possibilità nei librogame |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Allievo
Iscritto il:
30/6/2008 12:38 Messaggi:
24
Livello : 3
HP : 0 / 65 |
sto facendo la compilazione come mi hai detto tu, ormai sapere quante possibili vie ci sono mi ha preso!
solo per curiosità c'è un modo, una volta che avrò finito di compilarlo tutto, affinchè alla fine mi dica oltre alle varie possibilità un numero in cifro del numero di possibilità che ha trovato? perchè mi sa che saranno un casino (ho anche inserito un paragrafo in più a cui collegare tutti i combattimenti nel caso in cui muori) e contarle tutte una ad una per vedere quante son credo che potrebbe essere la mia mazzata finale!
Inviato il: 3/7/2008 1:16
|
||||||||||
Trasferisci | |||||||||||
Re: possibilità nei librogame |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Diacono
Iscritto il:
6/5/2008 19:23 Messaggi:
59
Livello : 6
HP : 0 / 138 |
Citazione:
Certo, aggiungi questa riga alla fine: print len(paths) ti stamperà il numero di percorsi trovati
Inviato il: 3/7/2008 10:48
|
||||||||||
_________________
|
|||||||||||
Trasferisci | |||||||||||
Re: possibilità nei librogame |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Allievo
Iscritto il:
30/6/2008 12:38 Messaggi:
24
Livello : 3
HP : 0 / 65 |
per la vostra felicità non vi romperò più: ieri ho fatto l'esame! purtroppo non ho messo l'algoritmo o il numero esatte di possibilità perchè mercoledì e giovedì ho studiato come un pazzo.
comunque se volete metto la tesina allegata e zippata qua! ciao a tutti e grazie!
Inviato il: 5/7/2008 13:13
|
||||||||||
Trasferisci | |||||||||||
Puoi vedere le discussioni.
Non puoi inviare messaggi.
Non puoi rispondere.
Non puoi modificare.
Non puoi cancellare.
Non puoi aggiungere sondaggi.
Non puoi votare.
Non puoi allegare files.
Non puoi inviare messaggi senza approvazione.