Forum >> Programmazione Python >> Scripting >> Buonasera, vorrei un aiuto per il mio codice

Pagina: 1

Buonasera, vorrei un aiuto per mio codice.
Dato il codice:

"


import random




import itertools










# Dizionario dei nomi e dei punteggi iniziali




nomi = ["A", "B", "C", "D", "E", "F", "G", "H"]




punteggi = {nome: 0 for nome in nomi}










# Genera tutte le combinazioni possibili di nomi senza ripetizioni




combinazioni = list(itertools.combinations(nomi, 2))










# Loop del gioco




while combinazioni:




nome1, nome2 = random.choice(combinazioni)




combinazioni.remove((nome1, nome2))









print(f"Chi preferisci tra {nome1} e {nome2}? (Inserisci 1 per {nome1} o 2 per {nome2})")










risposta = input()









if risposta == '1':




puntegginome1 += 1




elif risposta == '2':




puntegginome2 += 1




else:




print("Scelta non valida. Inserisci 1 o 2.")










# Stampa dei risultati finali




print("\nPunteggi Finali:")




for nome, punteggio in punteggi.items():




print(f"{nome}: {punteggio} preferenze")



"

Per chiudere il ciclo di combinazioni nell'esecuzione si deve rispondere al fattoriale del numero dei "nomi" quindi se dovessi aumentare il numero dei "nomi" il numero di combinazioni aumenta a dismisura. Io vorrei aggiungere una proprieta transitiva del tipo

se A meglio di B

e B meglio di C

quindi A meglio di C

Così da diminuire drasticamente le combinazioni future.

Grazie mille






Doppio messaggio, chiudo questo.


Pagina: 1



La discussione è chiusa.