THMMY.gr

Μαθήματα Βασικού Κύκλου => Δομημένος Προγραμματισμός => Topic started by: pepe on May 11, 2010, 11:27:35 am



Title: [Δομημένος Πρ.] Εργασια F 09/10
Post by: pepe on May 11, 2010, 11:27:35 am
 Εργασία F (Hμ/νία λήξης δηλώσεων: 17/05/2010)

Εργασία F

Σε μια περιοχή έχουν εγκατασταθεί Ν κάμερες της τροχαίας με στόχο να ελεγχθούν οι παραβιάσεις του ορίου ταχύτητας. Όταν ένα αυτοκίνητο περάσει από το σημείο που βρίσκεται η κάμερα και παραβιάσει το όριο ταχύτητας, καταγράφεται ο αριθμός κυκλοφορίας και η ταχύτητα του αυτοκινήτου. Στη συνέχεια τα αυτοκίνητα που παραβίασαν το όριο ταχύτητας κατατάσσονται σε τρεις κατηγορίες.  Στην  πρώτη ανήκουν αυτά που η υπέρβαση ήταν μέχρι 10% πάνω από το όριο της ταχύτητας, στη δεύτερη αυτά που η υπέρβαση ήταν πάνω από το 10% και κάτω από το 20% του ορίου και στην τρίτη αυτά που η ταχύτητα τους υπερέβαινε το 20% του ορίου.

Να γραφεί το πρόγραμμα στο οποίο ορίζεται η συνάρτηση penalty (…) η οποία δέχεται ένα πίνακα δύο διαστάσεων ο οποίος περιέχει σε κάθε γραμμή τις ταχύτητες που κατέγραψε η αντίστοιχη κάμερα και επιστρέφει έναν πίνακα του ιδίου τύπου ο οποίος στις αντίστοιχες θέσεις περιέχει την κατηγορία της αντίστοιχης παράβασης

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

 Το πρόγραμμα να καλεί τη συνάρτηση penalty για να υπολογίσει τον πίνακα με την κατηγορία της κάθε παράβασης και στη συνέχεια να εκτυπώνει για κάθε παραβάτη τον αριθμό του αυτοκινήτου την ταχύτητα και την κατηγορία της παράβασης.

Σημείωση: Οι μνήμη για τους πίνακες που θα χρησιμοποιηθούν να δεσμεύεται δυναμικά στο ελάχιστο απαιτούμενο μέγεθος σύμφωνα με τα δεδομένα που εισάγονται κάθε φόρά στο πρόγραμμα

Στους πίνακες speed  και number στην i γραμμή να αντιστοιχούν τα στοιχεία που συνέλεξε η υπ’ αριθμόν i κάμερα.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: duffy on May 12, 2010, 02:34:12 am
Μια ερωτησούλα για καλή αρχή:
τα όρια ταχύτητας πως θα τα παίρνει η συνάρτηση για να τις συγκρίνει με τις ταχυτητες των παραβατών και να ορίσει το πρόστιμο αφού, σύμφωνα με την εκφώνηση, δέχεται σαν όρισμα έναν πίνακα μόνο με τις εν λόγω ταχύτητες ;;;


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: The Stig on May 12, 2010, 16:32:52 pm
Η εκφώνηση δεν αναφέρει πουθενά ότι η συνάρτηση δέχεται έναν μόνο πίνακα αλλά ούτε και ότι δέχεται και παραπάνω. Οπότε έχουμε μέχρι στιγμής ασάφεια #1!! Ωστόσο πιστεύω ότι ή θα το βάζεις εσύ να δέχεται και το όριο ή θα το διαβάζεις πάλι μέσα στη συνάρτηση.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 12, 2010, 16:40:45 pm
Εγω ετσι οπως το διαβασα καταλαβα οτι: Θα φτιαχνεις και θα γεμιζεις τους πινακες speed και number στην main. Θα περνας στην penalty(...) μονο τον πικανα speed, και αυτη θα επιστρεφει εναν πινακα ομοιο με τον speed,μονο που εκει που ο speed εχει ταχυτητες,αυτος θα εχει 1,2,3 (κατηγορια 1 με <10%,κατηγορια 2 με 10%<...<20%,κατηρογια 3 με >20%).

