Title: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Vlassis on November 03, 2015, 21:38:43 pm Σχόλια και συζητήσεις σχετικά με το 1ο μέρος της εργασίας DS - Proximity 2015.
Η εκφώνηση εδώ (http://alexander.ee.auth.gr:8083/eTHMMY/archive/46/downloadFile/6209/ds-project-2015-16-A.pdf). Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: vasilis94 on November 04, 2015, 00:42:48 am Εθιστικό το παιχνιδάκι... Και γενικά με περισσότερες/πιο πολύπλοκες ίσως στρατηγικές από πέρυσι! Καλό κάψιμο :P
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: Vlassis on November 05, 2015, 21:40:06 pm Τι ειναι το id που θα εχει η κλαση Tile για καθε πλακιδιο; πως προκυπτει ;
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: K on November 06, 2015, 00:11:30 am Τι ειναι το id που θα εχει η κλαση Tile για καθε πλακιδιο; πως προκυπτει ; +1 Και επίσης θεωρώ πως μόνο η παρουσία στο πρώτο εργαστήριο δεν επαρκεί για να γράψεις τον κώδικα. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: Vlassis on November 06, 2015, 00:15:38 am Τι ειναι το id που θα εχει η κλαση Tile για καθε πλακιδιο; πως προκυπτει ; +1 Και επίσης θεωρώ πως μόνο η παρουσία στο πρώτο εργαστήριο δεν επαρκεί για να γράψεις τον κώδικα. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: K on November 06, 2015, 00:23:21 am Τι ειναι το id που θα εχει η κλαση Tile για καθε πλακιδιο; πως προκυπτει ; +1 Και επίσης θεωρώ πως μόνο η παρουσία στο πρώτο εργαστήριο δεν επαρκεί για να γράψεις τον κώδικα. Έχεις καταλάβει ας πούμε τί είναι οι getters? ή πώς ακριβώς υλοποιείται το πλατώ.. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: Vlassis on November 06, 2015, 00:50:13 am Τι ειναι το id που θα εχει η κλαση Tile για καθε πλακιδιο; πως προκυπτει ; το 2ο ουτε καν :D Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: K on November 06, 2015, 01:27:28 am Άστα να πάνε Κοσμά, η επιστήμη είναι μια παγίδα, οι φοιτητές δεν έχουμε ελπίδα....
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: giannhs12 on November 06, 2015, 13:58:31 pm Καλησπερα!
Ο Φουτακης Νικος ποιος ειναι ? :) Aς μου στειλει ενα pm παρακαλω!!! :) :) :) :) Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: Vlassis on November 06, 2015, 19:00:09 pm Quote from: eTHMMY Νέα έκδοση του κώδικα του παιχνιδιού 6 Νοε 2015 4:38 μμ Τσάπανος Στο υλικό μαθήματος έχει ανέβει νέα έκδοση του αρχείου Proximity_PartA.zip στην οποία έχει διορθωθεί ένα που δεν άφηνε το πρόγραμμα να κάνει compile. Όσοι είχατε ήδη κατεβάσει τον κώδικα, θα πρέπει να κατεβάσετε την νέα έκδοση και να την εισάγετε στο eclipse ακολουθώντας ξανά τις οδηγίες που υπάρχουν στην εκφώνηση. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: thanasisP on November 06, 2015, 20:48:37 pm Quote from: eTHMMY Νέα έκδοση του κώδικα του παιχνιδιού 6 Νοε 2015 4:38 μμ Τσάπανος Στο υλικό μαθήματος έχει ανέβει νέα έκδοση του αρχείου Proximity_PartA.zip στην οποία έχει διορθωθεί ένα που δεν άφηνε το πρόγραμμα να κάνει compile. Όσοι είχατε ήδη κατεβάσει τον κώδικα, θα πρέπει να κατεβάσετε την νέα έκδοση και να την εισάγετε στο eclipse ακολουθώντας ξανά τις οδηγίες που υπάρχουν στην εκφώνηση. :D :D Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: ablaoublas on November 06, 2015, 21:21:17 pm Quote from: eTHMMY Νέα έκδοση του κώδικα του παιχνιδιού 6 Νοε 2015 4:38 μμ Τσάπανος Στο υλικό μαθήματος έχει ανέβει νέα έκδοση του αρχείου Proximity_PartA.zip στην οποία έχει διορθωθεί ένα που δεν άφηνε το πρόγραμμα να κάνει compile. Όσοι είχατε ήδη κατεβάσει τον κώδικα, θα πρέπει να κατεβάσετε την νέα έκδοση και να την εισάγετε στο eclipse ακολουθώντας ξανά τις οδηγίες που υπάρχουν στην εκφώνηση. Ε όχι ρε, μία φορά είπα να ασχοληθώ με κάτι από νωρίς και σε κακό μου βγήκε... Αλλή φορά θα ακολουθήσω ξανά το αλάνθαστο σύστημα της τελευταίας στιγμής :P Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: Apostolof on November 07, 2015, 00:54:07 am Quote from: eTHMMY Ε όχι ρε, μία φορά είπα να ασχοληθώ με κάτι από νωρίς και σε κακό μου βγήκε... Αλλή φορά θα ακολουθήσω ξανά το αλάνθαστο σύστημα της τελευταίας στιγμής :PΈλα τώρα που σε χάλασε... ευκαιρία για "εργασία" και πίτσα de la mama.... 8)) Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: ablaoublas on November 07, 2015, 01:54:09 am ;D Πάντως τελικά , δεν βρήκα κάποια αλλαγή στην νέα εκφώνηση σε σχέση με την προηγούμενη, αν παρατήρησε κανείς κάτι να το πει ...
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: Vlassis on November 07, 2015, 01:56:57 am ;D Πάντως τελικά , δεν βρήκα κάποια αλλαγή στην νέα εκφώνηση σε σχέση με την προηγούμενη, αν παρατήρησε κανείς κάτι να το πει ... @tolis αψογος! ;Dδεν υπαρχει διαφορα στην εκφωνηση, αλλα στα αρχεια που περιεχει το .zip ;) Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 26/11/15 Post by: Vlassis on November 07, 2015, 16:16:32 pm Quote from: eTHMMY Εκφώνηση Ά Εργασίας 7 Νοε 2015 12:08 μμ Τσάπανος Στο Υλικό μαθήματος έχει ανέβει μια νέα έκδοση της εκφώνησης της πρώτης εργασίας. Η διαφορά εντοπίζεται στην περριγραφή της συνάρτησης getNeighborsCoordinates της κλάσης RandomPlayer και αφορά το πως πρέπει να χειριστείτε τα κελία που έχουν λιγότερους από 6 γείτονες. ;D Πάντως τελικά , δεν βρήκα κάποια αλλαγή στην νέα εκφώνηση σε σχέση με την προηγούμενη, αν παρατήρησε κανείς κάτι να το πει ... ρε προφητης εισαι; :DTitle: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: aqua marina on November 10, 2015, 16:38:48 pm Νέα προθεσμία για την εργασία: Δευτέρα 30 Νοεμβρίου έως τις 23.59. Επίσης, άλλαξε το μέγεθος του ταμπλό.
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: raf on November 10, 2015, 17:34:48 pm ρε παιδια το directory στην java πως το ρυθμίζεις..για να παρει τα αρχεια για τις κλάσεις κτλ
δεν μου τρεχει.. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Vlassis on November 10, 2015, 20:42:19 pm ρε παιδια το directory στην java πως το ρυθμίζεις..για να παρει τα αρχεια για τις κλάσεις κτλ File -> Import -> Existing Projects into Workspace -> Select root directory -> Finishδεν μου τρεχει.. και το φακελο με την εργασια, αφου τον κανεις unzip, τον αντιγραφεις στο workspace σου που εσυ οριζεις οποιο θες, και εκει εχεις τα αρχεια της εργασιας, και στα εμφανιζει ολα κανονικα! Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: silentdreamer on November 11, 2015, 00:03:50 am ΠΡΟΣΟΧΗ!!! Αν θέλετε να διαβάσετε τις τιμές των μεταβλητών ενός αντικειμένου τύπου Tile θα πρέπει να χρησιμοποιήσετε τους αντίστοιχους getters.
Τι εννοεί όταν το λέει αυτό? Επίσης εμείς χρειάζεται να θεωρήσουμε ότι υπάρχει κάποιο Board έτοιμο και πάνω σ αυτό υλοποιούμε τις συναρτήσεις που ζητάει ή να κατασκευάσουμε μόνοι μας έναν πίνακα 12χ10? Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: ablaoublas on November 11, 2015, 00:46:47 am ΠΡΟΣΟΧΗ!!! Αν θέλετε να διαβάσετε τις τιμές των μεταβλητών ενός αντικειμένου τύπου Tile θα πρέπει να χρησιμοποιήσετε τους αντίστοιχους getters. Τι εννοεί όταν το λέει αυτό? Επίσης εμείς χρειάζεται να θεωρήσουμε ότι υπάρχει κάποιο Board έτοιμο και πάνω σ αυτό υλοποιούμε τις συναρτήσεις που ζητάει ή να κατασκευάσουμε μόνοι μας έναν πίνακα 12χ10? Α) Επειδή οι μεταβλητές στην κλάση Tile δεν είναι προσπελάσιμες από την κλάση που υλοποιούμε (RandomPlayer), δηλαδή δεν είναι public, για να πάρεις μία μεταβλητή ενος αντικειμένου της κλάσης Tile , όπως π.χ την color, πρέπει να χρησιμοποιήσεις την κατάλληλη συνάρτηση που ήδη υπάρχει , δηλαδή : α = tile.getColor() ; Το α = tile.color ; δεν θα δουλέψει γιατί η μεταβλητή color δεν είναι public Β) Νομίζω ο πίνακας υπάρχει ήδη, δεν χρειάζεται να κάνουμε κάτι εμείς... Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: silentdreamer on November 11, 2015, 00:51:43 am Κατανοητό αυτό που λές αλλά τότε γιατί λέει να τις διαβάσετε?
Επίσης πως προσπευλάνω τον πίνακα που λές? Σ ευχαριστώ Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: ablaoublas on November 11, 2015, 00:59:37 am Κατανοητό αυτό που λές αλλά τότε γιατί λέει να τις διαβάσετε? Επίσης πως προσπευλάνω τον πίνακα που λές? Σ ευχαριστώ Όταν λέει να διαβάσεις τις τιμές, εννοεί να τις λάβεις/αποκτήσεις, δεν έχει σχέση με δεδομένα που εισάγεις ως χρήστης, εγώ αυτό κατάλαβα ... Τι ακριβώς θες να κάνεις και πρέπει να προσπελάσεις όλο το board ;; Αυτά που μας ζητάνε λογικά υλοποιούνται με τις κλάσεις Tile,Board και τις συναρτήσεις τους. Ό,τι χρείαζεσαι για την κλάση RandomPlayer , λογικά υπάρχει ήδη εκεί. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: silentdreamer on November 11, 2015, 01:10:37 am 2.Να υλοποιήσετε όλες τις αναγκαίες συναρτήσεις ώστε να δημιουργηθεί ένας παίκτης πουθα μπορεί να επιλέξει τυχαία μια θέση [x,y] πάνω στο ταμπλό.
Άρα πάνω που? Αν μπορείς πες μου ονομαστικά΄. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: ablaoublas on November 11, 2015, 01:41:13 am 2.Να υλοποιήσετε όλες τις αναγκαίες συναρτήσεις ώστε να δημιουργηθεί ένας παίκτης πουθα μπορεί να επιλέξει τυχαία μια θέση [x,y] πάνω στο ταμπλό. Άρα πάνω που? Αν μπορείς πες μου ονομαστικά΄. Το ταμπλό του παιχνιδιού , αναπαριστάται με το αντικείμενο board τύπου Board ( board = ταμπλό , με λίγα λόγια) Αμά δεις παρακάτω στην εκφώνηση όλες οι συναρτήσεις σχεδόν, έχουν ένα όρισμα "Board board" , ε πάνω σε αυτό το board κάνεις ό,τι είναι κάνεις ( board = ταμπλό ) Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Pest on November 13, 2015, 17:52:40 pm Αν καποιος δεν ειναι σε ομαδα για τις εργασιες και θελει να μπει σε μια ας μου στειλει pm (forever alone) :'(
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: K on November 17, 2015, 23:54:44 pm Δηλαδή το Board πάνω στο οποίο δουλεύουμε και πχ σκανάρουμε για να δούμε αν είναι εντος των ορίων, δεν είναι ένα δισδιάστατο array από Τiles?
Γιατί για παράδειγμα στις μεθόδους τις κλάσεις Board τα επιστρεφόμενα αντικείμενα είναι τύπου Tile δηλαδή κάπου υπάρχει ένας πίνακας από αυτά. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Insignia on November 19, 2015, 19:24:48 pm Δηλαδή το Board πάνω στο οποίο δουλεύουμε και πχ σκανάρουμε για να δούμε αν είναι εντος των ορίων, δεν είναι ένα δισδιάστατο array από Τiles? Γιατί για παράδειγμα στις μεθόδους τις κλάσεις Board τα επιστρεφόμενα αντικείμενα είναι τύπου Tile δηλαδή κάπου υπάρχει ένας πίνακας από αυτά. Το Board είναι μια κλάση που υπάρχει μέσα στο αρχείο proximity.jar. Μέσα στην κλάση υπάρχει μια μεταβλητή που είναι ένας δισδιάστατος πίνακας απο Tiles. Νομιζω η μεταβλητή λέγεται fullBoard αν θυμάμαι καλά. Έχω επισυνάψει τα decompiled αρχεία java του proximity.jar αν θες να το ψαξεις καλύτερα. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: K on November 19, 2015, 19:50:07 pm Δηλαδή το Board πάνω στο οποίο δουλεύουμε και πχ σκανάρουμε για να δούμε αν είναι εντος των ορίων, δεν είναι ένα δισδιάστατο array από Τiles? Γιατί για παράδειγμα στις μεθόδους τις κλάσεις Board τα επιστρεφόμενα αντικείμενα είναι τύπου Tile δηλαδή κάπου υπάρχει ένας πίνακας από αυτά. Το Board είναι μια κλάση που υπάρχει μέσα στο αρχείο proximity.jar. Μέσα στην κλάση υπάρχει μια μεταβλητή που είναι ένας δισδιάστατος πίνακας απο Tiles. Νομιζω η μεταβλητή λέγεται fullBoard αν θυμάμαι καλά. Έχω επισυνάψει τα decompiled αρχεία java του proximity.jar αν θες να το ψαξεις καλύτερα. Δεν είμαι απόλυτα σίγουρος αν το fullBoard είναι αυτό που μπορεί να μας εξυπηρετήσει.. Σε ευχαριστώ πολύ για τη βοήθεια. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Insignia on November 19, 2015, 20:25:02 pm Δεν είμαι απόλυτα σίγουρος αν το fullBoard είναι αυτό που μπορεί να μας εξυπηρετήσει.. Σε ευχαριστώ πολύ για τη βοήθεια. Όχι το fullBoard εμείς δεν το χρησιμοποιούμε. Αν το δεις είναι και private. Απλά το ανέφερα για να απαντήσω στην προηγούμενη ερώτηση. Εμείς χρησιμοποιούμε τις συναρτησεις που αναφέρει και στο pdf: isInsideBoard, getTile Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: K on November 19, 2015, 20:39:42 pm Δηλαδή όταν λέει:
Tile getTile(int x, int y): Επιστρέφει το αντικείμενο τύπου Tile που βρίσκεται στην θέση [x,y]. μπορείς να μου πείς τον κώδικα από αυτή τη μέθοδο για να καταλάβω? Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Insignia on November 19, 2015, 20:48:54 pm Ο κώδικας είναι έτσι
Code: public Tile getTile(int x, int y) { όπου get(x) και get(y) είναι μεθοδοι που καθοριζονται απο τη java για τα ArrayList γιατι το fullboard έχει οριστεί σαν ArrayList<ArrayList<Tile>> fullBoard; στην αρχή της κλάσης Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: K on November 22, 2015, 17:53:10 pm Ναι, ρώτησα τον Χρυσόπουλο. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: tpt on November 23, 2015, 01:27:58 am Παραδείγματος χάριν, έστω ότι το στοιχείο 14 της Εικόνας 4 βρίσκεται σε μόνη σειρά. Σε αυτή την περίπτωση οι γείτονές του θα είναι αποθηκεμένοι στον πίνακα ως εξής: δεν καταλαβαινω τον τροπο που θα αποθηκευω στον πινακα μ ...τι μονη ή ζυγη σειρα εννοει ?
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Spiro on November 24, 2015, 01:56:31 am Παραδείγματος χάριν, έστω ότι το στοιχείο 14 της Εικόνας 4 βρίσκεται σε μόνη σειρά. Σε αυτή την περίπτωση οι γείτονές του θα είναι αποθηκεμένοι στον πίνακα ως εξής: δεν καταλαβαινω τον τροπο που θα αποθηκευω στον πινακα μ ...τι μονη ή ζυγη σειρα εννοει ? Αυτό προκύπτει σαν πρόβλημα γιατί στο hexagonal grid δεν μπορείς να ορίσεις τον άξονα y με την ίδια ευκολία που ορίζεις τον x, κι άρα είναι δύσκολο να μεταφέρεις τα στοιχεία απευθείας σε έναν 2-d πίνακα. Χρειάζεσαι κάποια επιπλέον πληροφορία. Εννοώ το εξής: Αν πες πας στο (0,0), στην εικόνα 2 του pdf που σου δίνεται, μπορείς να ορίσεις εύκολα τον άξονα x λέγοντας ότι είναι ξέρω'γω (0,0) (1,0) (2,0) κοκ. Δες όμως τι γίνεται με τον y άξονα. Ξεκινάς από το (0,0) και μετά βλέπεις ότι η ακολουθία (0,1) (0,2) (0,3) κοκ, κάνει κάτι σαν ζιγκ ζαγκ στο grid. Δηλαδή, κάθε φορά που κατεβαίνεις, θα πρέπει να ξέρεις αν η επόμενη κίνηση θα'ναι στα δεξιά ή στα αριστερά. Όμως, στον 2-d πίνακα που θέλεις να αποθηκεύσεις τα tiles του grid, οι διαστάσεις είναι υποχρεωτικά κατακόρυφες. Ε και σου λέει τώρα αυτός πως ξεπερνάω αυτό το πρόβλημα κοιτώντας αν το random tile που θα παίρνεις κάθε φορά ανήκει σε άρτια ή περιττή γραμμή, γιατί ανάλογα με το αν βρίσκεται σε άρτια ή σε περιττή, θα αυξάνεται ή θα μειώνεται ή θα μείνει σταθερή κάποια από τις δύο συντεταγμένες των γειτόνων. Στο επιπλέον link που σου δίνει για τα hexagonal grids, αν πας στο Neighbors και συγκεκριμένα στο Offset Coordinates, θα δεις τι παίζει με τους γείτονες του tile, ανάλογα με το αν είναι άρτια ή περιττή η γραμμή του (+1, -1, ή 0 αν δεν αλλάζει). Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: tpt on November 24, 2015, 13:17:00 pm Παραδείγματος χάριν, έστω ότι το στοιχείο 14 της Εικόνας 4 βρίσκεται σε μόνη σειρά. Σε αυτή την περίπτωση οι γείτονές του θα είναι αποθηκεμένοι στον πίνακα ως εξής: δεν καταλαβαινω τον τροπο που θα αποθηκευω στον πινακα μ ...τι μονη ή ζυγη σειρα εννοει ? Αυτό προκύπτει σαν πρόβλημα γιατί στο hexagonal grid δεν μπορείς να ορίσεις τον άξονα y με την ίδια ευκολία που ορίζεις τον x, κι άρα είναι δύσκολο να μεταφέρεις τα στοιχεία απευθείας σε έναν 2-d πίνακα. Χρειάζεσαι κάποια επιπλέον πληροφορία. Εννοώ το εξής: Αν πες πας στο (0,0), στην εικόνα 2 του pdf που σου δίνεται, μπορείς να ορίσεις εύκολα τον άξονα x λέγοντας ότι είναι ξέρω'γω (0,0) (1,0) (2,0) κοκ. Δες όμως τι γίνεται με τον y άξονα. Ξεκινάς από το (0,0) και μετά βλέπεις ότι η ακολουθία (0,1) (0,2) (0,3) κοκ, κάνει κάτι σαν ζιγκ ζαγκ στο grid. Δηλαδή, κάθε φορά που κατεβαίνεις, θα πρέπει να ξέρεις αν η επόμενη κίνηση θα'ναι στα δεξιά ή στα αριστερά. Όμως, στον 2-d πίνακα που θέλεις να αποθηκεύσεις τα tiles του grid, οι διαστάσεις είναι υποχρεωτικά κατακόρυφες. Ε και σου λέει τώρα αυτός πως ξεπερνάω αυτό το πρόβλημα κοιτώντας αν το random tile που θα παίρνεις κάθε φορά ανήκει σε άρτια ή περιττή γραμμή, γιατί ανάλογα με το αν βρίσκεται σε άρτια ή σε περιττή, θα αυξάνεται ή θα μειώνεται ή θα μείνει σταθερή κάποια από τις δύο συντεταγμένες των γειτόνων. Στο επιπλέον link που σου δίνει για τα hexagonal grids, αν πας στο Neighbors και συγκεκριμένα στο Offset Coordinates, θα δεις τι παίζει με τους γείτονες του tile, ανάλογα με το αν είναι άρτια ή περιττή η γραμμή του (+1, -1, ή 0 αν δεν αλλάζει). Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Kthulu on November 24, 2015, 18:06:46 pm Χρειάζεται να συμπληρώσουμε ΜΟΝΟ την κλάση RandomPlayer?
Στις άλλες απλώς δεν γράφουμε τίποτα; Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Apostolof on November 24, 2015, 18:17:33 pm Χρειάζεται να συμπληρώσουμε ΜΟΝΟ την κλάση RandomPlayer? Στις άλλες απλώς δεν γράφουμε τίποτα; Ναι, όλα όσα πρέπει να κάνεις είναι στη κλάση RandomPlayer also: οι Maiden στην υπογραφή σου έχουν κατέβει... :P Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Kthulu on November 24, 2015, 18:26:05 pm Το αλλαξα :)
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: tpt on November 26, 2015, 13:18:12 pm Σε πρίπτωση που κάποιο κελί δεν έχει όλους τους γείτονες γιατί είναι στην άκρη του ταμπλό, ορίστε ως συντεταγμένες τις [-1,-1].
εννοει μονο στον γειτονα που ειναι εκτος ταμπλο ετσι δεν ειναι? Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Vlassis on November 26, 2015, 15:29:53 pm Σε πρίπτωση που κάποιο κελί δεν έχει όλους τους γείτονες γιατί είναι στην άκρη του ταμπλό, ορίστε ως συντεταγμένες τις [-1,-1]. Ναι ;)εννοει μονο στον γειτονα που ειναι εκτος ταμπλο ετσι δεν ειναι? Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: raf on November 26, 2015, 18:50:38 pm Παιδιά σχετικά με την τελευταία συνάρτηση ...κατάλαβε κανείς πως γίνεται?
Το σκεπτικό τουλάχιστον... Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Apostolof on November 26, 2015, 18:59:44 pm Παιδιά σχετικά με την τελευταία συνάρτηση ...κατάλαβε κανείς πως γίνεται? Το σκεπτικό τουλάχιστον... Για την static int[][] getNeighborsCoordinates(Board board,int x, int y) λες; Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: ultraviolet on November 29, 2015, 01:56:41 am Στην τελευταια συναρτηση static int[][] getNeighborsCoordinates(Board board,int x, int y) οι μεταβλητες int x καi int y θα ειναι αυτες που προεκυψαν απο τη συναρτηση int[] getNextMove (Board board) ετσι?? Αν ναι τότε μήπως θα μπορούσε κανεις να πει πως κάνουμε προσπέλαση στον πίνακα nextMove που επιστρέφει η int[] getNextMove (Board board)? Μπορει να ρωταω βλακεια, ομως εχω κολλησει :-\
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Insignia on November 29, 2015, 05:45:27 am Δεν είναι δουλεία μας να φτιάξουμε εμείς τον τρόπο που αλληλεπιδρούν οι συναρτήσεις μεταξύ τους. Αυτό που πρέπει να κάνουμε είναι απλή υλοποίηση των μεθόδων. Στην περίπτωση της getNeighborsCoordinates απλά δεχόμαστε τα x και y σαν συντεταγμένες που δέχεται σαν όρισμα η μέθοδος και δεν μας ενδιαφέρει από που προήρθαν. Στη μέθοδο απλά φτιάχνεις ένα πίνακα και του βάζεις οτι ο ανατολικος γείτονας θα είναι x+κάτι και y+κάτι, ο νότιοανατολικός γείτονας x+κάτι και y+κάτι κ.ο.κ. Πρόσεξε γιατι έχει σημασια αν θα βρίσκεσαι σε άρτια ή περιττή γραμμή, θα χρειαστεί να βάλεις συνθήκες ελέγχου.
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: ultraviolet on November 29, 2015, 14:36:21 pm Δεν είναι δουλεία μας να φτιάξουμε εμείς τον τρόπο που αλληλεπιδρούν οι συναρτήσεις μεταξύ τους. Αυτό που πρέπει να κάνουμε είναι απλή υλοποίηση των μεθόδων. Στην περίπτωση της getNeighborsCoordinates απλά δεχόμαστε τα x και y σαν συντεταγμένες που δέχεται σαν όρισμα η μέθοδος και δεν μας ενδιαφέρει από που προήρθαν. Στη μέθοδο απλά φτιάχνεις ένα πίνακα και του βάζεις οτι ο ανατολικος γείτονας θα είναι x+κάτι και y+κάτι, ο νότιοανατολικός γείτονας x+κάτι και y+κάτι κ.ο.κ. Πρόσεξε γιατι έχει σημασια αν θα βρίσκεσαι σε άρτια ή περιττή γραμμή, θα χρειαστεί να βάλεις συνθήκες ελέγχου. Ευχαριστώ πολυ :) Η απάντηση σου με βοηθησε να ξεκολλήσω ;)Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: konstantina08 on November 30, 2015, 13:28:44 pm Παιδια πρεπει να ανεβασουμε το αρχειο RandomPlayer.class με τις αλλαγες που εχουμε κανει μεσα στο zip???
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: rosamaria on November 30, 2015, 14:18:16 pm Ανεβάζεις όλο το project όπως το έχεις μέσα στο workspace σου και μαζί με την αναφορά (η οποία είναι σε pdf απαραιτητα) τα κάνεις ένα zip. Ελπιζω να βοηθησα.
Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Pest on November 30, 2015, 19:13:53 pm Ανεβάζεις όλο το project όπως το έχεις μέσα στο workspace σου και μαζί με την αναφορά (η οποία είναι σε pdf απαραιτητα) τα κάνεις ένα zip. Ελπιζω να βοηθησα. Στην αναφορα τι πρεπει να γραψουμε;Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Apostolof on November 30, 2015, 19:23:24 pm Ανεβάζεις όλο το project όπως το έχεις μέσα στο workspace σου και μαζί με την αναφορά (η οποία είναι σε pdf απαραιτητα) τα κάνεις ένα zip. Ελπιζω να βοηθησα. Στην αναφορα τι πρεπει να γραψουμε;Quote Ηλεκτρονική αναφορά που θα περιέχει: εξώφυλλο, περιγραφή του προβλήματος, του αλγορίθμου και των διαδικασιών που υλοποιήσατε και τυχόν ανάλυσή τους. Σε καμία περίπτωση να μην αντιγράφεται ολόκληρος ο κώδικας μέσα στην αναφορά (εννοείται ότι εξαιρούνται τμήματα κώδικα τα οποία έχουν ως στόχο τη διευκρίνιση του αλγορίθμου). Προσοχή: Ορθογραφικά και συντακτικά λάθη πληρώνονται. Μια περιγραφή όσων έκανες. Στην ουσία γράφεις περίπου ότι και στα σχόλια απλά με λίγο μεγαλύτερη ανάλυση. Τα περισσότερα θα τα γράψεις μάλλον στην getNeighborsCoordinates. Title: Re: [Δομές Δεδομένων] Εργασία Α 2015/2016 Προθεσμία 30/11/15 Post by: Pest on November 30, 2015, 19:29:14 pm Ανεβάζεις όλο το project όπως το έχεις μέσα στο workspace σου και μαζί με την αναφορά (η οποία είναι σε pdf απαραιτητα) τα κάνεις ένα zip. Ελπιζω να βοηθησα. Στην αναφορα τι πρεπει να γραψουμε;Quote Ηλεκτρονική αναφορά που θα περιέχει: εξώφυλλο, περιγραφή του προβλήματος, του αλγορίθμου και των διαδικασιών που υλοποιήσατε και τυχόν ανάλυσή τους. Σε καμία περίπτωση να μην αντιγράφεται ολόκληρος ο κώδικας μέσα στην αναφορά (εννοείται ότι εξαιρούνται τμήματα κώδικα τα οποία έχουν ως στόχο τη διευκρίνιση του αλγορίθμου). Προσοχή: Ορθογραφικά και συντακτικά λάθη πληρώνονται. Μια περιγραφή όσων έκανες. Στην ουσία γράφεις περίπου ότι και στα σχόλια απλά με λίγο μεγαλύτερη ανάλυση. Τα περισσότερα θα τα γράψεις μάλλον στην getNeighborsCoordinates. |