• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
June 17, 2025, 23:28:12 pm

Login with username, password and session length
Links
  Thmmy.gr portal
   Forum
   Downloads
   Ενεργ. Λογαριασμού
   Επικοινωνία
  
  Χρήσιμα links
   Σελίδα τμήματος
   Βιβλιοθήκη Τμήματος
   Elearning
   Φοιτητικά fora
   Πρόγραμμα Λέσχης
   Πρακτική Άσκηση
   Ηλεκτρονική Εξυπηρέτηση Φοιτητών
   Διανομή Συγγραμμάτων
   Ψηφιακό Καταθετήριο Διπλωματικών
   Πληροφορίες Καθηγητών
   Instagram @thmmy.gr
   mTHMMY
  
  Φοιτητικές Ομάδες
   ACM
   Aristurtle
   ART
   ASAT
   BEAM
   BEST Thessaloniki
   EESTEC LC Thessaloniki
   EΜΒ Auth
   IAESTE Thessaloniki
   IEEE φοιτητικό παράρτημα ΑΠΘ
   SpaceDot
   VROOM
   Panther
  
Πίνακας Ελέγχου
Welcome, Guest. Please login or register.
June 17, 2025, 23:28:12 pm

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Ισραήλ - Ιράν: Πόλεμος στ...
by Katarameno
[Today at 21:32:50]

