THMMY.gr

Μαθήματα Βασικού Κύκλου => Δομές Δεδομένων => Topic started by: Exomag on November 21, 2013, 03:39:03 am



Title: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on November 21, 2013, 03:39:03 am
Topic που αφορά τη δεύτερη εργασία του μαθήματος, με ανακοινώσεις/απορίες/κτλ σχετικά με αυτήν. Stay on topic!


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on November 21, 2013, 11:41:28 am
Στην σελιδα 4 της εκφώνησης κατω κάτω αναφέρει ορισμένες συναρτήσεις. Πρέπει να τις γράψουμε; γιατι δεν μπορώ να τις εντοπισω μέσα στον κωδικα   :-\


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on November 21, 2013, 12:21:38 pm
Στην σελιδα 4 της εκφώνησης κατω κάτω αναφέρει ορισμένες συναρτήσεις. Πρέπει να τις γράψουμε; γιατι δεν μπορώ να τις εντοπισω μέσα στον κωδικα   :-\

Ναι, αυτά είναι παραδείγματα συναρτήσεων που θα μας βοηθούσαν ιδιαίτερα στην επίλυση του προβλήματος (και, εφόσον θελήσει κάποιος να τις χρησιμοποιήσει, θα πρέπει να τις γράψει). Δεν είναι αναγκαστικό, βέβαια, να τις χρησιμοποιήσεις! (μπορεί πχ κάποιος απλά να γράψει "χύμα" κώδικα, αντί να γράψει συναρτήσεις)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on November 21, 2013, 12:30:18 pm
Ναι, αυτά είναι παραδείγματα συναρτήσεων που θα μας βοηθούσαν ιδιαίτερα στην επίλυση του προβλήματος (και, εφόσον θελήσει κάποιος να τις χρησιμοποιήσει, θα πρέπει να τις γράψει). Δεν είναι αναγκαστικό, βέβαια, να τις χρησιμοποιήσεις! (μπορεί πχ κάποιος απλά να γράψει "χύμα" κώδικα, αντί να γράψει συναρτήσεις)
Με παρασύρεις σε λάθη επίτηδες.   >:(  Ντροπή σου


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: jthois on November 26, 2013, 22:15:19 pm
Στην εκφώνηση λέει:
3. Η απόσταση των ζαχαρωτών που απομακρύνθηκαν στο κάτω μέρος της οθόνης (όπου y=0)
Ποια απόσταση εννοεί; Είναι ίδια με την απόσταση που επιστρέφει η getHeight()


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on November 26, 2013, 22:38:00 pm
Στην εκφώνηση λέει:
3. Η απόσταση των ζαχαρωτών που απομακρύνθηκαν στο κάτω μέρος της οθόνης (όπου y=0)
Ποια απόσταση εννοεί; Είναι ίδια με την απόσταση που επιστρέφει η getHeight()
Ναί έτσι είναι. Βέβαια η συνάρτηση getHeight() πρέπει να υλοποιηθεί από το χρήστη (είναι μόνο βοηθητική).


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: jthois on December 02, 2013, 15:01:14 pm
Η εφαρμογή τρέχει σε μένα αφού έκανα αναβάθμιση στο Java Runtime Environment 7. Απλά, ο heuristic player χάνει από τον Random.. Δεν έχω κάνει λάθος ε; Αυτός είναι κωλόφαρδος >:( >:(


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 02, 2013, 16:34:18 pm
Η εφαρμογή τρέχει σε μένα αφού έκανα αναβάθμιση στο Java Runtime Environment 7. Απλά, ο heuristic player χάνει από τον Random.. Δεν έχω κάνει λάθος ε; Αυτός είναι κωλόφαρδος >:( >:(

Άμα ο HeuristicPlayer παίζει κανονικά, αλλά απλά χάνει από τον RandomPlayer, τότε δε θα έχεις κάνει πολύ καλά την υλοποίηση της επιλογής κίνησης (υποτίθεται ότι θα πρέπει να νικάει κάθε φορά τον RandomPlayer).


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: c0ndemn3d on December 02, 2013, 17:39:43 pm
Η εφαρμογή τρέχει σε μένα αφού έκανα αναβάθμιση στο Java Runtime Environment 7. Απλά, ο heuristic player χάνει από τον Random.. Δεν έχω κάνει λάθος ε; Αυτός είναι κωλόφαρδος >:( >:(

(http://i47.photobucket.com/albums/f168/cheapshot2/preparedie.jpg)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: themis93 on December 04, 2013, 00:37:15 am
ο πίνακας move που μπαίνει σαν όρισμα στην evaluateMove τη περιέχει?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 04, 2013, 00:52:38 am
ο πίνακας move που μπαίνει σαν όρισμα στην evaluateMove τη περιέχει?

Την evaluateMove θα την καλείς εσύ μέσα στη συνάρτηση getIndexOfBestMove. Οπότε θα την καλείς με όποιο όρισμα εσύ θέλεις, όποια μορφή και να έχει αυτό.
Το λογικό είναι ο πίνακας move να είναι 1x3 ή 1x4, ανάλογα με ποια υλοποίηση προτιμάς (ζαχαρωτό και κατεύθυνση κίνησης ή δύο ζευγάρια συντεταγμένων ζαχαρωτών).


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 07, 2013, 14:28:40 pm
Η κλαση Tile στην ουσια εχει το επιλεγμενο πλακιδιο που θα γινει η κινηση ετσι?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 07, 2013, 14:49:02 pm
Η κλαση Tile στην ουσια εχει το επιλεγμενο πλακιδιο που θα γινει η κινηση ετσι?

Ένα αντικείμενο στον τύπο της κλάσης Tile, ουσιαστικά, υλοποιεί ένα πλακίδι του ταμπλό.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 07, 2013, 14:55:18 pm
Η κλαση Tile στην ουσια εχει το επιλεγμενο πλακιδιο που θα γινει η κινηση ετσι?

Ένα αντικείμενο στον τύπο της κλάσης Tile, ουσιαστικά, υλοποιεί ένα πλακίδι του ταμπλό.
Αρα εγώ θα πάρω το επιλεγμένο πλακίδιο από τoν πίνακα returnedMove που επιστρέφεται από τη συνάρτηση calculateNextMove?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 07, 2013, 15:00:41 pm
Η κλαση Tile στην ουσια εχει το επιλεγμενο πλακιδιο που θα γινει η κινηση ετσι?

Ένα αντικείμενο στον τύπο της κλάσης Tile, ουσιαστικά, υλοποιεί ένα πλακίδι του ταμπλό.
Αρα εγώ θα πάρω το επιλεγμένο πλακίδιο από τoν πίνακα returnedMove που επιστρέφεται από τη συνάρτηση calculateNextMove?
Αναλόγως αν κοιτάς πριν ή μετά την κίνηση.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 07, 2013, 15:01:15 pm
Η κλαση Tile στην ουσια εχει το επιλεγμενο πλακιδιο που θα γινει η κινηση ετσι?

Ένα αντικείμενο στον τύπο της κλάσης Tile, ουσιαστικά, υλοποιεί ένα πλακίδι του ταμπλό.
Αρα εγώ θα πάρω το επιλεγμένο πλακίδιο από τoν πίνακα returnedMove που επιστρέφεται από τη συνάρτηση calculateNextMove?

Ο πίνακας returnedMove που επιτρέφεται από τη calculateNextMove δεν περιέχει πλακίδια, είναι 1x4 πίνακας ακεραίων (με τα δύο ζεύγη συντεταγμένων, των πλακιδίων που θα αλλάξουν θέση).


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 07, 2013, 15:42:48 pm
Η κλαση Tile στην ουσια εχει το επιλεγμενο πλακιδιο που θα γινει η κινηση ετσι?

Ένα αντικείμενο στον τύπο της κλάσης Tile, ουσιαστικά, υλοποιεί ένα πλακίδι του ταμπλό.
Αρα εγώ θα πάρω το επιλεγμένο πλακίδιο από τoν πίνακα returnedMove που επιστρέφεται από τη συνάρτηση calculateNextMove?

Ο πίνακας returnedMove που επιτρέφεται από τη calculateNextMove δεν περιέχει πλακίδια, είναι 1x4 πίνακας ακεραίων (με τα δύο ζεύγη συντεταγμένων, των πλακιδίων που θα αλλάξουν θέση).
Ναι αυτο το εχω καταλαβει,αυτο που θελω ειναι να χρησιμοποιησω αυτον τον πινακα για τις θεσεις του επιλεγμενου πλακιδιου γιατι μεσω της Tile απ'οτι καταλαβα δεν μποορω να παρω το επιλεγμενο πλακιδιο,ετσι?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 07, 2013, 15:45:05 pm
Η κλαση Tile στην ουσια εχει το επιλεγμενο πλακιδιο που θα γινει η κινηση ετσι?

Ένα αντικείμενο στον τύπο της κλάσης Tile, ουσιαστικά, υλοποιεί ένα πλακίδι του ταμπλό.
Αρα εγώ θα πάρω το επιλεγμένο πλακίδιο από τoν πίνακα returnedMove που επιστρέφεται από τη συνάρτηση calculateNextMove?

Ο πίνακας returnedMove που επιτρέφεται από τη calculateNextMove δεν περιέχει πλακίδια, είναι 1x4 πίνακας ακεραίων (με τα δύο ζεύγη συντεταγμένων, των πλακιδίων που θα αλλάξουν θέση).
Ναι αυτο το εχω καταλαβει,αυτο που θελω ειναι να χρησιμοποιησω αυτον τον πινακα για τις θεσεις του επιλεγμενου πλακιδιου γιατι μεσω της Tile απ'οτι καταλαβα δεν μποορω να παρω το επιλεγμενο πλακιδιο,ετσι?

Αν θέλεις να πάρεις το πλακίδιο στο οποίο αναφέρονται οι συντεταγμένες, μπορείς να χρησιμοποιήσεις τη συνάρτηση getTile(int, int) που βρίσκεται στην κλάση Board.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 07, 2013, 15:49:39 pm
Αν θέλεις να πάρεις το πλακίδιο στο οποίο αναφέρονται οι συντεταγμένες, μπορείς να χρησιμοποιήσεις τη συνάρτηση getTile(int, int) που βρίσκεται στην κλάση Board.
Και αυτο θα ειναι το πλακιδιο της κινησης μου?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 07, 2013, 15:55:06 pm
Αν θέλεις να πάρεις το πλακίδιο στο οποίο αναφέρονται οι συντεταγμένες, μπορείς να χρησιμοποιήσεις τη συνάρτηση getTile(int, int) που βρίσκεται στην κλάση Board.
Και αυτο θα ειναι το πλακιδιο της κινησης μου?

Μέσω αυτής της συνάρτησης, παίρνεις το αντικείμενο τύπο Tile που βρίσκεται στις συντεταγμένες που δίνει ως ορίσματα. Εφόσον ο σκοπός σου ήταν να πάρεις το αντικείμενο (για να το χρησιμοποιήσεις, κάπως) τότε αυτή η συνάρτηση λογικά θα σου χρειαστεί.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 07, 2013, 16:36:26 pm
Oι συναρτησεις οι βοηθητικες που τις υλοποιουμε εμεις μπορουν να εχουν ορισματα?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 07, 2013, 16:42:34 pm
Η συναρτησεις οι βοηθητικες που τις υλοποιουμε εμεις μπορουν να εχουν ορισματα?

Δικιές σου συναρτήσεις θα είναι, όπως θες τις κάνεις!


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 07, 2013, 17:25:54 pm
Κατι ακομη εγω πως μπορω να διαχειριστω το ταμπλο μου,δηλαδη πως μπορω να το προσπελασω ή να το αποθηκευσω ας πουμε μεσα σε εναν πινακα?Δημιουργωντας ενα αντικειμενο τυπου Board?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 07, 2013, 17:40:21 pm
Κατι ακομη εγω πως μπορω να διαχειριστω το ταμπλο μου,δηλαδη πως μπορω να το προσπελασω ή να το αποθηκευσω ας πουμε μεσα σε εναν πινακα?Δημιουργωντας ενα αντικειμενο τυπου Board?

Μα, το ταμπλό το παίρνεις σαν όρισμα στις περισσότερες συναρτήσεις (αν όχι όλες) του HeuristicPlayer που καλείσαι να υλοποιήσεις...


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 07, 2013, 17:45:23 pm
Κατι ακομη εγω πως μπορω να διαχειριστω το ταμπλο μου,δηλαδη πως μπορω να το προσπελασω ή να το αποθηκευσω ας πουμε μεσα σε εναν πινακα?Δημιουργωντας ενα αντικειμενο τυπου Board?

Μα, το ταμπλό το παίρνεις σαν όρισμα στις περισσότερες συναρτήσεις (αν όχι όλες) του HeuristicPlayer που καλείσαι να υλοποιήσεις...
Κάπως έτσι Function(...,Board board)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Gru on December 07, 2013, 17:48:13 pm
πως μπορώ να πάρω τον πίνακα returnedMove σε μια άλλη συνάρτηση αλλά μέσα στην ίδια κλάση?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 07, 2013, 17:49:54 pm
Κατι ακομη εγω πως μπορω να διαχειριστω το ταμπλο μου,δηλαδη πως μπορω να το προσπελασω ή να το αποθηκευσω ας πουμε μεσα σε εναν πινακα?Δημιουργωντας ενα αντικειμενο τυπου Board?

Μα, το ταμπλό το παίρνεις σαν όρισμα στις περισσότερες συναρτήσεις (αν όχι όλες) του HeuristicPlayer που καλείσαι να υλοποιήσεις...
Κάπως έτσι Function(...,Board board)
Το ξερω αυτο βρε παιδια,απλα δεν μπορουσα να σκεφτω τροπο να τον αποθηκευσω μεσα σε εναν πινακα 10Χ10 ωστε μετα να κανω τις συγκρισεις που εχω σκεφτει!Οπως και να εχει ευχαριστω παρα πολυ για τις αμεσες απαντησεις σας!θα επιστρεψω δρυμητερη :Ρ (και με αλλες αποριες!ορεξη να εχετε να απαντατε!)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 07, 2013, 18:09:37 pm
πως μπορώ να πάρω τον πίνακα returnedMove σε μια άλλη συνάρτηση αλλά μέσα στην ίδια κλάση?

Μπορείς απλά να περνάς τον πίνακα ακεραίων ως όρισμα σε όποια συνάρτηση θες. (και στην εκφώνηση άμα δεις, το κάνουν)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 07, 2013, 21:28:58 pm
Η κίνηση και η διαγραφή!
Ρε παιδια η board boardAfterMove(Board board, int[] move) σου επιστρεφει τον πινακα αφου γινει η κινηση ΚΑΙ η διαγραφη ή μονο αφου γινει η κινηση;
Για να έχεις καινούργιο ταμπλό.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 08, 2013, 00:36:15 am
H 2η εργασία τι καινούργιο απαιτεί απο java?αυτά που κάναμε στο εργαστήριο αρκούν?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 08, 2013, 01:41:28 am
H 2η εργασία τι καινούργιο απαιτεί απο java?αυτά που κάναμε στο εργαστήριο αρκούν?
Ναι άνετα.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: elefmylo on December 08, 2013, 11:46:33 am
Η κίνηση και η διαγραφή!
Ρε παιδια η board boardAfterMove(Board board, int[] move) σου επιστρεφει τον πινακα αφου γινει η κινηση ΚΑΙ η διαγραφη ή μονο αφου γινει η κινηση;
Για να έχεις καινούργιο ταμπλό.

Άρα σου επιστρέφει ένα πίνακα όπου οι θέσεις που διαγράφτηκαν είναι κενές ή γεμάτες από candies που έπεσαν από πάνω...?Και επίσης εγώ σαν παίχτης μπορώ να δω μέχρι το y=10...?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 08, 2013, 16:04:38 pm
Γινεται να αποθηκευσουμε εναν πινακα στον vector?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: TrueForce on December 08, 2013, 16:18:34 pm
Ο eclipse δεχεται σχολια στα ελληνικα;


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: elefmylo on December 08, 2013, 16:21:11 pm
Ο eclipse δεχεται σχολια στα ελληνικα;

ναι


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: TrueForce on December 08, 2013, 16:32:08 pm
πως κανω την κλαση heuristicplayer να βλεπει την κλαση tile; γιατι θελω να δημιουργησω ενα αντικειμενο tile μεσα της και δε με αφηνει, μαλλον επειδη δε βλεπει την κλαση...

edit; την εκανα Import, ακυρο. για καποιο λογο επρεπε να πατησω 7 φορες κλικ για να γινει......


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: elefmylo on December 08, 2013, 17:15:31 pm
τι μορφής είναι ο πίνακας move...?δηλαδή ειναι 1χ3 με (x1,y1,κατεύθυνση) ή 1x4 (x1,y1,x2,y2)..?

edit:οκ το δεύτερο ειναι...


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: TrueForce on December 08, 2013, 17:20:51 pm
^εγω δεν τον χρησιμοποίησα έτσι, απλά τον έστειλα. και στο τελος εστειλα τον πινακα της καλυτερης κινησης απο την array list.

ρε μαγκες εγώ έπαιξα ένα παιχνιδι και νίκησε(ο παικτης μου) 307-34. Είναι λογική τέτοια διαφορά....;

μετα απο καποιες επαναληψεις το σκορ βγαινει καπου 300 εναντιων 30-100, πιο λογικο. οποτε ακυρο.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: elefmylo on December 08, 2013, 18:00:25 pm
Υπάρχει τρόπος να αλλάξω το χρώμα των πλακιδίων...?καμιά set...?
edit:βρήκα μια λύση


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Kodi on December 08, 2013, 18:09:38 pm
Θέλω να αρχικοποιήσω μια μεταβλητή πχ a στο πρώτο στοιχείο ενός vector τύπου <Arraylist> ξέρει κανένας πως γίνεται;; Εγώ προσπαθώ αυτό a=vec.get(move[0]) ,αλλά μου βγάζει πρόβλημα...


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 08, 2013, 18:34:12 pm
H συνάρτηση στον κώδικα είναι αυτή  float evaluateMove (int[] move, Board board),ενώ στην αναφορά αυτή double evaluate(int[] move,Board board)....την αλλάξατε όπως την έχει στην αναφορά?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Jim D. Ace on December 08, 2013, 18:36:20 pm
H συνάρτηση στον κώδικα είναι αυτή  float evaluateMove (int[] move, Board board),ενώ στην αναφορά αυτή double evaluate(int[] move,Board board)....την αλλάξατε όπως την έχει στην αναφορά?
οπως και να την εχεις δεν παιζει ρολο
αρκει να εισαι συνεπης μεσα στο προγραμμα σου


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: molotov49 on December 08, 2013, 19:57:03 pm
παιδια ξερετε αν μπορουμε να καλεσουμε συναρτησεις που εχει γραμμενες στον κωδικα που μας εδωσαν ετοιμο??


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 08, 2013, 20:16:31 pm
παιδια ξερετε αν μπορουμε να καλεσουμε συναρτησεις που εχει γραμμενες στον κωδικα που μας εδωσαν ετοιμο??
Φυσικά μπορείς! ;)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: molotov49 on December 08, 2013, 20:30:27 pm
αυτο λυνει πολλα χερια  ^hello^


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Silvo the Beautiful on December 08, 2013, 20:33:16 pm
έχω δημιουργήσει 10 Level παιχνιδιού με γραφικά. Όμως όταν πάω να παίξω έχει ένα bug και με γυρνάει από το 5 level στο 1! Ξέρει κανείς τι μπορεί να φταίει;


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 08, 2013, 20:36:23 pm
Θέλω να αρχικοποιήσω μια μεταβλητή πχ a στο πρώτο στοιχείο ενός vector τύπου <Arraylist> ξέρει κανένας πως γίνεται;; Εγώ προσπαθώ αυτό a=vec.get(move[0]) ,αλλά μου βγάζει πρόβλημα...

a = vec.get(0); δε σου κάνει? :-\


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 08, 2013, 21:13:54 pm
καμια ιδέα γιατί στο console μ βγάζει τα παρακάτω?

Exception in thread "Thread-2" java.lang.ArrayIndexOutOfBoundsException: -1
   at java.util.ArrayList.elementData(Unknown Source)
   at java.util.ArrayList.get(Unknown Source)
   at gr.auth.ee.dsproject.crush.board.Board.getTile(Board.java:230)
   at gr.auth.ee.dsproject.crush.player.HeuristicPlayer .evaluateMove(HeuristicPlayer.java:143)
   at gr.auth.ee.dsproject.crush.player.HeuristicPlayer .getIndexOfBestMove(HeuristicPlayer.java:118)
   at gr.auth.ee.dsproject.crush.player.HeuristicPlayer .getNextMove(HeuristicPlayer.java:69)
   at gr.auth.ee.dsproject.crush.MainPlatform$3$1.run(MainPlatform.java:414)
   at java.lang.Thread.run(Unknown Source)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 08, 2013, 21:32:21 pm
καμια ιδέα γιατί στο console μ βγάζει τα παρακάτω?

Exception in thread "Thread-2" java.lang.ArrayIndexOutOfBoundsException: -1
   at java.util.ArrayList.elementData(Unknown Source)
   at java.util.ArrayList.get(Unknown Source)
   at gr.auth.ee.dsproject.crush.board.Board.getTile(Board.java:230)
   at gr.auth.ee.dsproject.crush.player.HeuristicPlayer .evaluateMove(HeuristicPlayer.java:143)
   at gr.auth.ee.dsproject.crush.player.HeuristicPlayer .getIndexOfBestMove(HeuristicPlayer.java:118)
   at gr.auth.ee.dsproject.crush.player.HeuristicPlayer .getNextMove(HeuristicPlayer.java:69)
   at gr.auth.ee.dsproject.crush.MainPlatform$3$1.run(MainPlatform.java:414)
   at java.lang.Thread.run(Unknown Source)

Μοιάζει σαν να πας να κάνεις .get(i) από ArrayList, με δείκτη i που δεν είναι αποδεκτός.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Kodi on December 08, 2013, 22:05:14 pm
Θέλω να αρχικοποιήσω μια μεταβλητή πχ a στο πρώτο στοιχείο ενός vector τύπου <Arraylist> ξέρει κανένας πως γίνεται;; Εγώ προσπαθώ αυτό a=vec.get(move[0]) ,αλλά μου βγάζει πρόβλημα...

a = vec.get(0); δε σου κάνει? :-\

όχι μου βγάζει πρόβλημα....  :-\


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 08, 2013, 22:25:05 pm
Θέλω να αρχικοποιήσω μια μεταβλητή πχ a στο πρώτο στοιχείο ενός vector τύπου <Arraylist> ξέρει κανένας πως γίνεται;; Εγώ προσπαθώ αυτό a=vec.get(move[0]) ,αλλά μου βγάζει πρόβλημα...

a = vec.get(0); δε σου κάνει? :-\

όχι μου βγάζει πρόβλημα....  :-\
Τι πρόβλημα;
πόσταρε αν μπορείς  :)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Kodi on December 08, 2013, 22:27:41 pm
Θέλω να αρχικοποιήσω μια μεταβλητή πχ a στο πρώτο στοιχείο ενός vector τύπου <Arraylist> ξέρει κανένας πως γίνεται;; Εγώ προσπαθώ αυτό a=vec.get(move[0]) ,αλλά μου βγάζει πρόβλημα...

a = vec.get(0); δε σου κάνει? :-\

όχι μου βγάζει πρόβλημα....  :-\
Τι πρόβλημα;
πόσταρε αν μπορείς  :)

εννοώ βγάζει δίπλα κόκκινο χ.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 08, 2013, 23:19:38 pm
εννοώ βγάζει δίπλα κόκκινο χ.
Πάνω στο κόκκινο x τι λέει;


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Kodi on December 09, 2013, 00:12:27 am
εννοώ βγάζει δίπλα κόκκινο χ.
Πάνω στο κόκκινο x τι λέει;

λοιπόν ορίζω μια μεταβλητή max τύπου float max=availableMoves.get(0) και δίπλα μου γράφει στο λάθος "type mismatch: cannot convert from int[] to float"


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 09, 2013, 00:19:53 am
εννοώ βγάζει δίπλα κόκκινο χ.
Πάνω στο κόκκινο x τι λέει;

λοιπόν ορίζω μια μεταβλητή max τύπου float max=availableMoves.get(0) και δίπλα μου γράφει στο λάθος "type mismatch: cannot convert from int[] to float"
Λοιπόν το availableMoves.get(0) είναι πίνακας
σου επιστρέφει την πρώτη πιθανή κίνηση που είναι τρεις αριθμοί (x,y,direction)
Αν αναφέρεσαι στην getIndexOfBestMove τότε αυτό που μπορείς να κάνεις είναι να αρχικοποιήσεις το max με μια τιμή (0)
και μετά στις υπόλοιπες να κάνεις έλεγχο κάπως έτσι:
if (evaluateMove(availableMoves.get(i),board)>max){       
          max=evaluateMove(availableMoves.get(i),board);
}


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Kodi on December 09, 2013, 00:23:02 am
εννοώ βγάζει δίπλα κόκκινο χ.
Πάνω στο κόκκινο x τι λέει;

λοιπόν ορίζω μια μεταβλητή max τύπου float max=availableMoves.get(0) και δίπλα μου γράφει στο λάθος "type mismatch: cannot convert from int[] to float"
Λοιπόν το availableMoves.get(0) είναι πίνακας
σου επιστρέφει την πρώτη πιθανή κίνηση που είναι τρεις αριθμοί (x,y,direction)
Αν αναφέρεσαι στην getIndexOfBestMove τότε αυτό που μπορείς να κάνεις είναι να αρχικοποιήσεις το max με μια τιμή (0)
και μετά στις υπόλοιπες να κάνεις έλεγχο κάπως έτσι:
if (evaluateMove(availableMoves.get(i),board)>max){       
          max=evaluateMove(availableMoves.get(i),board);
}

Δεν  το είχα σκεφτεί έτσι!! Ευχαριστώ πολύ για τη βοήθεια!! :)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 09, 2013, 00:27:02 am

Δεν  το είχα σκεφτεί έτσι!! Ευχαριστώ πολύ για τη βοήθεια!! :)
8)) όποτε θες.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 09, 2013, 18:12:16 pm
Παιδιά μία πολύ βασική ερώτηση.η συνάρτηση boardaftermove,μας επιστρέφει τον πίνακα μετά την αμοιβαία ανταλλαγή και την αντικατάσταση του συνδυασμού με άλλα ζαχαρωτά??


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: c0ndemn3d on December 09, 2013, 18:23:16 pm
Ναι, αλλά δεν διαγράφει τα chain moves, πρέπει να τα βρεις μόνος σου από το board που θα επιστρέψει η ίδια συνάρτηση.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 09, 2013, 18:30:46 pm
thanx


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: nvog1993 on December 09, 2013, 20:01:28 pm
Δεν ξέρω αν έχει κανείς αυτή την ερώτηση, αλλά βαριέμαι να ψάχνω. Αν στο ταμπλό, με μια ανταλλαγή ξαχαρωτών, πραγματοποιείται ταυτόχρονη διαγραφή ζαχαρωτών, η availableMoves() μας δίνει 2 ξεχωριστές κινήσεις, ή μία ολική που περιλαμβάνει την ταυτόχρονη διαγραφή?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: reservoir dog on December 09, 2013, 20:44:08 pm
Δεν μπορω να καταλάβω χριστό..  :) μπορεί κάποιος να μου δώσει απάντηση σε κάποιο από τα παρακάτω μπας και γίνει τίποτα ; :

