Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα Insomniersss!! Είμαι φοιτητής Ηλεκτρολόγος Μηχανικός και έχω εξαμηνιαία εργασία για το μάθημα "Προγραμματιστικές Τεχνικές" η οποία είναι αρκετά ζόρικη ( σε C++ ). Όποιος έχει έστω και λίγο χρόνο και διάθεση να με καθοδηγήσει , τον ευχαριστώ θερμά (Είτε σχόλια είτε pms ) . Με εκτίμηση ,

Νώντας

 

http://mycourses.ntua.gr/courses/ECE1086/projects/ergasia_1.pdf

  • Απαντ. 34
  • Δημ.
  • Τελ. απάντηση

Συχνή συμμετοχή στο θέμα

Δημοφιλείς Ημέρες

  • Moderators
Δημοσ.

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

Δημοσ.

φυσικά και προσπαθώ , εξάλλου έτσι θα μάθω ! Απλά όποιος εκφέρει μια άποψη δική του θα ήταν ό,τι καλύτερο! :)

Δημοσ.

φυσικά και προσπαθώ , εξάλλου έτσι θα μάθω ! Απλά όποιος εκφέρει μια άποψη δική του θα ήταν ό,τι καλύτερο! :)

Ωραία, αφού προσπαθείς, σε ποιο κομμάτι ακριβώς θέλεις βοήθεια; Τι έχεις προσπαθήσει μέχρι τώρα και δεν λειτουργεί ή πού κολλάς;

Δημοσ.

@ageirini

Τι εννοεί εδώ ο καθηγητής;

"Η υποβολή του σχετικού προγράμματος έμμεσα δηλώνει ότι είσtε οι
μοναδικοί συγγραφείς της λύσης της άσκησης. Εάν το πρόγραμμα ή μέρος του έχει παρθεί από άλλη
πηγή θα πρέπει να αναφέρεται η πηγή και ο συγγραφέας του."

 

Μπορείς να βρεις όποια λύση αρκεί να αναφέρεις πού την βρήκες;

Δημοσ.

@TS, καταρχήν συγχαρητήρια στον ευφάνταστο καθηγητή/τριά σου!

 

Κοίτα λίγο το διάγραμμα, ξεκίνα να γράφεις τις κλάσεις με τα functions τους, και συνεδεσε το inheritance. Μετά εδώ είμαστε....

  • Like 1
Δημοσ.

Από την άσκηση παρατηρήσεις:

1. Το is_attached_tο στο Character είναι πλεονασμός. Η λίστα έχει Person και το Person δείχνει το Character, το οποίο μπορεί να αλλάζει..Η αλλαγή όμως γίνεται με διατήρηση των HitPoints, άρα η αλλαγή γίνεται με την κράτηση του δείκτη προς το Charcter, δημιουργία νέου με το τύπο που θέλουμε και με hitpoints αυτά του "παλιού", αποδέσμευση του παλιού.  Επειδή θέλει το is_attached_tο, σημαίνει ότι πρέπει να αποδεσμευτεί σε αυτο που διαγράφουμε και να δεσμευτεί ξανά στο νέο...το Person...που το δείχνει. Δεν βλέπω όμως κάποια χρησιμότητα αυτού του δείκτη

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

Δημοσ.

Και πάλί καλά να λές που έχεις και το μοντέλο και τόσο αναλυτική περιγραφή , εγώ στην Αγγλία που σπούδασα και έμεινα πρώτη χρονιά στην c++ είχαμε ένα μάθημα Hello World και μετά την εργασία που ήταν υλοποίηση ενός media player :S .

 

Τες πα, έχεις αρκετή πληροφορία στην εργασία , πάρε το μοντελακι που έχεις και υλοποίησε το , και μετά έλα με συγκεκριμένες ερωτήσεις και ευχαρίστως να βοηθήσουμε όλοι (εγώ javakias είμαι αλλά μάλλον τα προβληματά σου θα είναι αλγοριθμηκά ) :)

  • Like 1