[Ψηφιακά Ολοκληρωμένα Κυκ...
by tzortzis
[Today at 21:25:42]

[Εφ.Θερμοδυναμική] Γενικέ...
by PAPARI69
[Today at 20:59:13]

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by chris_p30
[Today at 19:46:54]

[Γραφική] Λυμένα θέματα
by okanpala
[Today at 18:56:22]

Τι ακούτε αυτήν τη στιγμή...
by Katarameno
[Today at 14:25:00]

Αντικατάστασης πυκνωτή σε...
by george14
[Today at 13:58:20]

Πότε θα βγει το μάθημα; -...
by tzortzis
[Today at 13:19:53]

Αποτελέσματα Εξεταστικής ...
by george14
[Today at 12:08:25]

[ΨEE] Γενικές απορίες και...
by Juror8
[Today at 12:06:57]

[Οργάνωση Υπολογιστών] Γε...
by RAFI
[June 16, 2025, 22:46:54 pm]

[Σ.Π.Η.Ε.] Γενικές απορίε...
by Nikos_313
[June 16, 2025, 19:49:00 pm]

[ΘΤΠΑ] Γενικές απορίες κα...
by Nikos_313
[June 16, 2025, 16:56:56 pm]

[Αρχές Οικονομίας] Να επι...
by _Trob
[June 16, 2025, 13:28:21 pm]

[Σ.Α.Π.Γ.] Εργασία 2025
by Nikos_313
[June 16, 2025, 12:13:45 pm]

[Διανεμημένη Παραγωγή] Γε...
by Διάλεξις
[June 16, 2025, 01:56:37 am]

[Σ.Π.Η.Ε.] Παλιά θέματα -...
by nmpampal
[June 15, 2025, 06:43:15 am]

Το thmmy.gr στο instagram...
by Mr Watson
[June 15, 2025, 00:50:23 am]

[Λογισμός ΙΙ] Απορίες σε...
by el mariachi
[June 14, 2025, 20:47:07 pm]

ΠΡΟΣΟΧΗ στο ανέβασμα θεμά...
by tzortzis
[June 14, 2025, 16:54:08 pm]
Στατιστικά
Members
Total Members: 9961
Latest: Poli
Stats
Total Posts: 1426698
Total Topics: 31710
Online Today: 242
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 66
Guests: 155
Total: 221
valentini
soktas
nchatzo
chaniotism
Grigorisioan05
tzesi
tzortzis
cheinopor
fkaravi
ThanosV
Η ΤΡΑΠΟΥΛΑ ΤΟΥ ΠΑΠΠΟΥ ΜΟΥ
Kyritsisss
gpr000
tasos_ntv
palladas
theofr
dimopoul
andrpats
victoria
miltan8
jimalexoud
dimitrisblioumis
Born_Confused
Juror8
dr.giorgos
thaliatsk
marwt
spoun
stefpapa21
pavlaras
ExecuteExe
elizabeth
eirinikompselidou
Ariadni
elias_farhood
stavr0s16
natavhoo
andyy
iliaskou
elischat
Aglosdoum
bougatsa
apob
Tsomp
Mari0s
msandr
Billyskotsikas
micelethe
soule
gpapmtb
dtkyriak
dimant
andreas2000
vasillikiiiiii
Nikos_313
Giopan
MasteRoot
Crainer
Pakapis5
ecevz
thunder
pantoulis
mprizakias
AA RE LEWN
Εμφάνιση

Νέα για πρωτοετείς
Είσαι πρωτοετής;... Καλώς ήρθες! Μπορείς να βρεις πληροφορίες εδώ. Βοήθεια για τους καινούργιους μέσω χάρτη.
Κατεβάστε εδώ το Android Application για εύκολη πρόσβαση στο forum.
Ανεβάζετε τα θέματα των εξετάσεων στον τομέα Downloads με προσοχή στα ονόματα των αρχείων!

Νέα!
  Όταν ανεβάζουμε φωτογραφίες στις Ανακοινώσεις και Έκτακτα νέα, βάζουμε τη μεγαλύτερη πλευρά 400 (width=400 ή height=400 ). π.χ. [img height=400 (κλείνει η αγκύλη) 
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 3ο Εξάμηνο > Δομές Δεδομένων (Moderators: chatzikys, Tasos Bot, tzortzis) > [Δομές Δεδομένων] Εργασία Β 2014/2015
0 Members and 1 Guest are viewing this topic.
Pages: [1] Go Down Print
Author Topic: [Δομές Δεδομένων] Εργασία Β 2014/2015  (Read 4340 times)
pap-x
Θαμώνας
****
Gender: Male
Posts: 328



View Profile
[Δομές Δεδομένων] Εργασία Β 2014/2015
« on: November 25, 2014, 22:44:17 pm »

Συζήτηση και σχολιασμός

http://alexander.ee.auth.gr:8083/eTHMMY/archive/46/downloadFile/5853/ds-project-2014-15-B.pdf

Για τον έλεγχο αν συμπληρώνουμε 5άδα με μία κίνηση υπάρχει κάποιος έξυπνος τρόπος ή μόνο με άπειρα if?
« Last Edit: November 25, 2014, 22:45:29 pm by pentium4 » Logged

"I still don’t have all the answers, but I’m beginning to ask the right questions..."
pap-x
Θαμώνας
****
Gender: Male
Posts: 328



View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #1 on: December 01, 2014, 12:58:01 pm »

κανείς;
Logged

"I still don’t have all the answers, but I’m beginning to ask the right questions..."
Κηπουρίδης
Καταξιωμένος/Καταξιωμένη
***
Posts: 159


View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #2 on: December 01, 2014, 13:41:31 pm »

Υπαρχει αλλα ειναι αρκετα περιπλοκος και δεν αξιζει τον κοπο.

Σκεψου οτι ψαχνουμε πενταδα οριζοντια. Προφανως θα συμμετεχει το καινουριο πουλι που βαλαμε ( ας πουμε οτι ειναι στη θεση x0, y0 ), γιατι αλλιως το παιχνιδι θα ειχε τελειωσει νωριτερα.
Αρκει να πας οσο δεξιοτερα μπορεις και μετα οσο αριστεροτερα μπορεις.
Code:
for ( right = x0; right<NUMBER_OF_COLUMNS && Diko_Mou(right,y0); ++right ) {
  //adeio body
}
right--;

Ουσιαστικα η for βρισκει το πρωτο πλακακι προς τα δεξια που δεν ειναι δικος μας, και μετα γυρναμε 1 προς τα πισω για να παρουμε το τελευταιο που ειναι δικο μας.
Παρομοια

Code:
for ( left = x0; left>=0 && Diko_Mou(left,y0); --left ) {
  //adeio body
}
left++;

Τωρα πες οτι βρηκαμε οτι το left ειναι στο x=1 και το right στο x = 6. Αρα εχω εξαδα και νικησα. Γενικα ο ελεγχος ειναι
Code:
if ( right - left + 1 >= 5 ) {
   //Niki ole
}

Παρομοια και για τις αλλες 3 κατευθυνσεις ( 2 διαγωνιες και μια κατακορυφη ).

Η βελτιωση που μπορεις να κανεις για να γλιτωσεις τον πολυ κωδικα ειναι να κανεις δυο πινακες, εναν dx[] ( δηλαδή  direction_x[] ) κι εναν dy[] ( δηλαδή direction_y[] )
οπου
dx[] = {0,1,1,1,0,-1,-1,-1}
dy[] = {1,1,0,-1,-1-,1,0,1}

Αν παρεις μια μια τις εγγραφες ( δηλαδη dx[1] και dy[1], ή dx[2] και dy[2] ) θα δεις οτι οριζουν μια κινηση ( +1 στα x και +1 στα y, δηλαδή διαγώνια πάνω δεξιά, ή +1 στα x και 0 στα y, δηλαδη οριζοντια δεξια ). Ουσιαστικα τα εχω γραψει με τη φορα των δεικτων του ρολογιου.

Τωρα μπορεις να εχεις μια πιο γενικη for :
Code:
for ( horizontal=y0,vertical=x0; horizontal>=0 && horizontal<NUMBER_OF_ROWS && vertical>=0 && vertical<NUMBER_OF_COLUMNS && Diko_mou(vertical,horizontal); horizontal += dy[i], vertical += dx[i] ) {
  //Keno body
}
horizontal -= dy[i];
vertical -= dx[i];

οπου i ειναι ενας αριθμος απ το 0 ως το 7, κι αντιπροσωπευει μια απ τις 8 δυνατες κατευθυνσεις ( που εχουν καταχωρηθει στους πινακες dx - dy ).
Αρα ο,τι εχω γραψει πια πανω πρεπει να κλεισει σε μια for ( i = 0...7 )

Ο τροπος αυτος ειναι βεβαια αρκετα πιο περιπλοκος, οποτε θα μπορουσες να πας με 4 φορες το πρωτο πραμα που ειπαμε.
« Last Edit: December 01, 2014, 13:44:45 pm by Κηπουρίδης » Logged
pap-x
Θαμώνας
****
Gender: Male
Posts: 328



View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #3 on: December 01, 2014, 20:54:37 pm »

Νάσαι καλά φίλε μου! Αρκετά έξυπνο  Wink
Logged

"I still don’t have all the answers, but I’m beginning to ask the right questions..."
airguitar
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 1395


View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #4 on: December 03, 2014, 19:47:10 pm »

Παιδια καμια βοηθεια για το πως στην  int evaluate() θα ελεγχω αν η νεα θεση ειναι διπλα σε σχηματισμενη 4δα ?
Επισης την συναρτηση boolean createsQuintuple(int x,int y,Board board) πρεπει εγω να την υλοποιησω ή υπαρχει ετοιμη ?

Και κατι πιο γενικο. Η συναρτηση evaluate θα εχει επαναληψη (for) μεσα ή θα καλειται απο την getNextMove οσες φορες χρειαζεται ?
Logged
Napoleon
Θαμώνας
****
Gender: Male
Posts: 369



View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #5 on: December 03, 2014, 21:47:04 pm »

Το πως το εξηγεί το παιδι από πανω.όχι δεν είναι έτοιμη εσύ(αν θες) την φτιαχνεις. Η evaluate δεν θα έχει for,τρέχει για το κάθε tile ξεχωριστά (που σημαίνει οτι η getnextmove θα έχει for
Logged
απλυτος
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 1317



View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #6 on: December 09, 2014, 17:02:03 pm »

μπορεί να εξηγήσει κάποιος τι γίνεται με το playerid του tile και το id του random player;

το id παίρνει 1 αν είναι ο ασπρος παικτης
και                2                 μαυρος παικτης

πως καταλαβαίνω αν ο δικός μου είναι ο ασπρος η ο μαυρος για να το συγκρινω μετα με το playerid του tile;;
Logged

http://arage-e-a-a-k.blogspot.gr/
Napoleon
Θαμώνας
****
Gender: Male
Posts: 369



View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #7 on: December 09, 2014, 18:15:39 pm »

Για το id του δικού σου παίχτη εχεις την μεταβλητή id και για το id του tile εχεις την συναρτηση getid δηλαδή σύγκρινε με την μεταβλητή και όχι με αριθμό
Logged
απλυτος
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 1317



View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #8 on: December 09, 2014, 18:35:56 pm »

Quote from: Napoleon on December 09, 2014, 18:15:39 pm
Για το id του δικού σου παίχτη εχεις την μεταβλητή id και για το id του tile εχεις την συναρτηση getid δηλαδή σύγκρινε με την μεταβλητή και όχι με αριθμό

καταρχάς ο δικός μου παίκτης μπορεί να είναι είτε ο μαύρος είτε ο λευκός, που θα αποθηκεύει στην μεταβλητη id του παικτη μου την τιμη 2 ή 1 αντιστοιχα.

εστω οτι εχει η id του παικτη μου την τιμη 2. (που υποθετω οτι σημαινει οτι εχω τα μαυρα πούλια)

θελω να δω αν το tile με συντεταγμενες x0, y0 ειναι δικο μου ή του αντιπαλου ή άδειο. Τι κωδικά ακριβώς πρέπει να γράψω;

υγ. το ρωτάω έτσι για να μη χαθούμε στις περιγραφές της καθε μεταβλητης
« Last Edit: December 09, 2014, 19:14:01 pm by απλυτος » Logged

http://arage-e-a-a-k.blogspot.gr/
Napoleon
Θαμώνας
****
Gender: Male
Posts: 369



View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #9 on: December 09, 2014, 22:27:59 pm »

Δικο σου: board.getTile(x0,y0).getColor()==id
Άδειο: board.getTile(x0,y0).getColor==0
Αντιπάλου:μια λύση είναι να ορίσεις την μεταβλητή idantipalou=(id=1?2:1) που σημαίνει αν το id σου ειναι 1 του αντιπάλου θα είναι 2,αλλιώς του αντιπάλου θα είναι 1 και μετά board.getTile(x0,y0).getColor()==idantipalou
Logged
anaslout
Νεούλης/Νεούλα
*
Posts: 36


View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #10 on: December 10, 2014, 21:17:41 pm »

παιδια μια ερωτηση,για το δευτερο κομματι της εργασιας δημιουργω καινουριο project που εισαγω τα partb μονο η δουλευω στο προυπαρχον προτζεκτ οπου εχω το parta και απλα εισαγω και το partb;
Logged
Μεταλλαγμένη Πάπια
Θαμώνας
****
Gender: Male
Posts: 450



View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #11 on: December 10, 2014, 23:27:32 pm »

Quote from: anaslout on December 10, 2014, 21:17:41 pm
παιδια μια ερωτηση,για το δευτερο κομματι της εργασιας δημιουργω καινουριο project που εισαγω τα partb μονο η δουλευω στο προυπαρχον προτζεκτ οπου εχω το parta και απλα εισαγω και το partb;

Σβησε το παρτ Α και κανε ιμπορτ το παρτ Β.
Logged

Quote
Αυτό που λες δεν ισχύει γιατί οι περισσότεροι άνθρωποι αντιλαμβάνονται 3 διαστάσεις αλλά ο κ. Κεχαγιάς όπως μας έχει πει μπορεί και αντιλαμβάνεται τον τετραδιάστατο κύβο.
-Apostolof
anaslout
Νεούλης/Νεούλα
*
Posts: 36


View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #12 on: December 11, 2014, 01:22:18 am »

σε ευχαριστω
Logged
ori0ngel
Θαμώνας
****
Gender: Male
Posts: 339



View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #13 on: December 11, 2014, 02:35:49 am »

πως παιρνουμε τις τιμες που ειναι στην arraylist και τις βαζουμε στον τελικο πινακα που μας ζηταει;

nextMove[1]=list.get(0);
nextMove[2]=list.get(1);

εχω πχ αυτες τις εντολες και μου βγαζει error οτι δεν μπορουμε να κανουμε convert απο int[] σε int.
Ο πινακας nextMove ειναι δηλωμενος ως εξης:
int[] nextMove=new int[2];
Logged
Napoleon
Θαμώνας
****
Gender: Male
Posts: 369



View Profile
Re: [Δομές Δεδομένων] Εργασία Β 2014/2015
« Reply #14 on: December 11, 2014, 16:06:42 pm »

η arraylist επιστρέφει πίνακα.Δηλαδή αν θες πχ τον πίνακα στη θέση i να επιστρέψεις σαν τελική θέση λες
Code:
int[] flagArray=list.get(i);
nextMove[0]=flagArray[0];
nextMove[1]=flagArray[0];
Logged
Pages: [1] Go Up Print
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Scribbles2 | TinyPortal © Bloc | XHTML | CSS
Loading...