1) H ΑrrayList τι θα πρέπει να περιέχει?
2) Θα χρησιμοποιηθουν συναρτησεις που υπάρχουν στο Board?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on December 09, 2013, 21:18:45 pm
Δεν μπορω να καταλάβω χριστό..  :) μπορεί κάποιος να μου δώσει απάντηση σε κάποιο από τα παρακάτω μπας και γίνει τίποτα ; :

1) H ΑrrayList τι θα πρέπει να περιέχει?
2) Θα χρησιμοποιηθουν συναρτησεις που υπάρχουν στο Board?


1)Αμα θέλεις χρησιμοποιείς (ρώτησα τον τσάπανο)
2)Αμα θέλεις


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on December 09, 2013, 21:19:11 pm
Δεν ξέρω αν έχει κανείς αυτή την ερώτηση, αλλά βαριέμαι να ψάχνω. Αν στο ταμπλό, με μια ανταλλαγή ξαχαρωτών, πραγματοποιείται ταυτόχρονη διαγραφή ζαχαρωτών, η availableMoves() μας δίνει 2 ξεχωριστές κινήσεις, ή μία ολική που περιλαμβάνει την ταυτόχρονη διαγραφή?

Δίνει δύο κινήσεις


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 09, 2013, 21:49:35 pm
παίδες υλοποίησα μία συνάρτηση αξιολόγησης αλλά όταν το τρέχω η κονσόλα μ βαράει στα παρακάτω

 public Tile getTile (int x, int y)  -->class board,όπως μας δίνετε ο κώδικας
  {
    return fullBoard.get(x).get(y);
  }

