Δημοσιεύτηκε: 05 Οκτ 2009, 13:25
από Luke
Για να είμαι ειλικρινής δεν μελέτησα τις προτεινόμενες λύσεις που παρέθεσες αλλά θα σου πω μια λογική που είναι νομίζω είναι η απλούστερη.

  • Χρησιμοποίησε τη random για να σου παράγει ένα αριθμό σε ένα εύρος τιμών ανάλογα με τον αριθμό των λέξεων που έχεις στη λίστα (π.χ. 0-9).
  • Έτσι αποθηκεύεις αυτή την τιμή σε μια μεταβλητή.
  • Παίζεις το παιχνίδι.
  • Στη συνέχεια διαγράφεις το στοιχείο στη συγκεκριμένη θέση.
Επειδή δε θυμάμαι τι ακριβώς συμβαίνει στις θέσεις από τις οποίες έχεις διαγράψει στοιχεία μπορείς να κάνεις το εξής (αν παραμένουν οι θέσεις αλλά με "κενά" στοιχεία): αντί να σώζεις την τυχαία τιμή σε μεταβλητή να τη σώζεις σε μία νέα λίστα και να τσεκάρεις στα επόμενα random να μην περιέχεται η τυχαία τιμή μέσα σε αυτή τη νέα λίστα. Αυτό θα το επαναλαμβάνεις μέχρι να πέσεις σε στοιχείο (index) που δεν θα υπάρχει σε αυτή τη λίστα.

Τώρα που το βλέπω είναι η λογική του δεύτερου τρόπου που προτείνεις. Δεν νομίζω ότι είναι πολύπλοκο όπως το έχεις κάνει.