Αυτον τον πικανα σε συνδιασμο με τους speed και number θα τους χρησιμοποιει η main για να τυπωσει ταχυτητα-κατηγορια παραβασης-αριθμο κυκλοφοριας!


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: The Stig on May 12, 2010, 19:29:42 pm
Ναι αλλά για να κάνεις την penalty να φτιάχνει τον πίνακα με τις κατηγορίες πρέπει να υπολογίζει το ποσοστό και για να το κάνει αυτό χρειάζεται το όριο. Άρα πρέπει με κάποιο τρόπο η συνάρτηση να το έχει σαν δεδομένο.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 12, 2010, 19:32:44 pm
θα το περνας σαν ορισμα!

οταν ελεγα οτι "Θα περνας στην penalty(...) μονο τον πικανα speed" μιλουσα για πινακες :P


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: The Stig on May 12, 2010, 20:00:04 pm
Α οκ! Συγγνώμη! Και εγώ σαν όρισμα το πέρασα.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: proud_metalhead on May 12, 2010, 20:09:49 pm
φανταζομαι οτι το οριο θα ειναι 1 για ολες τις καμερες, το οποιο 8α ειναι καταχωρημενο σε 1μεταβλητη πχ lim και 8α το περναμε σαν ορισμα στην συναρτηση


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 12, 2010, 20:15:45 pm
το όριο ταχύτητας που τέθηκε για κάθε κάμερα

οποτε ειναι διαφορετικο ;)


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: proud_metalhead on May 12, 2010, 20:22:03 pm
το όριο ταχύτητας που τέθηκε για κάθε κάμερα

οποτε ειναι διαφορετικο ;)
αρα πινακας με τα ορια. χαμος θα γινει παλι.


Σημείωση: Οι μνήμη για τους πίνακες που θα χρησιμοποιηθούν να δεσμεύεται δυναμικά στο ελάχιστο απαιτούμενο μέγεθος σύμφωνα με τα δεδομένα που εισάγονται κάθε φόρά στο πρόγραμμα


malloc?



Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: ScytheB on May 12, 2010, 20:51:15 pm
Quote
η συνάρτηση penalty (…) η οποία δέχεται ένα πίνακα δύο διαστάσεων ο οποίος περιέχει σε κάθε γραμμή τις ταχύτητες που κατέγραψε η αντίστοιχη κάμερα και επιστρέφει έναν πίνακα του ιδίου τύπου ο οποίος στις αντίστοιχες θέσεις περιέχει την κατηγορία της αντίστοιχης παράβασης...

Tι λέει ο ποιητής ρε?
Στην C δν μπορείς να επιστρέφεις πίνακα...

Το πολύ πολύ να στείλεις κανα pointer μέσα για να γράψει σε variable της main...


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Αιμιλία η φτερωτή χελώνα on May 12, 2010, 20:53:09 pm
malloc?
Ναι malloc

επισης, το προσεξατε?
Σημείωση: Οι μνήμη
;D ;D

ανορθογραφος οπως παντα ;D ;D

Τι λέει ο ποιητής ρε?
Στην C δν μπορείς να επιστρέφεις πίνακα...
επιστρεφεις τη διευθυνση του πρωτου κελιου του πινακα ξερω γω :???: :???: :???:


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 12, 2010, 21:00:53 pm
Quote
η συνάρτηση penalty (…) η οποία δέχεται ένα πίνακα δύο διαστάσεων ο οποίος περιέχει σε κάθε γραμμή τις ταχύτητες που κατέγραψε η αντίστοιχη κάμερα και επιστρέφει έναν πίνακα του ιδίου τύπου ο οποίος στις αντίστοιχες θέσεις περιέχει την κατηγορία της αντίστοιχης παράβασης...

Tι λέει ο ποιητής ρε?
Στην C δν μπορείς να επιστρέφεις πίνακα...

Το πολύ πολύ να στείλεις κανα pointer μέσα για να γράψει σε variable της main...

Ολοκληρo πινακα οχι,αλλα σκεψου τι ειναι ο πινακας...ενας ποιντερ που δειχνει την θεση του πρωτου στοιχειου,οποτε η συναρτηση μπορει να επιστρεφει εναν ποιντερ που να δειχνει την πρωτη θεση του πινακα.... ;)