if((board.getTile(i,j)).getColor ()==0) -->heuristic οταν θέλω να συγκρίνω το χρώμα του πλακιδίου

colors=sameColor(move[0],move[1],board);-->οταν απο την evaluate καλώ την συνάρτηση για τα χρώματα

table=evaluateMove(availableMoves.get(i),board); -->οταν αποθηκεύω το grade

 public int[] getNextMove (ArrayList<int[]> availableMoves, Board board)      --->αυτό υπάρχει ετοιμο στον κώδικα
  {

    int[] move = availableMoves.get(getIndexOfBestMove(availableMoves, board));

    return calculateNextMove(move);

  }

movesOfA = playerA.getNextMove(availMoves, board);   ---> και αυτό επίσης στη main


καμιά ιδέα???


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on December 09, 2013, 23:45:43 pm
παίδες υλοποίησα μία συνάρτηση αξιολόγησης αλλά όταν το τρέχω η κονσόλα μ βαράει στα παρακάτω

 public int[] getNextMove (ArrayList<int[]> availableMoves, Board board)      --->αυτό υπάρχει ετοιμο στον κώδικα
  {

    int[] move = availableMoves.get(getIndexOfBestMove(availableMoves, board));

  }

movesOfA = playerA.getNextMove(availMoves, board);   ---> και αυτό επίσης στη main