Δημοσ.

Εγω να ρωτησω κατι σαν καλος ηλιθιος που ειμαι ? Αυτο μοιαζει σαν παιχνιδακι στην unity, παρα σαν προγραμμα. Που θελει αυτος να το κανετε ? Μονο σαν κωδικα προφανως. Δηλαδη "read-only" ε ?

 

Κοιταξε να σου πω.  Κακα τα ψεμματα. Δεν ξερω τι σχεση εχει ο ηλεκτρολογος - μηχανικος με προγραμματισμο, παντως εδω θελεις καλες γνωσεις της C++. Πρεπει να το παρεις κομματι κομματι, και να το φτιαξεις σιγα σιγα. Δηλαδη μην το βλεπεις ολο αυτο, προσπαθησεις να το "αποθηκευσεις" στο μυαλο σου, για να το βγαλεις με την μια. Ειναι αδυνατον. Παρε καποια στοιχεια που σου λεει για τις κλασσεις για πραδειγμα. Αρχισε να τις φτιαχνεις, και στην πορεια αναλογα με αυτα που σου λεει αυτος, μετετρεψε τις. Δες μηπως αυτο σε βοηθησει. Το ολο θεμα ειναι να εχεις κατσει και να εχεις μελετησει C++. Τοσο θεωρητικα, οσο και πρακτικα σε ενα καλο επιπεδο. Και φυσικα οπου βρεις "bug" που δεν μπορεις να λυσεις στον κωδικα, εδω ειμαστε για να βοηθησουμε για να προχωρησεις και ποιο γρηγορα :)

Δημοσ.

Εγω να ρωτησω κατι σαν καλος ηλιθιος που ειμαι ? Αυτο μοιαζει σαν παιχνιδακι στην unity, παρα σαν προγραμμα. Που θελει αυτος να το κανετε ? Μονο σαν κωδικα προφανως. Δηλαδη "read-only" ε ?

 

Κοιταξε να σου πω.  Κακα τα ψεμματα. Δεν ξερω τι σχεση εχει ο ηλεκτρολογος - μηχανικος με προγραμματισμο, παντως εδω θελεις καλες γνωσεις της C++. Πρεπει να το παρεις κομματι κομματι, και να το φτιαξεις σιγα σιγα. Δηλαδη μην το βλεπεις ολο αυτο, προσπαθησεις να το "αποθηκευσεις" στο μυαλο σου, για να το βγαλεις με την μια. Ειναι αδυνατον. Παρε καποια στοιχεια που σου λεει για τις κλασσεις για πραδειγμα. Αρχισε να τις φτιαχνεις, και στην πορεια αναλογα με αυτα που σου λεει αυτος, μετετρεψε τις. Δες μηπως αυτο σε βοηθησει. Το ολο θεμα ειναι να εχεις κατσει και να εχεις μελετησει C++. Τοσο θεωρητικα, οσο και πρακτικα σε ενα καλο επιπεδο. Και φυσικα οπου βρεις "bug" που δεν μπορεις να λυσεις στον κωδικα, εδω ειμαστε για να βοηθησουμε για να προχωρησεις και ποιο γρηγορα :)

 

Ρε συ St0rm... έτσι από περιέργεια.

 

Εσύ δεν ήσουν τις προάλλες που έλεγες ότι δεν έχεις βγάλει το σχολείο και πως θέλεις να ασχοληθείς με προγραμματισμό;

 

Εάν ναι, τότε σαφώς και ακόμα δεν ξέρεις τα της πληροφορικής. Εφόσον δεν τα ξέρεις, πώς ξέρεις τι και τι δεν χρειάζεται η άσκηση που έχει αναρτήσει ο ΟΡ;

  • Like 1
Δημοσ.