Αυτο που λεει ο Απλυτος δηλαδη :P


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: The Stig on May 12, 2010, 21:15:34 pm
το όριο ταχύτητας που τέθηκε για κάθε κάμερα

οποτε ειναι διαφορετικο ;)
αρα πινακας με τα ορια. χαμος θα γινει παλι.
Βασικά λέει "το όριο ταχύτητας που τέθηκε για κάθε κάμερα". Όχι τα όρια ταχύτητας που τέθηκαν για κάθε κάμερα. Το όριο είναι ένα κοινό για κάθε κάμερα. Αυτό εννοεί με το κάθε.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: τσαι-borg on May 12, 2010, 21:26:29 pm
το όριο ταχύτητας που τέθηκε για κάθε κάμερα

οποτε ειναι διαφορετικο ;)
αρα πινακας με τα ορια. χαμος θα γινει παλι.
Βασικά λέει "το όριο ταχύτητας που τέθηκε για κάθε κάμερα". Όχι τα όρια ταχύτητας που τέθηκαν για κάθε κάμερα. Το όριο είναι ένα κοινό για κάθε κάμερα. Αυτό εννοεί με το κάθε.


ή και οχι.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: ScytheB on May 12, 2010, 21:34:16 pm
Αυτή τη φορά ξεπέρασε κάθε προσδοκία ασάφειας ο "αγαπητός καθηγητής... "


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: png on May 12, 2010, 21:38:26 pm
ευχαριστούμε αξιότιμε καθηγητά

ΠΙΟ περίπλοκη εργασία την άλλη βδομάδα

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


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 12, 2010, 21:41:19 pm
Γενικα νομιζω οτι ειναι πολυ πιο απλη απ την προηγουμενη πχ που ηθελε αλγοριθμο ταξινομισης κλπ κλπ κλπ κλπ.........

Βασικα δεν εχει τιποτα τρομερο :P


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: ScytheB on May 12, 2010, 21:43:40 pm
ευχαριστούμε αξιότιμε καθηγητά
ΠΙΟ περίπλοκη εργασία την άλλη βδομάδα

Και να πείς οτι θα μάθουμε να χρησιμοποιούμε κάτι καινούργιο...  Θα κάθομαι τώρα να ψάχνω τα κρυφά νοήματα για 4η φορά εργασία με πίνακα,συνάρτηση και πράξεις (+ - * / )


Quote
Γενικα νομιζω οτι ειναι πολυ πιο απλη απ την προηγουμενη πχ που ηθελε αλγοριθμο ταξινομισης κλπ κλπ κλπ κλπ.........


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Ευχαριστο Διαλειμμα on May 12, 2010, 21:47:46 pm
Σε μια πρωτη αναγνωση δε βλεπω κατι τρομερο. :P

το όριο ταχύτητας που τέθηκε για κάθε κάμερα

οποτε ειναι διαφορετικο ;)
αρα πινακας με τα ορια. χαμος θα γινει παλι.
Βασικά λέει "το όριο ταχύτητας που τέθηκε για κάθε κάμερα". Όχι τα όρια ταχύτητας που τέθηκαν για κάθε κάμερα. Το όριο είναι ένα κοινό για κάθε κάμερα. Αυτό εννοεί με το κάθε.
ή και οχι.

