Δομές Δεδομένων - Εργασία 1 [2016-17]

Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό pefraimi » 17 Οκτ 2016, 13:19

Εδώ μπορείτε να υποβάλετε ερωτήσεις, απορίες ή παρατηρήσεις σχετικές με την 1η εργασία, η οποία θα υποβληθεί μέσω του συστήματος Moodle.
pefraimi
Sr. Member
 
Δημοσιεύσεις: 333
Εγγραφή: 01 Νοέμ 2008, 14:59

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό Βασίλης » 28 Οκτ 2016, 19:55

Στην άσκηση 1 εννοείται οτι πρεπει να αλλαξουμε το return -1; σε return fact; ωστε να επιστρεφει τo παραγοντικο ετσι;(σας ρωταω γιατι μας ειχατε πει να μην αλλαζουμε τον κωδικα )
Βασίλης
Newbie
 
Δημοσιεύσεις: 14
Εγγραφή: 06 Νοέμ 2014, 21:57

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό James » 29 Οκτ 2016, 01:31

Βασίλης έγραψε:Στην άσκηση 1 εννοείται οτι πρεπει να αλλαξουμε το return -1; σε return fact; ωστε να επιστρεφει τo παραγοντικο ετσι;(σας ρωταω γιατι μας ειχατε πει να μην αλλαζουμε τον κωδικα )

Φυσικά. Για την ακρίβεια, είναι απαραίτητο να κάνετε αυτή την αλλαγή με το κατάλληλο return για όλες τις ασκήσεις. Αυτό που δεν μπορείτε να αλλάξετε είναι τα declarations του class και της μεθόδου.
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό Βασίλης » 01 Νοέμ 2016, 21:20

Στην ασκηση 6 μπορουμε να χρησιμοποιήσουμε static μεταβλητες?Επίσης θελετε να καταμετρούμε μονο τους συνδιασμους που χρησιμοποιουνται ολα τα κερματα ή ακομα και τις περιπτωσεις που δεν χρησιμοποιουμε καποιο/α κερμα/ατα;
Βασίλης
Newbie
 
Δημοσιεύσεις: 14
Εγγραφή: 06 Νοέμ 2014, 21:57

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό James » 01 Νοέμ 2016, 21:36

Βασίλης έγραψε:Στην ασκηση 6 μπορουμε να χρησιμοποιήσουμε static μεταβλητες?

Ναι (υποθέτοντας ότι είναι σωστή η σύνταξη), αλλά:
1. Θέλει πολλή προσοχή. Οι τιμές των static μεταβλητών διατηρούνται μεταξύ διαδοχικών εκτελέσεων των tests, σε αντίθεση με τις τοπικές που καταστρέφονται όταν τερματίσει η συνάρτηση.
2. Δεν έχει νόημα γιατί η κλάση έχει μόνο μία μέθοδο.

Βασίλης έγραψε:Επίσης θελετε να καταμετρούμε μονο τους συνδιασμους που χρησιμοποιουνται ολα τα κερματα ή ακομα και τις περιπτωσεις που δεν χρησιμοποιουμε καποιο/α κερμα/ατα;

Το δεύτερο. Είναι δυνατόν ένα κέρμα να χρησιμοποιηθεί μηδέν φορές σε έναν έγκυρο συνδυασμό. Για παράδειγμα ο συνδυασμός "διακόσια μονόλεπτα" είναι έγκυρος για το σχηματισμό της ποσότητας 2€.
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό Βασίλης » 01 Νοέμ 2016, 22:11