Για να βαράνε αυτά τα δυο έχει πρόβλημα η getIndexOfBestMove. Έχεις κάνει να επιστρέφεται εκει ο δεικτης της κίνησης που επιλέγεις μετά το evaluation?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on December 09, 2013, 23:49:39 pm
if((board.getTile(i,j)).getColor ()==0) -->heuristic οταν θέλω να συγκρίνω το χρώμα του πλακιδίου

Βγάλε την παρένθεση μετα το if kai πριν το getColor


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on December 09, 2013, 23:51:39 pm
colors=sameColor(move[0],move[1],board);-->οταν απο την evaluate καλώ την συνάρτηση για τα χρώματα


Πρέπει να δηλώσεις τον πινακα πριν του θεσεις τιμες: int[] colors = new int[ΜΕΓΕΘΟΣ]


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on December 09, 2013, 23:52:56 pm
table=evaluateMove(availableMoves.get(i),board); -->οταν αποθηκεύω το grade

επισης δήλωσε τον πινακα


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on December 09, 2013, 23:54:28 pm
παίδες υλοποίησα μία συνάρτηση αξιολόγησης αλλά όταν το τρέχω η κονσόλα μ βαράει στα παρακάτω

 public Tile getTile (int x, int y)  -->class board,όπως μας δίνετε ο κώδικας
  {
    return fullBoard.get(x).get(y);
  }


εχεις πειράξει τον κώδικα ή τα χ και y ξεφευγουν απο τα ορια του board.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 09, 2013, 23:58:05 pm
table=evaluateMove(availableMoves.get(i),board); -->οταν αποθηκεύω το grade

επισης δήλωσε τον πινακα
δηλωμένος κανονικά είναι με μέγεθος το size του arraylist


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on December 09, 2013, 23:59:48 pm
table=evaluateMove(availableMoves.get(i),board); -->οταν αποθηκεύω το grade

επισης δήλωσε τον πινακα
δηλωμένος κανονικά είναι με μέγεθος το size του arraylist

float; τι λεει οταν πας το βελος πανω στο κοκκινο χ;


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 10, 2013, 00:00:15 am
παίδες υλοποίησα μία συνάρτηση αξιολόγησης αλλά όταν το τρέχω η κονσόλα μ βαράει στα παρακάτω

 public Tile getTile (int x, int y)  -->class board,όπως μας δίνετε ο κώδικας
  {
    return fullBoard.get(x).get(y);
  }


εχεις πειράξει τον κώδικα ή τα χ και y ξεφευγουν απο τα ορια του board.