Πνιγεστε σε μια κουταλια νερο. Ειναι πολυ απλο: Μια καμερα ταχυτητας προφανως εχει ΜΟΝΟ ΑΝΩ ΟΡΙΟ ταχυτητος. Θα καταγραψει μονο οσους το υπερβουν. Επισης, συμφωνα και με την εκφωνηση (που αντιπροσοπευει και το λογικο στη συγκεκριμενη περιπτωση) υπαρχουν καμερες σε αρκετους δρομους ή διαφορα σημεια του ιδιου δρομου. Σαφως δεν ειναι το οριο ταχυτητας σε ενα δρομο συνεχως το ιδιο. Ισχυει ενα συγκεκριμενο οριο σε μια συγκεκριμενη θεση/περιοχη. Αρα ΣΕ ΚΑΘΕ ΘΕΣΗ(ΚΑΜΕΡΑ) ΜΠΟΡΕΙ να εχει ΔΙΑΦΟΡΕΤΙΚΟ ΟΡΙΟ ταχυτητος.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: The Stig on May 12, 2010, 22:04:29 pm
Πνιγεστε σε μια κουταλια νερο. Ειναι πολυ απλο: Μια καμερα ταχυτητας προφανως εχει ΜΟΝΟ ΑΝΩ ΟΡΙΟ ταχυτητος. Θα καταγραψει μονο οσους το υπερβουν. Επισης, συμφωνα και με την εκφωνηση (που αντιπροσοπευει και το λογικο στη συγκεκριμενη περιπτωση) υπαρχουν καμερες σε αρκετους δρομους ή διαφορα σημεια του ιδιου δρομου. Σαφως δεν ειναι το οριο ταχυτητας σε ενα δρομο συνεχως το ιδιο. Ισχυει ενα συγκεκριμενο οριο σε μια συγκεκριμενη θεση/περιοχη. Αρα ΣΕ ΚΑΘΕ ΘΕΣΗ(ΚΑΜΕΡΑ) ΜΠΟΡΕΙ να εχει ΔΙΑΦΟΡΕΤΙΚΟ ΟΡΙΟ ταχυτητος.
Όσο λογικό αντιπροσωπεύει και το ότι πρέπει να κάνουμε δισδιάστατο πίνακα για να εισάγουμε πινακίδες αυτοκινήτων. Λες και το αυτοκίνητο αλλάζει αριθμό από κάμερα σε κάμερα... Δεν λέω ότι έχεις άδικο για την διαφορά του ορίου ταχύτητας αλλά δεν το ζητάει καθαρά η άσκηση(μπράβο σε αυτόν που την έβγαλε). Πάντως είναι ευκολότερη σε σχέση με τις άλλες.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: nikos912000 on May 13, 2010, 01:18:59 am
Πνιγεστε σε μια κουταλια νερο. Ειναι πολυ απλο: Μια καμερα ταχυτητας προφανως εχει ΜΟΝΟ ΑΝΩ ΟΡΙΟ ταχυτητος. Θα καταγραψει μονο οσους το υπερβουν. Επισης, συμφωνα και με την εκφωνηση (που αντιπροσοπευει και το λογικο στη συγκεκριμενη περιπτωση) υπαρχουν καμερες σε αρκετους δρομους ή διαφορα σημεια του ιδιου δρομου. Σαφως δεν ειναι το οριο ταχυτητας σε ενα δρομο συνεχως το ιδιο. Ισχυει ενα συγκεκριμενο οριο σε μια συγκεκριμενη θεση/περιοχη. Αρα ΣΕ ΚΑΘΕ ΘΕΣΗ(ΚΑΜΕΡΑ) ΜΠΟΡΕΙ να εχει ΔΙΑΦΟΡΕΤΙΚΟ ΟΡΙΟ ταχυτητος.
Όσο λογικό αντιπροσωπεύει και το ότι πρέπει να κάνουμε δισδιάστατο πίνακα για να εισάγουμε πινακίδες αυτοκινήτων. Λες και το αυτοκίνητο αλλάζει αριθμό από κάμερα σε κάμερα... Δεν λέω ότι έχεις άδικο για την διαφορά του ορίου ταχύτητας αλλά δεν το ζητάει καθαρά η άσκηση(μπράβο σε αυτόν που την έβγαλε). Πάντως είναι ευκολότερη σε σχέση με τις άλλες.

Εννοείται ότι θα ζητάει συνεχώς αριθμούς πινακίδων αφού τα αυτοκίνητα και τα όρια δε θα είναι κάθε φορά τα ίδια(εφόσον μιλάμε για διαφορετικές κάμερες προφανώς άλλο αυτοκίνητο θα υπερβαίνει το όριο της μιας κ άλλο της άλλης!)...Γι αυτό άλλωστε θα αλλάζει συνεχώς η μνήμη που δεσμεύουμε γισ τους πίνακα number και speed...
Μπορεί να μου πει κάποιος πως θα γράψουμε σαν όρισμα το δισδιάστατο στη συνάρτηση και πως θα τον επιστρέψουμε?Επίσης στη malloc πως δεσμεύουμε δισδιάστατο?(μάθαμε μόνο για μονοδιάστατο νομίζω...)


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: nohponex on May 13, 2010, 14:10:38 pm