public class FindCoinSums {
// μπορουμε να δηλωσουμε εδω την static?
public static long findCoinSums(int euros) {
Βασίλης
Newbie
 
Δημοσιεύσεις: 14
Εγγραφή: 06 Νοέμ 2014, 21:57

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό James » 01 Νοέμ 2016, 22:16

Βασίλης έγραψε:public class FindCoinSums {
// μπορουμε να δηλωσουμε εδω την static?
public static long findCoinSums(int euros) {

Ναι. Μόνο σε εκείνο το σημείο μπορεί να δηλωθεί η static.
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό tasos123456 » 02 Νοέμ 2016, 18:38

Γεια σας μηπως ξέρετε γιατι μου βγάζει αυτό το προβλημα? https://scontent-cdg2-1.xx.fbcdn.net/v/ ... e=581D15B2
tasos123456
Newbie
 
Δημοσιεύσεις: 23
Εγγραφή: 02 Αύγ 2015, 14:28

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό James » 02 Νοέμ 2016, 20:23

tasos123456 έγραψε:Γεια σας μηπως ξέρετε γιατι μου βγάζει αυτό το προβλημα? https://scontent-cdg2-1.xx.fbcdn.net/v/ ... e=581D15B2

Θα πρέπει να μου δώσεις περισσότερες πληροφορίες. Τι ακριβώς κάνεις βήμα βήμα και προκύπτει αυτό;
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό tasos123456 » 02 Νοέμ 2016, 21:28

Τα βήματα κανονικα που υπάρχουν και στα pdf αλλα δεν μπορώ να το ελένξω στο .jar ουτε debug ουτε τιποτα.Δεν μπορει να κανει ουτε debug ουτε να το ελενξω απο το project-testing.jar ουτε τιποτα
tasos123456
Newbie
 
Δημοσιεύσεις: 23
Εγγραφή: 02 Αύγ 2015, 14:28

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό James » 02 Νοέμ 2016, 22:40

tasos123456 έγραψε:Τα βήματα κανονικα που υπάρχουν και στα pdf αλλα δεν μπορώ να το ελένξω στο .jar ουτε debug ουτε τιποτα.Δεν μπορει να κανει ουτε debug ουτε να το ελενξω απο το project-testing.jar ουτε τιποτα

Σε ποιο ερώτημα; Με ποιο eclipse; Ποια κουμπιά πατάς ακριβώς; Δοκίμασες με τον προσυμπληρωμένο κώδικα ή έγραψες δικό σου; Πιο κάτω στο error log που στέλνεις τι άλλο έχει; Τι εννοείς δεν μπορείς να το "ελέγξεις"; Γίνε λίγο πιο συγκεκριμένος.

Debug μπορείς να κάνεις μόνο αν προσθέσεις κάποια main στο πρόγραμμα και την εκτελέσεις διότι για τα test υπάρχει ένα χρονικό περιθώριο 200ms για να τερματίσει, διάστημα στο οποίο δε θα προλάβεις να κάνεις debugging.
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό tasos123456 » 02 Νοέμ 2016, 23:27

Με το eclipse java neon κανω import ενα αρχέιο το factorial που έχει ανεβάσει στην σελίδα του ο κύριος.Απο κώδικα δέν έχω πειράξει τίποτα απλα πάω στο referenced libraries/project-testing.jar και παταω run as JUNIT test https://scontent-cdg2-1.xx.fbcdn.net/v/ ... e=581BDF29
Δεν έχω πειράξει τίποτα άλλο κανένα κουμπί τίποτα.
tasos123456
Newbie
 
Δημοσιεύσεις: 23
Εγγραφή: 02 Αύγ 2015, 14:28

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό tasos123456 » 03 Νοέμ 2016, 14:31

Το βρήκα τελικά.Έκανα reset τα windows 10 και έφτιαξε..
tasos123456
Newbie
 
Δημοσιεύσεις: 23
Εγγραφή: 02 Αύγ 2015, 14:28

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό Βασίλης » 03 Νοέμ 2016, 22:30

Μπορειτε μηπως να με βοηθησετε στην ασκηση 6.Δοκιμασα να την υλοποιησω με static μεταβλητες(προσεχοντας οτι μου ειπατε (δλδ μηδενισα τις τιμες στο τελος για να μην υπαρξει θεμα με το επομενο τεστ και τις δηλωσα στο σημειο που σας εδειξα σε προηγουμενο σχολιο)).Ωστοσο μου βγαζει ερρορς.Το τρεχω σε ενα αλλο project (με main)για να δω τι τρεχει και μου εμφανιζει αυτο :

Exception in thread "main" java.lang.StackOverflowError
at dokimitis6.vale.findCoinSums(vale.java:40)
at dokimitis6.vale.findCoinSums(vale.java:40)
at dokimitis6.vale.findCoinSums(vale.java:40)
at dokimitis6.vale.findCoinSums(vale.java:40)
at dokimitis6.vale.findCoinSums(vale.java:40)
........(και συνεχιζει το να εμφανιζει το ιδιο πολλες φορες)

Μηπως δεν γινεται να χρησιμοποιησουμε static και πρεπει να ανατρέξω σε καποια αλλη μεθοδο;
Βασίλης
Newbie
 
Δημοσιεύσεις: 14
Εγγραφή: 06 Νοέμ 2014, 21:57

Re: Δομές Δεδομένων - Εργασία 1 [2016-17]

Δημοσίευσηαπό James » 04 Νοέμ 2016, 13:40

Βασίλης έγραψε:Μπορειτε μηπως να με βοηθησετε στην ασκηση 6.Δοκιμασα να την υλοποιησω με static μεταβλητες(προσεχοντας οτι μου ειπατε (δλδ μηδενισα τις τιμες στο τελος για να μην υπαρξει θεμα με το επομενο τεστ και τις δηλωσα στο σημειο που σας εδειξα σε προηγουμενο σχολιο)).Ωστοσο μου βγαζει ερρορς.Το τρεχω σε ενα αλλο project (με main)για να δω τι τρεχει και μου εμφανιζει αυτο :

Exception in thread "main" java.lang.StackOverflowError
at dokimitis6.vale.findCoinSums(vale.java:40)
at dokimitis6.vale.findCoinSums(vale.java:40)
at dokimitis6.vale.findCoinSums(vale.java:40)
at dokimitis6.vale.findCoinSums(vale.java:40)
at dokimitis6.vale.findCoinSums(vale.java:40)
........(και συνεχιζει το να εμφανιζει το ιδιο πολλες φορες)

Μηπως δεν γινεται να χρησιμοποιησουμε static και πρεπει να ανατρέξω σε καποια αλλη μεθοδο;

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

Στο πρόβλημα τώρα, όχι δεν σχετίζεται το error με τη static μεταβλητή, τουλάχιστον όχι άμεσα. Μπορείτε να χρησιμοποιήσετε static αλλά είναι, όπως έγραψα και πιο πάνω, παράλογο στο συγκεκριμένο πρόβλημα που έχει έτσι κι αλλιώς μόνο μια μέθοδο. Στείλε μου τον κώδικά σου σε PM ή email για να μπορέσω να σε βοηθήσω. Το error αυτό μπορεί να σημαίνει πάρα πολλά.
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Επόμενο

Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 35 επισκέπτες