κώδικα δεν πείραξα....και γω αρχικά σκέφτηκα ότι διαφεύγω απο τα όρια του board αλλα μετά το έλαβα υπόψιν ρυθμίζοντας κατάλληλα τα μήκη και πλατη στο διάστημα που ψάχνω να βρω τα όμοια χρώματα


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 10, 2013, 00:01:08 am
table=evaluateMove(availableMoves.get(i),board); -->οταν αποθηκεύω το grade

επισης δήλωσε τον πινακα
δηλωμένος κανονικά είναι με μέγεθος το size του arraylist

float; τι λεει οταν πας το βελος πανω στο κοκκινο χ;

δεν έχει πουθενά χ ο κώδικας,όλα αυτά μου τα βγάζει στο console


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on December 10, 2013, 00:02:49 am
κανε κοπι πειστ την κονσολα


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Silvo the Beautiful on December 10, 2013, 00:12:54 am
πως γίνεται να το κάνω να μασουλάει σοκολάτες;


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: fasoul on December 10, 2013, 00:24:16 am
πως γίνεται να το κάνω να μασουλάει σοκολάτες;
...like this: ^moon^


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: skipper on December 10, 2013, 00:52:09 am
Τον αριθμο των γραμμων στις συγκρισεις τον πηρατε σαν getRows() η getRows()/2? Επειδη βλεπω οτι σε ηδη γραμμενα κομματια του κωδικα χρησιμοποιουν το 2ο. Επισης, η static μεταβλητη NUMBER_OF_ROWS στην CrushUtilities ισουται με 20, ενω η NUMBER_OF_COLUMNS ισουται με 10, μαλλον φταιει αυτο για το παραπανω. Το ταμπλο βεβαια εμφανιζεται σα 10x10, καταλαβε κανεις τι παιζει και αν τελικα εχει σημασια το πως θα παρουμε τις γραμμες;


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Mr K on December 10, 2013, 00:57:41 am
 Το ταμπλω ειναι 10 και 20 απλα βλέπουμε και παιζουμε μόνο στο μισο. Το άλλο μισο ειναι μονο για να παραγονται τα ζαχαρωτα. Παρτο /2


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: skipper on December 10, 2013, 01:02:47 am
Το ταμπλω ειναι 10 και 20 απλα βλέπουμε και παιζουμε μόνο στο μισο. Το άλλο μισο ειναι μονο για να παραγονται τα ζαχαρωτα. Παρτο /2

Οκ ευχαριστω!


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: reservoir dog on December 10, 2013, 02:10:39 am
Η sameColor δεν πρέπει να δέχεται και το ταμπλό ως όρισμα? Επίσης, τα width και height ειναι απλοι ακέραιοι οι οποίοι απλά οριοθετουν την περιοχή αν καταλαβα καλα? Δηλαδη μπορω να βάλω width=1 και height =2 ξερωγω?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 10, 2013, 03:05:05 am
Η sameColor δεν πρέπει να δέχεται και το ταμπλό ως όρισμα? Επίσης, τα width και height ειναι απλοι ακέραιοι οι οποίοι απλά οριοθετουν την περιοχή αν καταλαβα καλα? Δηλαδη μπορω να βάλω width=1 και height =2 ξερωγω?
Η συνάρτηση είναι βοηθητική και δικιά σου,όπως θέλεις θα την κάνεις  ;)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: reservoir dog on December 10, 2013, 12:30:40 pm
σωστό και αυτό αλλά η λογική σου φαίνεται σωστή?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 10, 2013, 12:51:47 pm
κάποιος που έκανε 3 ή και παραπάνω συναρτήσεις αξιολόγησης πόσο περίπου σκορ παίρνει ενδεικτικά???


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: reservoir dog on December 10, 2013, 13:51:39 pm
H συναρτηση findCreatedNples (Board board) του πακετου board τι ακριβως υπολογιζει?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 10, 2013, 14:42:46 pm
σωστό και αυτό αλλά η λογική σου φαίνεται σωστή?

Ναι, θα χρειάζεται και το ταμπλό σαν όρισμα στη συνάρτηση. Η λογική σου σωστή είναι  ;)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 10, 2013, 14:43:48 pm
H συναρτηση findCreatedNples (Board board) του πακετου board τι ακριβως υπολογιζει?

Της δίνει ένα ταμπλό, ψάχνει για οποιονδήποτε (έτοιμο συνδυασμό) υπάρχει, μαρκάρει όλα τα Tiles που συμμετέχουν σε συνδυασμούς (μπορεί να υπάρχουν περισσότεροι από έναν) και επιστρέφει τον αριθμό τους.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 10, 2013, 14:56:43 pm
σωστό και αυτό αλλά η λογική σου φαίνεται σωστή?
Ναι μια χαρά είναι! 8))


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 10, 2013, 15:45:09 pm
κάποιος που έκανε 3 ή και παραπάνω συναρτήσεις αξιολόγησης πόσο περίπου σκορ παίρνει ενδεικτικά???


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 10, 2013, 15:48:18 pm
κάποιος που έκανε 3 ή και παραπάνω συναρτήσεις αξιολόγησης πόσο περίπου σκορ παίρνει ενδεικτικά???

Ο RandomPlayer δεν κάνει κάποια κίνηση στο 75% των περιπτόσεων, και απλά ξαναπαίζει ο HeuristicPlayer. Οπότε δεν έχει νόημα να συγκρίνεις σκορ, μιας και εξαρτάται από το πόσο τυχερός/άτυχος θα είσαι, δηλαδή πόσες φορές θα μπορέσει να κάνει όντως κίνηση ο RandomPlayer (θεωρητικά, είναι πιθανό να μην έχει παίξει ούτε μια φορά μέχρι να νικήσει ο HeuristicPlayer).


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 10, 2013, 17:34:36 pm
παιδιά το πρόγραμμα τρέχει κανονικά,αλλα κατά τη διάρκεια του παιχνιδιού πετάει στη κονσόλα το εξής 'Player Random played a wrong move".αυτό δεν αφορά εμένα έτσι??


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Jim D. Ace on December 10, 2013, 17:40:41 pm
παιδιά το πρόγραμμα τρέχει κανονικά,αλλα κατά τη διάρκεια του παιχνιδιού πετάει στη κονσόλα το εξής 'Player Random played a wrong move".αυτό δεν αφορά εμένα έτσι??
οχι


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 10, 2013, 19:56:33 pm
Μια μικρουλα βοηθειουλα παρακαλωω για την τελευταια συναρτηση int[] sameColor!Αυτο το υψος και το πλατος ειναι στην ουσια ενα παραλληλογραμμο με κεντρικο σημειο το δικο μας πλακιδιο?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 10, 2013, 20:07:14 pm
Επίσης επειδη οταν λεμε τον αριθμο πλακιδιων με ιδιο χρωμα εννοουμε εκτος απο το δικο μας ετσι????????????????????????


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 10, 2013, 20:15:48 pm
Κατι τελευταιο αν υποθεσουμε οτι ισχυουν τα προηγουμενα,εγω για να το πετυχω αυτο θα μπορουσα να κανω 4 πινακες με αρχη η με τελος το σημειο που με ενδιαφερει? ::)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: lakis on December 10, 2013, 20:51:29 pm
Μια μικρουλα βοηθειουλα παρακαλωω για την τελευταια συναρτηση int[] sameColor!Αυτο το υψος και το πλατος ειναι στην ουσια ενα παραλληλογραμμο με κεντρικο σημειο το δικο μας πλακιδιο?