Εννοείται ότι θα ζητάει συνεχώς αριθμούς πινακίδων αφού τα αυτοκίνητα και τα όρια δε θα είναι κάθε φορά τα ίδια(εφόσον μιλάμε για διαφορετικές κάμερες προφανώς άλλο αυτοκίνητο θα υπερβαίνει το όριο της μιας κ άλλο της άλλης!)...Γι αυτό άλλωστε θα αλλάζει συνεχώς η μνήμη που δεσμεύουμε γισ τους πίνακα number και speed...
Μπορεί να μου πει κάποιος πως θα γράψουμε σαν όρισμα το δισδιάστατο στη συνάρτηση και πως θα τον επιστρέψουμε?Επίσης στη malloc πως δεσμεύουμε δισδιάστατο?(μάθαμε μόνο για μονοδιάστατο νομίζω...)

κάναμε και για 2D.

Ένα παράδειγμα με ολα αυτά μαζι

short** function( .... , float **speed){

    short **penalties = (short **)malloc(X* sizeof(short *));

    for(int t=0;t<X;t++){
        penalties[t] = (short *)malloc(Y * sizeof(short));
    }
    return penalties;
}

ότι είναι με κόκκινο τα έχω παραλείψει


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: The Stig on May 13, 2010, 19:03:03 pm
Το ξεκαθάρισε ο Θοδωρής σήμερα ότι είναι διαφορετικό το όριο ταχύτητας για κάθε κάμερα+ότι είπε ο nikos912000. Έσφαλα. Ζητώ ταπεινά συγγνώμη.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: nikos912000 on May 14, 2010, 17:59:32 pm

Εννοείται ότι θα ζητάει συνεχώς αριθμούς πινακίδων αφού τα αυτοκίνητα και τα όρια δε θα είναι κάθε φορά τα ίδια(εφόσον μιλάμε για διαφορετικές κάμερες προφανώς άλλο αυτοκίνητο θα υπερβαίνει το όριο της μιας κ άλλο της άλλης!)...Γι αυτό άλλωστε θα αλλάζει συνεχώς η μνήμη που δεσμεύουμε γισ τους πίνακα number και speed...
Μπορεί να μου πει κάποιος πως θα γράψουμε σαν όρισμα το δισδιάστατο στη συνάρτηση και πως θα τον επιστρέψουμε?Επίσης στη malloc πως δεσμεύουμε δισδιάστατο?(μάθαμε μόνο για μονοδιάστατο νομίζω...)

κάναμε και για 2D.

Ένα παράδειγμα με ολα αυτά μαζι

short** function( .... , float **speed){

    short **penalties = (short **)malloc(X* sizeof(short *));

    for(int t=0;t<X;t++){
        penalties[t] = (short *)malloc(Y * sizeof(short));
    }
    return penalties;
}

ότι είναι με κόκκινο τα έχω παραλείψει


Thanx φίλε...Μας τα είπε καλά κ ο Θοδωρής οπότε σήμερα π θ ξαναπιάσω την εργασία δ νομίζω ν χω πρόβλημα...


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: duffy on May 14, 2010, 19:59:23 pm
Ασχετη απορία: τη μνήμη που δεσμεύουμε την αποδεσμεύουμε κιόλας?


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 14, 2010, 20:37:20 pm
Καλο ειναι να την αποδεσμευεις,οταν δεν την χρειαζεσαι αλλο...