Δεν το διάβασα όλο αλλά, φαίνεται πραγματικά σαν tutorial η εκφώνηση. Μόνο κώδικα δεν δίνει, αλλιώς, περιγράφει ακριβώς τι θα χρειαστείς, τα attributes κάθε κλάσης, τα πάντα. Μακάρι να είχα και εγώ τέτοια specifications για τις εργασίες μου. Ο καθηγητής όχι μόνο ξέρει τι θέλει, αλλά σου λέει πως θα φτάσεις ακριβώς σε αυτό που έχει αυτός στο κεφάλι του. Ζηλεύω. :P

  • Like 1
Δημοσ.

Ρε συ St0rm... έτσι από περιέργεια.

 

Εσύ δεν ήσουν τις προάλλες που έλεγες ότι δεν έχεις βγάλει το σχολείο και πως θέλεις να ασχοληθείς με προγραμματισμό;

 

Εάν ναι, τότε σαφώς και ακόμα δεν ξέρεις τα της πληροφορικής. Εφόσον δεν τα ξέρεις, πώς ξέρεις τι και τι δεν χρειάζεται η άσκηση που έχει αναρτήσει ο ΟΡ;

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

Δημοσ.

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

Δεν είναι αυτό, είναι συνδυασμός γνώσεων και εμπειρίας. Υπάρχουν κάποιοι που δεν έχουν γνώσεις στο θέμα, και σχολιάζουν. Μπορεί να έχουν εμπειρία σε κάτι αρχαίο και να θεωρούν ότι μπορούν να πετάνε γνώμες έτσι. Όνομα δεν λέω.

 

Αυτό που λες ότι σπαμε το πρόγραμμα σε μέρη, είναι βασική τακτική, που την ξέρει και η βασιλικούλα που έκανε ΑΕΠΠ στην 3η λυκείου. Από τη στιγμή που μιλάμε για specification που απαιτεί όλα αυτά να γίνουν προγραμματιστικά, δεν χωράνε απόψεις για το Unity κλπ άσχετα. Επίσης, αν δεν έχεις άποψη για τη C++ καθώς και εμπειρία με αυτή, δεν μπορείς να γράψεις σε αυτό το θέμα.

 

Αν δεις κάπου, λέει. "Να υλοποιηθεί κυκλική λίστα της οποίας κάθε κόμβος θα καθορίζει τη θέση του παίκτη", όχι κατά λέξη, αλλά αυτό λέει.

1)Τι είναι λίστα;

2)Πως την υλοποιείς;

3)Πως την κάνεις κυκλική;

Αν απαντήσεις σωστά τα ερωτήματα αυτά, πάσο. Ακόμα όμως και να τα απαντήσεις, υπάρχουν παρακάτω απαιτήσεις που δεν τις μαθαίνεις έτσι, από τη μία μέρα στην άλλη. Μην κάνουμε πιο δύσκολη τη ζωή του OP με μηνύματα που ούτε βοηθούν στο πρόβλημα ή/και είναι λάθος.

 

Σόρρυ για το μακροσκελές μήνυμα.

Και τελευταίο. Λες να κάνει σιγά σιγά τις κλάσεις, και στην πορεία βλέπει τι θα προκύψει.

Το μεγαλύτερο φάουλ που θα σε κυνηγάει και εσένα αν προσποιήσεις να μάθεις C++. Ή C++ δεν είναι γλώσσα trial and error. Όσο και να το παλεύεις έτσι, ακόμα και αν κάνεις κάτι που βγάζει σωστό αποτέλεσμα, προγραμματιστικά θα είναι λάθος. Θέλει πολύ προσοχή στα πάντα. Στη σύνδεση των κλάσεων, στο αν βάλεις public, protected, private attributes σε μία κλάση, στη διαχείριση της μνήμης με pointers που δείχνουν εκεί που πρέπει, και με τους απαραίτητους destructors για να μην γίνει μπάχαλο η μνήμη κλπ κλπ κλπ

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

  • Δημιουργία νέου...