αυτή η συνάρτηση είναι πολύ random ως προς τη  λειτουργικότητά της.Το πλήθος των όμοιων χρωμάτων σε μία γειτονιά του πλακιδίου σου πως θα επηρεάσει τη κίνησή σου?μεγάλο πλήθος θα συμφέρει εσένα ή των αντίπαλο?εγώ την υλοποίησα,έκανα πολλές δοκιμές,αλλά δεν διαπίστωσα αν με συμφέρει ή όχι τελικά.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 10, 2013, 21:17:28 pm
Μια μικρουλα βοηθειουλα παρακαλωω για την τελευταια συναρτηση int[] sameColor!Αυτο το υψος και το πλατος ειναι στην ουσια ενα παραλληλογραμμο με κεντρικο σημειο το δικο μας πλακιδιο?
Ναι γενικά έτσι είναι.
Επίσης επειδη οταν λεμε τον αριθμο πλακιδιων με ιδιο χρωμα εννοουμε εκτος απο το δικο μας ετσι????????????????????????
Ναι εννοούμε εκτός.
Κατι τελευταιο αν υποθεσουμε οτι ισχυουν τα προηγουμενα,εγω για να το πετυχω αυτο θα μπορουσα να κανω 4 πινακες με αρχη η με τελος το σημειο που με ενδιαφερει? ::)
Μπορείς αλλά μπορείς και με έναν όπου το σημείο σου είναι στο κέντρο και τα όρια σου είναι -height/2 , height/2 κλπ.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: 020400e on December 10, 2013, 21:21:15 pm
Ρε παιδιά τα όρια του πίνακα δε θα έπρεπε να είναι 10 γραμμές και 10 στήλες ? γιατί είναι 20 και 10 :(


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 10, 2013, 21:28:25 pm
Ρε παιδιά τα όρια του πίνακα δε θα έπρεπε να είναι 10 γραμμές και 10 στήλες ? γιατί είναι 20 και 10 :(
Υπάρχει ένα ακόμη ταμπλό από πάνω που δεν φαίνεται για να προστίθενται ζαχαρωτά.
Δεν σε ενοχλεί καθόλου πέρα από το ότι πρέπει να βάζεις getRows/2 όπου χρειάζεται αυτό.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: 020400e on December 10, 2013, 21:34:15 pm
Ρε παιδιά τα όρια του πίνακα δε θα έπρεπε να είναι 10 γραμμές και 10 στήλες ? γιατί είναι 20 και 10 :(
Υπάρχει ένα ακόμη ταμπλό από πάνω που δεν φαίνεται για να προστίθενται ζαχαρωτά.
Δεν σε ενοχλεί καθόλου πέρα από το ότι πρέπει να βάζεις getRows/2 όπου χρειάζεται αυτό.

Thank you


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 10, 2013, 21:35:21 pm
Thank you Batman!


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: reservoir dog on December 10, 2013, 21:54:28 pm
Η κίνηση move με την οποία δουλεύουμε εμείς στην evaluate είναι τριών ή τεσσάρων θέσεων?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: RFed the King on December 10, 2013, 21:57:47 pm
Η κίνηση move με την οποία δουλεύουμε εμείς στην evaluate είναι τριών ή τεσσάρων θέσεων?
+1


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Schro on December 10, 2013, 21:59:12 pm
Παιδια η συναρτηση που υπαρχει ηδη γραμμενη findCreatedNples αν την καλεσω για ενα αντικειμενο board (το οποιο περιεχει την κατασταση των ζαχαρωτων μετα την κινηση) θα μου δωσει τον αριθμο των ζαχαρωτων που φευγουν σε εκεινο το ταμπλο ετσι δεν ειναι?


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 10, 2013, 22:09:58 pm
Η κίνηση move με την οποία δουλεύουμε εμείς στην evaluate είναι τριών ή τεσσάρων θέσεων?
Τριών
move[0]=x,move[1]=y,move[2]=direction


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 10, 2013, 22:10:35 pm
Παιδια η συναρτηση που υπαρχει ηδη γραμμενη findCreatedNples αν την καλεσω για ενα αντικειμενο board (το οποιο περιεχει την κατασταση των ζαχαρωτων μετα την κινηση) θα μου δωσει τον αριθμο των ζαχαρωτων που φευγουν σε εκεινο το ταμπλο ετσι δεν ειναι?
Ναι σωστά το λες.
Βοηθάει πολύ η συγκεκριμένη.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Schro on December 10, 2013, 22:27:57 pm
Παιδια η συναρτηση που υπαρχει ηδη γραμμενη findCreatedNples αν την καλεσω για ενα αντικειμενο board (το οποιο περιεχει την κατασταση των ζαχαρωτων μετα την κινηση) θα μου δωσει τον αριθμο των ζαχαρωτων που φευγουν σε εκεινο το ταμπλο ετσι δεν ειναι?
Ναι σωστά το λες.
Βοηθάει πολύ η συγκεκριμένη.

Eυχαριστω πολυ!  :)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: reservoir dog on December 10, 2013, 22:33:47 pm
δίνει όμως και τετραδες πενταδες η μονο τριαδες?  ^confused^


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Schro on December 10, 2013, 22:38:59 pm
δίνει όμως και τετραδες πενταδες η μονο τριαδες?  ^confused^

Εγω οπως το καταλαβα υπολογιζει μολις κανεις την κινηση τα ζαχαρωτα που φευγουν και οχι τις chain moves που ακολοθουν. Δηλαδη υπολογιζει αν θα κανεις 3αδα, 4αδα, 5αδα καθετα και οριζοντια. Αμα μπορει καποιος ας επιβεβαιωσει.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 10, 2013, 22:40:44 pm
δίνει όμως και τετραδες πενταδες η μονο τριαδες?  ^confused^

Εγω οπως το καταλαβα υπολογιζει μολις κανεις την κινηση τα ζαχαρωτα που φευγουν και οχι τις chain moves που ακολοθουν. Δηλαδη υπολογιζει αν θα κανεις 3αδα, 4αδα, 5αδα καθετα και οριζοντια.
Ναι βλέπει όλους τους συνδυασμούς 3-4-5 γάμμα κλπ και τα μαρκάρει απλά δεν τα διώχνει
για το chain απλά καλείς τη newBoard και ξαναμαρκάρεις  :)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Schro on December 10, 2013, 22:58:27 pm
δίνει όμως και τετραδες πενταδες η μονο τριαδες?  ^confused^

Εγω οπως το καταλαβα υπολογιζει μολις κανεις την κινηση τα ζαχαρωτα που φευγουν και οχι τις chain moves που ακολοθουν. Δηλαδη υπολογιζει αν θα κανεις 3αδα, 4αδα, 5αδα καθετα και οριζοντια.
Ναι βλέπει όλους τους συνδυασμούς 3-4-5 γάμμα κλπ και τα μαρκάρει απλά δεν τα διώχνει
για το chain απλά καλείς τη newBoard και ξαναμαρκάρεις  :)

Ρωταω απλα για να ειμαι σιγουρος:
Αν καλεσω την boarfAfterMove και στο καινουργιο αυτο ταμπλο την findCreatedNples υπολογιζω ποσα ζαχαρωτα διωχνει η καθε κινηση και οχι τα chain moves.
Σωστα;;


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Xleboniaris on December 10, 2013, 23:03:14 pm
να ρωτήσω δυο πραγματάκια. Αρχικά, για την sameColor . Την έχω κάνει, να καλείται για περιττούς αριθμούς ώστε να είναι συμμετρικά τα όρια δεξιά και αριστερά του πλακιδίου που μετακινείται. Αρχικά, ποια θα ήταν μια καλή περιοχή για να την καλέσω ώστε να έχω αντιπροσωπευτικά αποτελέσματα , πχ 5χ5??   Έπειτα στον πίνακα που παίρνω διαιρώ με τα συνολικά πλακίδια κάθε στοιχείο για να πάρω μια πυκνότητα. Εκεί, λοιπόν πως θα χρησιμοποιήσω τα αποτελέσματα?? από ότι κατάλαβα δεν θα κοιτάξω αυτό το χρώμα που μετακινείται αλλά τα υπόλοιπα. Εκεί , για ποίο ποσοστό πυκνότητας πλακιδίων ενός χρώματος θα αρχίσω να δίνω μονάδες ??   Και , πόσο σημαντική είναι αυτή η κίνηση σε σχέση με τις άλλες και κυρίως την καθετότητα και το ύψος του τελευταίου?? Ενοώ , πόσες θα είναι οι μέγιστες μονάδες που θα παίρνεις από αυτό το κριτήριο σε σχέση με τα μέγιστα των άλλων δύο??

Επίσης, από ότι κατάλαβα το ποιο σημαντικό κριτήριο είναι πόσα διαγράφει μαζί με τα chains . Αν για παράδειγμα, δίνω 10 μονάδες για ένα πλακίδιο που διαγράφεται , δηλαδή χ10 στα ολικά ,  είναι ένταξη να παίρνουν τα μέγιστα αποτελέσματα των άλλων τριών  κριτηρίων  από 15 όλα μαζί ?? (καθετότητα+χαμηλα στο ταμπλό + χαμηλή πυκνότητα)