Βεβαια μολις κλεινεις το προγραμμα αποδεσμευεται αυτοματα,αλλα καλο ειναι να συνηθησεις να χρησιμοποιεις την free γιατι σε μεγαλης εκτασης προγραμματα χρειαζεται...


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: stavri on May 15, 2010, 15:38:08 pm
Ξέρει κανείς τί παίζει με τη δημιουργία ομάδων στο eTHMMY???
Από χθές προσπαθώ να κάνω ομάδα για να ανεβάσω την εργασία μου και μου βγάζει αυτό το σφάλμα: Αδυναμία σύνδεσης με τη βάση δεδομένων [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.. Επικοινωνήστε με τους διαχειριστές του συστήματος


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 15, 2010, 15:44:53 pm
Τιποτα σοβαρο,γινεται συχνα....θα επισκευαστει συντομα,λογικα......


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Orfikoss on May 15, 2010, 21:55:18 pm
Βεβαια μολις κλεινεις το προγραμμα αποδεσμευεται αυτοματα,αλλα καλο ειναι να συνηθησεις να χρησιμοποιεις την free γιατι σε μεγαλης εκτασης προγραμματα χρειαζεται...

Είσαι σίγουρος;
Νομίζω ότι μονο κάποιοι compilers το κάνουν αυτόματα


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 15, 2010, 22:02:19 pm
Βεβαια μολις κλεινεις το προγραμμα αποδεσμευεται αυτοματα,αλλα καλο ειναι να συνηθησεις να χρησιμοποιεις την free γιατι σε μεγαλης εκτασης προγραμματα χρειαζεται...
Είσαι σίγουρος;
Νομίζω ότι μονο κάποιοι compilers το κάνουν αυτόματα

Δεν ειναι θεμα compiler, απλα κλεινεις το προγραμμα.Οποτε δεν υπαρχει κατι που να σου λεει οτι οι ταδε θεσεις μνημης (που δεσμευσες κατα την διαρκεια του προγραμματος) συνεχιζουν να ειναι δεσμευμενες,αρα ειναι ελευθερες :P


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: The Stig on May 16, 2010, 03:14:47 am
Νομίζω ότι εξαρτάται από τον compiler. Κλείνει το πρόγραμμα και το λογικό είναι να συμβαίνει αυτό που λέει ο καπτεν ωστόσο πάντα θα παραμένουν κάποια στοιχεία στην μνήμη που αν χρησιμοποιήσεις την free σίγουρα θα έσβηναν. Το σίγουρο είναι πάντως πως με το restart σβήνονται  :P.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Emfanever on May 16, 2010, 03:34:13 am
Όταν λέμε αποδεσμεύουμε τη μνήμη, δε σημαίνει απαραίτητα ότι θα διαγραφεί το περιεχόμενο της. Απλά θεωρείται διαθέσιμη (δε χρησιμοποιείται πια) και μπορεί να γραφτεί κάτι καινούριο πάνω στα παλιά δεδομένα (τα οποία πλέον είναι σκουπίδια, όπως λέει και ο Κορτέσης :P) .

 Το ίδιο συμβαίνει και με τη μνήμη των σκληρών δίσκων. Γιαυτό, ακόμα και αν διαγράψεις κάτι από τον κάδο ανακύκλωσης μπορείς να το ανακτήσεις με ειδικά προγράμματα.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Neal on May 16, 2010, 10:38:17 am
Τι θα γίνει με το ethmmy; Πρέπει να πάει Δευτέρα για αν φτιαχτεί η δημιουργία ομάδων;


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: ScytheB on May 16, 2010, 14:16:15 pm
Τι θα γίνει με το ethmmy; Πρέπει να πάει Δευτέρα για αν φτιαχτεί η δημιουργία ομάδων;

Πάλι έπεσε το σύστημα ρε έλεος....

Δηλαδή να μεταφράσω το
 ""Αδυναμία σύνδεσης με τη βάση δεδομένων [Microsoft][SQLServer 2000 Driver for JDBC]""==Ο !#@%@$ αυτός κώδικας δεν δουλεύει για πάνω απο ένα άτομο ανα 10 λεπτα... ?

edit: ...


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: nohponex on May 16, 2010, 15:26:05 pm
για αυτο την εργασια έτοιμη απο τριτη βραδυ  ::)  :P


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: png on May 16, 2010, 15:49:15 pm
η ακόμα καλύτερα πριν τη βγάλει ο κορτέσης  :P


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: mafalda on May 16, 2010, 15:51:29 pm
Εφόσον για κάθε κάμερα είναι διαφορετικός ο αριθμός των αυτοκινήτων που παραβίασαν το όριο, κάθε γραμμή θα έχει διαφορετικό αριθμό στηλών,σωστά;
Αυτό πώς γίνεται με την malloc;


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 16, 2010, 15:57:42 pm
Εφόσον για κάθε κάμερα είναι διαφορετικός ο αριθμός των αυτοκινήτων που παραβίασαν το όριο, κάθε γραμμή θα έχει διαφορετικό αριθμό στηλών,σωστά;
Αυτό πώς γίνεται με την malloc;
Σωστα