Τέλος, στην deleted ,  δεν χρησιμοποίησα την boardAfterMove , απλά χρησιμοποίησα , τον κώδικα που έχει γραμμένο στο εσωτερικό της σε επανάληψη. Δηλαδή , έκανα αρχικά το προσωρινό ταμπλό με το μετακινημένο πλακίδιο και μετά σε μια επανάληψη μέσω της συνάρτησης που μαρκάρει τους συνδιασμούς  και άρα  υπολογίζει τα ζαχαρωτά που θα φύγουν και μετά καλώ εκείνη που τα διώχνει κιόλας(removeMarkedTilesForClone) . Τα αποτελέσματα της πρώτης προστίθεται στα ολικά ,το ταμπλό για την επόμενη είναι αυτό που επιστρέφει η remove και η επανάληψη σταματάει όταν δεν έχει βρει κάτι στην προηγούμενη. Είναι σωστό λοιπόν αυτό ??


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 10, 2013, 23:13:19 pm

Ρωταω απλα για να ειμαι σιγουρος:
Αν καλεσω την boarfAfterMove και στο καινουργιο αυτο ταμπλο την findCreatedNples υπολογιζω ποσα ζαχαρωτα διωχνει η καθε κινηση και οχι τα chain moves.
Σωστα;;
Υπολογίζεις πόσα ζαχαρωτά επρόκειτο να φύγουν λόγω της chain move.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 10, 2013, 23:15:55 pm
να ρωτήσω δυο πραγματάκια. Αρχικά, για την sameColor . Την έχω κάνει, να καλείται για περιττούς αριθμούς ώστε να είναι συμμετρικά τα όρια δεξιά και αριστερά του πλακιδίου που μετακινείται. Αρχικά, ποια θα ήταν μια καλή περιοχή για να την καλέσω ώστε να έχω αντιπροσωπευτικά αποτελέσματα , πχ 5χ5??   Έπειτα στον πίνακα που παίρνω διαιρώ με τα συνολικά πλακίδια κάθε στοιχείο για να πάρω μια πυκνότητα. Εκεί, λοιπόν πως θα χρησιμοποιήσω τα αποτελέσματα?? από ότι κατάλαβα δεν θα κοιτάξω αυτό το χρώμα που μετακινείται αλλά τα υπόλοιπα. Εκεί , για ποίο ποσοστό πυκνότητας πλακιδίων ενός χρώματος θα αρχίσω να δίνω μονάδες ??   Και , πόσο σημαντική είναι αυτή η κίνηση σε σχέση με τις άλλες και κυρίως την καθετότητα και το ύψος του τελευταίου?? Ενοώ , πόσες θα είναι οι μέγιστες μονάδες που θα παίρνεις από αυτό το κριτήριο σε σχέση με τα μέγιστα των άλλων δύο??

Επίσης, από ότι κατάλαβα το ποιο σημαντικό κριτήριο είναι πόσα διαγράφει μαζί με τα chains . Αν για παράδειγμα, δίνω 10 μονάδες για ένα πλακίδιο που διαγράφεται , δηλαδή χ10 στα ολικά ,  είναι ένταξη να παίρνουν τα μέγιστα αποτελέσματα των άλλων τριών  κριτηρίων  από 15 όλα μαζί ?? (καθετότητα+χαμηλα στο ταμπλό + χαμηλή πυκνότητα)

Τέλος, στην deleted ,  δεν χρησιμοποίησα την boardAfterMove , απλά χρησιμοποίησα , τον κώδικα που έχει γραμμένο στο εσωτερικό της σε επανάληψη. Δηλαδή , έκανα αρχικά το προσωρινό ταμπλό με το μετακινημένο πλακίδιο και μετά σε μια επανάληψη μέσω της συνάρτησης που μαρκάρει τους συνδιασμούς (findCreatedNples) και άρα  υπολογίζει τα ζαχαρωτά που θα φύγουν και μετά καλώ εκείνη που τα διώχνει κιόλας(removeMarkedTilesForClone) . Τα αποτελέσματα της πρώτης προστίθεται στα ολικά ,το ταμπλό για την επόμενη είναι αυτό που επιστρέφει η remove και η επανάληψη σταματάει όταν δεν έχει βρει κάτι στην προηγούμενη. Είναι σωστό λοιπόν αυτό ??
Ναι σωστό είναι.
Όσο για τις ερωτήσεις καλά είναι, απλά τα κάνεις όπως θέλεις.
Δεν υπάρχει κάτι σωστό δηλαδή.
Οι περιοχές και οι συντελεστές είναι καθαρά στην κρίση σου και δεν νομίζω να πολυμετράνε στο βαθμό. ;)


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Xleboniaris on December 10, 2013, 23:21:09 pm
να ρωτήσω δυο πραγματάκια. Αρχικά, για την sameColor . Την έχω κάνει, να καλείται για περιττούς αριθμούς ώστε να είναι συμμετρικά τα όρια δεξιά και αριστερά του πλακιδίου που μετακινείται. Αρχικά, ποια θα ήταν μια καλή περιοχή για να την καλέσω ώστε να έχω αντιπροσωπευτικά αποτελέσματα , πχ 5χ5??   Έπειτα στον πίνακα που παίρνω διαιρώ με τα συνολικά πλακίδια κάθε στοιχείο για να πάρω μια πυκνότητα. Εκεί, λοιπόν πως θα χρησιμοποιήσω τα αποτελέσματα?? από ότι κατάλαβα δεν θα κοιτάξω αυτό το χρώμα που μετακινείται αλλά τα υπόλοιπα. Εκεί , για ποίο ποσοστό πυκνότητας πλακιδίων ενός χρώματος θα αρχίσω να δίνω μονάδες ??   Και , πόσο σημαντική είναι αυτή η κίνηση σε σχέση με τις άλλες και κυρίως την καθετότητα και το ύψος του τελευταίου?? Ενοώ , πόσες θα είναι οι μέγιστες μονάδες που θα παίρνεις από αυτό το κριτήριο σε σχέση με τα μέγιστα των άλλων δύο??

Επίσης, από ότι κατάλαβα το ποιο σημαντικό κριτήριο είναι πόσα διαγράφει μαζί με τα chains . Αν για παράδειγμα, δίνω 10 μονάδες για ένα πλακίδιο που διαγράφεται , δηλαδή χ10 στα ολικά ,  είναι ένταξη να παίρνουν τα μέγιστα αποτελέσματα των άλλων τριών  κριτηρίων  από 15 όλα μαζί ?? (καθετότητα+χαμηλα στο ταμπλό + χαμηλή πυκνότητα)

Τέλος, στην deleted ,  δεν χρησιμοποίησα την boardAfterMove , απλά χρησιμοποίησα , τον κώδικα που έχει γραμμένο στο εσωτερικό της σε επανάληψη. Δηλαδή , έκανα αρχικά το προσωρινό ταμπλό με το μετακινημένο πλακίδιο και μετά σε μια επανάληψη μέσω της συνάρτησης που μαρκάρει τους συνδιασμούς και άρα  υπολογίζει τα ζαχαρωτά που θα φύγουν και μετά καλώ εκείνη που τα διώχνει κιόλας(removeMarkedTilesForClone) . Τα αποτελέσματα της πρώτης προστίθεται στα ολικά ,το ταμπλό για την επόμενη είναι αυτό που επιστρέφει η remove και η επανάληψη σταματάει όταν δεν έχει βρει κάτι στην προηγούμενη. Είναι σωστό λοιπόν αυτό ??
Ναι σωστό είναι.
Όσο για τις ερωτήσεις καλά είναι, απλά τα κάνεις όπως θέλεις.
Δεν υπάρχει κάτι σωστό δηλαδή.
Οι περιοχές και οι συντελεστές είναι καθαρά στην κρίση σου και δεν νομίζω να πολυμετράνε στο βαθμό. ;)

οκ ευχαριστώ και δίκιο έχεις, απλά θα ήθελα να έχω μια καλύτερη εικόνα για την αξιολόγιση τον κριτηρίων  . Κυριώς με ενδιαφέρει το πόσο βάρος έχει ένα κριτήριο σε σχέση με τα υπόλοιπα για να ξέρω πως να μοιράσω τους πόντους , αλλά οκ


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 10, 2013, 23:24:53 pm