Αφου δεσμευσεις μνημη για Ν φαναρια (Ν γραμμες του πίνακα),μεσα σε μια λουπα απο 0 ως Ν, για καθε καμερα θα ρωτας ποσα αυτοκινητα παραβίασαν το όριο και θα κανεις κατι του στιλ
Code:
pinakas[i]=(float *)malloc(A*sizeof(float));
όπου A τα αυτοκίνητα που παραβίασαν το όριο για το φανάρι i


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: status_quo on May 16, 2010, 16:07:50 pm
ναι οκ αλλα για να διαχειριστεις αυτον τον πινακα θα πρεπει να κανεις εναν αλλο που να εχει κρατημενο το διαφορετικο πληθος των στηλων και εκει γαμιεται λιγο η φαση...καμια ιδεα για να το απλουστεψουμε?


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: png on May 16, 2010, 16:12:50 pm
ναι οκ αλλα για να διαχειριστεις αυτον τον πινακα θα πρεπει να κανεις εναν αλλο που να εχει κρατημενο το διαφορετικο πληθος των στηλων και εκει γαμιεται λιγο η φαση...καμια ιδεα για να το απλουστεψουμε?

δυο πίνακες χρειάζονται, ο ενας ο 2-δ που θες να φτιαξεις, πχ ο speed, και ο αλλος ο 1-δ που θα σου δειχνει το μηκος καθε γραμμης, και προφανως η μεταβλητη που θα σου λεει ποσες καμερες εχει ο δρομος.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Logan on May 16, 2010, 17:56:24 pm
αν η συναρτηση penalty ειναι void και παιζω με εναν διπλο pointer ο οποιος θα παιρνει τις τιμες 1,2,3 αναλογα με την παραβαση, θεωρειται λαθος? ρωταω γιατι λεει πρεπει να επιστρεφει πινακα και δεν βρηκα αλλο τροπο. Με βαση αυτον τον pointer εκτυπωνω μετα στη main οτι χρειαζεται.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 16, 2010, 18:02:05 pm
Η εκφωνιση ομως λεει οτι η συναρτηση πρεπει να επιστρεφει τον πινακα...Δες την παρακατω παραθεση,για να παρεις μια ιδεα

Quote
η συνάρτηση penalty (…) η οποία δέχεται ένα πίνακα δύο διαστάσεων ο οποίος περιέχει σε κάθε γραμμή τις ταχύτητες που κατέγραψε η αντίστοιχη κάμερα και επιστρέφει έναν πίνακα του ιδίου τύπου ο οποίος στις αντίστοιχες θέσεις περιέχει την κατηγορία της αντίστοιχης παράβασης...

Tι λέει ο ποιητής ρε?
Στην C δν μπορείς να επιστρέφεις πίνακα...

Το πολύ πολύ να στείλεις κανα pointer μέσα για να γράψει σε variable της main...

Ολοκληρo πινακα οχι,αλλα σκεψου τι ειναι ο πινακας...ενας ποιντερ που δειχνει την θεση του πρωτου στοιχειου,οποτε η συναρτηση μπορει να επιστρεφει εναν ποιντερ που να δειχνει την πρωτη θεση του πινακα.... ;)


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Logan on May 16, 2010, 18:26:35 pm
οκ φιλε, το εκανα, δεν εχει μεγαλη διαφορα! thanks


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Burlitsa on May 16, 2010, 18:29:35 pm
Να ρωτήσω κάτι ::)?

Πως ορίζω με μαλοκ πίνακα?  ^redface^

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

float *Orio[][2];       ?

και πως χρησιμοποιώ την μαλοκ?