οκ ευχαριστώ και δίκιο έχεις, απλά θα ήθελα να έχω μια καλύτερη εικόνα για την αξιολόγιση τον κριτηρίων  . Κυριώς με ενδιαφέρει το πόσο βάρος έχει ένα κριτήριο σε σχέση με τα υπόλοιπα για να ξέρω πως να μοιράσω τους πόντους , αλλά οκ
Γι αυτό θα τρέχεις κάθε φορά το πρόγραμμα με ένα δευτερεύον κριτήριο καθώς και το πλήθος των ζαχαρωτών και θα βλέπεις πότε νικάς περισσότερο. Κάτι τέτοιο.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Xleboniaris on December 11, 2013, 00:19:51 am
και κάτι ακόμα . Από ότι κατάλαβα κυρίως έχουμε ως προς την διαγραφή σε άξονες έχουμε κατακόρυφη διαγραφή ή όλα τα άλλα , δηλαδή ή οριζόντια ή γάμα και στους δυο , ή ταφ (Τ). Άρα, και στην συνάρτηση επιστροφής του ύψους , θα έχω την ίδια διάκριση έτσι δεν είναι ?? δηλαδή αν έχω κατακόρυφα θα επιστρέφω το πιο χαμηλό , σε όλα τα άλλα θα δίνω το ύψος των πλακιδίων που βρίσκονται στον οριζόντιο άξονα, έτσι??

Και τελευταίο, η sameColor, δίνει αποτέλεσμα στο ταμπλό πριν γίνει η κίνηση  ή αφότου έχει γίνει και έχουν γίνει τα chain?? εγώ έκανα το πρώτο , αυτό θέλει?? ρωτάω γενικά γιατί γράφω την αναφορά και θέλω να βεβαιωθώ ότι τα έχω σωστά ...


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Exomag on December 11, 2013, 00:27:44 am
και κάτι ακόμα . Από ότι κατάλαβα κυρίως έχουμε ως προς την διαγραφή σε άξονες έχουμε κατακόρυφη διαγραφή ή όλα τα άλλα , δηλαδή ή οριζόντια ή γάμα και στους δυο , ή ταφ (Τ). Άρα, και στην συνάρτηση επιστροφής του ύψους , θα έχω την ίδια διάκριση έτσι δεν είναι ?? δηλαδή αν έχω κατακόρυφα θα επιστρέφω το πιο χαμηλό , σε όλα τα άλλα θα δίνω το ύψος των πλακιδίων που βρίσκονται στον οριζόντιο άξονα, έτσι??
Ναι, αυτή είναι η λογική!


Και τελευταίο, η sameColor, δίνει αποτέλεσμα στο ταμπλό πριν γίνει η κίνηση  ή αφότου έχει γίνει και έχουν γίνει τα chain?? εγώ έκανα το πρώτο , αυτό θέλει?? ρωτάω γενικά γιατί γράφω την αναφορά και θέλω να βεβαιωθώ ότι τα έχω σωστά ...
Δικιά σου συνάρτηση είναι, υλοποίησε την όπως θες (όπως νομίζεις ότι θα είναι πιο χρήσιμη δηλαδή) και απλά γράψε στο report μετά το πώς/γιατί την υλοποίησες έτσι.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 11, 2013, 00:51:11 am


Και τελευταίο, η sameColor, δίνει αποτέλεσμα στο ταμπλό πριν γίνει η κίνηση  ή αφότου έχει γίνει και έχουν γίνει τα chain?? εγώ έκανα το πρώτο , αυτό θέλει?? ρωτάω γενικά γιατί γράφω την αναφορά και θέλω να βεβαιωθώ ότι τα έχω σωστά ...
Η sameColor θέλει τα ζαχαρωτά που έχουν διαφορετικό χρώμα σε σχέση από ότι από αυτό που πρόκειται να φύγει.
Αυτό να είναι το κριτήριο σου.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Xleboniaris on December 11, 2013, 01:29:39 am


Και τελευταίο, η sameColor, δίνει αποτέλεσμα στο ταμπλό πριν γίνει η κίνηση  ή αφότου έχει γίνει και έχουν γίνει τα chain?? εγώ έκανα το πρώτο , αυτό θέλει?? ρωτάω γενικά γιατί γράφω την αναφορά και θέλω να βεβαιωθώ ότι τα έχω σωστά ...
Η sameColor θέλει τα ζαχαρωτά που έχουν διαφορετικό χρώμα σε σχέση από ότι από αυτό που πρόκειται να φύγει.
Αυτό να είναι το κριτήριο σου.


Δεν σε πολύ κατάλαβα ... Εγώ είπα , θα διαβάζει τα στοιχεία σε μια ορθογώνια περιοχή που ορίσαμε , που θα υπακούει στα όρια, και ανάλογα με το τι νούμερο είναι το χρώμα κάθε πλακιδίου θα γεμίζει τον πίνακα... σε ποίο ταμπλό να το κάνω αυτό , στο αρχικό πριν γίνει η κίνηση  move , η στην περιοχή αυτή εφόσον έχουν φύγει και οι κινήσεις chain ... αν μπορείς γίνε λίγο πιο συγκεκριμένος


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 11, 2013, 01:41:33 am

Δεν σε πολύ κατάλαβα ... Εγώ είπα , θα διαβάζει τα στοιχεία σε μια ορθογώνια περιοχή που ορίσαμε , που θα υπακούει στα όρια, και ανάλογα με το τι νούμερο είναι το χρώμα κάθε πλακιδίου θα γεμίζει τον πίνακα... σε ποίο ταμπλό να το κάνω αυτό , στο αρχικό πριν γίνει η κίνηση  move , η στην περιοχή αυτή εφόσον έχουν φύγει και οι κινήσεις chain ... αν μπορείς γίνε λίγο πιο συγκεκριμένος
Στο ταμπλό της boardaftermove. Εκεί το έκανα εγώ.
Δεν πρέπει να πάρεις υπόψη τα ζαχαρωτά που φεύγουν από την κίνηση, άρα η boardaftermove είναι μια καλή λύση.


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Xleboniaris on December 11, 2013, 01:49:35 am

Δεν σε πολύ κατάλαβα ... Εγώ είπα , θα διαβάζει τα στοιχεία σε μια ορθογώνια περιοχή που ορίσαμε , που θα υπακούει στα όρια, και ανάλογα με το τι νούμερο είναι το χρώμα κάθε πλακιδίου θα γεμίζει τον πίνακα... σε ποίο ταμπλό να το κάνω αυτό , στο αρχικό πριν γίνει η κίνηση  move , η στην περιοχή αυτή εφόσον έχουν φύγει και οι κινήσεις chain ... αν μπορείς γίνε λίγο πιο συγκεκριμένος
Στο ταμπλό της boardaftermove. Εκεί το έκανα εγώ.
Δεν πρέπει να πάρεις υπόψη τα ζαχαρωτά που φεύγουν από την κίνηση, άρα η boardaftermove είναι μια καλή λύση.



Οκ ευχαριστώ , απλά για να μην κάνω λάθος , όταν καλώ την boardaftermove με την κίνηση θα μου επιστρέψει το ταμπλό όπου έχει φύγει η 3δαδ-4αδα-5αδα της κίνησης move , αλλά θα υπάρχουν της chain έτσι δεν είναι??  Και βασικά δεν κατάλαβα εμένα με συμφαίρει να έχω υψηλές πυκνότητες στα άλλα χρώματα για πιθανα chains ή χαμηλές ώστε να μην μπορεί να βγάλει κίνηση εκεί ο αντίπαλος ??  Έχω καταλάβει αυτά που με είπες απλά μια τελευταία απάντηση


Title: Re: [Δομές Δεδομένων] Εργασία Β 2013/14
Post by: Fcoriolis on December 11, 2013, 02:35:34 am

Οκ ευχαριστώ , απλά για να μην κάνω λάθος , όταν καλώ την boardaftermove με την κίνηση θα μου επιστρέψει το ταμπλό όπου έχει φύγει η 3δαδ-4αδα-5αδα της κίνησης move , αλλά θα υπάρχουν της chain έτσι δεν είναι??  Και βασικά δεν κατάλαβα εμένα με συμφαίρει να έχω υψηλές πυκνότητες στα άλλα χρώματα για πιθανα chains ή χαμηλές ώστε να μην μπορεί να βγάλει κίνηση εκεί ο αντίπαλος ??  Έχω καταλάβει αυτά που με είπες απλά μια τελευταία απάντηση
Καταρχάς θέλεις λίγα του ίδιου χρώματος για να μην κάνει κίνηση ο αντίπαλος.
Και δεύτερον η boardaftermove επιστρέφει το ταμπλό απλά. Και θα υπάρχουν πιθανές 3άδες (4,...) της chain τις οποίες πρέπει να μετρήσεις με τη getNples και πάλι.