επίσης απο που μπορώ να διαβάσω για μαλοκ και ριαλοκ ώστε να ξεκαθαρίσω λίγο τα πράγματα στο μυαλό μου??


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: gate4 on May 16, 2010, 18:40:44 pm
float **orio;
orio=(float**)malloc(sizeof(float*)*n)
for (i=0;i<n;i++) {
orio [ i ] =(float*)malloc(sizeof(float)*2)
}


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Burlitsa on May 16, 2010, 18:48:21 pm
ευχαριστώ :D μηπως σου είναι εύκολο να μου γράψεις και τις βιβλιοθήκες που χρησιμοποιώ πέρα της στδιο?


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: gate4 on May 16, 2010, 18:56:36 pm
#include <stdlib.h> και μετα για να αποδεσμευσει την μνηνη κανεις free(οριο); στο τελος συνηθως


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Burlitsa on May 16, 2010, 19:07:33 pm
 :-* thx!!!!! (isws na xriastw kati k pali bebaia.... blepoume!!!) :P


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Burlitsa on May 16, 2010, 19:27:06 pm
 Το πρόγραμμα να καλεί τη συνάρτηση penalty για να υπολογίσει τον πίνακα με την κατηγορία της κάθε παράβασης και στη συνέχεια να εκτυπώνει για κάθε παραβάτη τον αριθμό του αυτοκινήτου την ταχύτητα και την κατηγορία της παράβασης.

μπορώ να εκτυπώσω μέσα απο την penalty? ή να εκτυπώνω απο την μαιν?


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 16, 2010, 19:31:29 pm
Η penalty θα επιστρεφει τον πινακα που θα χρειαζεσαι για να τυπωσεις την παραβαση και τον παραβατη,αρα δεν εχει νοημα να γινει στην penalty αυτο,αλλα στην main.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Burlitsa on May 16, 2010, 21:00:05 pm
την έεεεεκανα :D


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Niobe on May 16, 2010, 21:25:52 pm
Το σηστημα ακομα αυνανιζεται ανελεητα ???  :P :P :P


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Wade on May 16, 2010, 21:49:51 pm
Ακόμα... :P

Βέβαια δε θέλω να ανεβάσω εργασία C αλλά Ψηφιακά Φίλτρα, αλλά κι εδώ τα ίδια χάλια :P


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Niobe on May 17, 2010, 17:01:21 pm
Ρε παιδια καντε μου μια χαρη... Πες οτι κανω μαλοκ και βαζω ελεγχο και μου βγαζει νουλ.. Στην περιπτωση αυτη πρεπει να βαλω goto για να τελειωσει το προγραμμα?? Η απλα αφηνω την εντολη ελεγχου για να την βλεπει ο μαργαρης?? :D


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 17, 2010, 17:04:49 pm
Μπορεις να βαλεις την εντολη exit(1) μεσα στην if που τερματιζει το προγραμμα!!


Ο μαργαρης?????


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Niobe on May 17, 2010, 17:56:41 pm
Κορτεσης σορι


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Argirios on May 17, 2010, 18:33:36 pm
πώς στέλνουμε δισδιάστατο πίνακα σε συναρτηση όταν αυτός έχει δηλωθεί δυναμικά?


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: proud_metalhead on May 17, 2010, 19:41:36 pm
πώς στέλνουμε δισδιάστατο πίνακα σε συναρτηση όταν αυτός έχει δηλωθεί δυναμικά?
αν δν κανω λαθος απλα βαζεις 2 ** αντι για 1 οπως στον μονοδιαστατο. το compile για επιβεβαιωση δν βλαπτει φυσικα.....


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Argirios on May 17, 2010, 19:46:09 pm
σωστό, θένξ  ^notworthy^


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Lampros on May 17, 2010, 20:37:45 pm
αν κάποιος δεν έχει πρόβλημα ας μου στείλει την εργασία σε π.μ.


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: Sage on May 17, 2010, 22:41:06 pm
Πως θα επιστρέψουμε τον πίνακα που μας ζητάει απο την συναρτηση στην main????
Με "return **Pinakas" ...?? ::)


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: il capitano on May 17, 2010, 22:45:49 pm
θα φτιαξεις μεσα στην συναρτηση εναν πινακα,κατι του στυλ float **paravates;
και στο τελος την συναρτησης θα γραψεις return paravates;.
Η συναρτηση θα πρεπει να δηλωθει σαν float **penalty(...); και στην main θα εχεις κατι του στιλ pin=penalty(...); οπου η pin ειναι τυπου float **pin;


Title: Re: [Δομημένος Πρ.] Εργασια F 09/10
Post by: i.88 on May 18, 2010, 00:30:39 am
και εγω θα ηθελα να μου στηλει καποιος την εργασια ... εστω την μιση με pm