• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
August 04, 2025, 06:50:58 am

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.
August 04, 2025, 06:50:58 am

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
[Σχεδίαση Συστημάτων VLSI...
by cealexop
[Today at 00:58:35]

Τι ακούτε αυτήν τη στιγμή...
by immo
[August 03, 2025, 22:49:59 pm]

Ρυθμίσεις Θεμάτων της Ανώ...
by nmpampal
[August 03, 2025, 21:29:36 pm]

[Τομέας Ενέργειας] Μαθήμα...
by chatzikys
[August 03, 2025, 13:56:19 pm]

Ρύθμιση θερμικού για μοτέ...
by chatzikys
[August 02, 2025, 21:29:19 pm]

Αποτελέσματα Εξεταστικής ...
by Ma8hths Indou
[August 02, 2025, 17:30:47 pm]

[Τηλεπικοινωνιακά Συστήμα...
by Thanasis_pap
[August 02, 2025, 17:06:37 pm]

Άδεια ασκήσεως επαγγέλματ...
by The Web
[August 02, 2025, 13:25:49 pm]

[Τομέας Ηλεκτρονικής] Μαθ...
by Nikos_313
[August 02, 2025, 09:51:26 am]

Οι μπράβοι του πρύτανη
by Διάλεξις
[August 02, 2025, 01:30:18 am]

[Διανεμημένη Παραγωγή] Γε...
by Διάλεξις
[August 02, 2025, 01:04:15 am]

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by Διάλεξις
[August 02, 2025, 00:59:05 am]

Ηλεκτρομηχανολογικές Μελέ...
by inverter
[August 01, 2025, 20:35:12 pm]

Νέα Δημοκρατία (and Co. I...
by Katarameno
[August 01, 2025, 15:13:09 pm]

Πρόγραμμα Σπουδών Ακαδημα...
by PolarBear
[August 01, 2025, 15:03:05 pm]

Aναζωπύρωση των εχθροπραξ...
by Katarameno
[July 31, 2025, 21:15:48 pm]

Καμμένα...!!
by Godat
[July 31, 2025, 21:07:58 pm]

[ΑΝΤΙΣΤΑΣΗ] Ανακοίνωση γι...
by Katarameno
[July 31, 2025, 20:31:30 pm]

Αρχείο Ανακοινώσεων [Arch...
by Nikos_313
[July 31, 2025, 15:33:28 pm]

ΤΗΜΜΥ-Σκάκι
by L
[July 31, 2025, 13:24:56 pm]
Στατιστικά
Members
Total Members: 9988
Latest: kyrlef
Stats
Total Posts: 1427654
Total Topics: 31739
Online Today: 117
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 2
Guests: 64
Total: 66
Εμφάνιση

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

Νέα!
Για αλλαγή του public name σας, επικοινωνήστε με έναν από τους Admins.
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 2ο Εξάμηνο > Αντικειμενοστραφής Προγραμματισμός (Moderators: chatzikys, tzortzis) > [C++] 6η Εργασια 2009
0 Members and 1 Guest are viewing this topic.
Pages: [1] 2 3 ... 5 Go Down Print
Author Topic: [C++] 6η Εργασια 2009  (Read 5993 times)
ggpyr
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 1247



View Profile WWW
[C++] 6η Εργασια 2009
« on: November 26, 2009, 16:05:26 pm »

Ένα εργοστάσιο μπορεί να παράγει μια σειρά από διαφορετικούς τύπους προϊόντων.  Για κάθε τύπο προϊόντων μπορούμε να έχουμε διαφορετικές κατηγορίες οι οποίες εξαρτώνται από την ποιότητα των υλικών, τον χρόνο επεξεργασίας κλπ. Μια παραγγελία που θα έρθει στο εργοστάσιο προσδιορίζει τις κατηγορίες των προϊόντων που θα παραχθούν και τον αριθμό των τεμαχίων για κάθε κατηγορία. 

Να γραφεί το λογισμικό το οποίο να υπολογίζει το συνολικό κόστος, και το συνολικό κέρδος από την εκτέλεση μιας παραγγελίας που έφτασε στο εργοστάσιο. Στο λογισμικό να ορίζεται η συνάρτηση calck(…) η οποία να διαβάζει τον αριθμό των τεμαχίων για κάθε κατηγορία προϊόντων και να υπολογίζει το συνολικό κόστος της παραγγελίας και το συνολικό ποσό που θα εισπράξει το εργοστάσιο από την εκτέλεσή της. Η συνάρτηση calck να είναι ανεξάρτητη από τον τύπο και την κατηγορία των προϊόντων που ζητείται να κατασκευαστούν.

Ως εφαρμογή να θεωρηθεί ότι το εργοστάσιο μπορεί να κατασκευάσει προϊόντα τύπου product_1 για τα οποία να διαβάζεται το κόστος των υλικών και το κόστος της επεξεργασίας ανά τεμάχιο καθώς και το ποσοστό κέρδους που αφήνει η κατασκευή ενός τέτοιου τεμαχίου. Το εργοστάσιο μπορεί ακόμη να κατασκευάσει και προϊόντα τύπου product_2. Για τα προϊόντα τύπου product_2 απαιτείται η απασχόληση ενός εργάτη ο οποίος πρέπει να εργαστεί έναν ορισμένο αριθμό ωρών για να κατασκευάσει ένα τεμάχιο του προϊόντος. Αν το εργοστάσιο επιθυμεί να επισπεύσει την παραγγελία μπορεί να απασχολήσει και άλλους εργάτες για την κατασκευή του ίδιου τεμαχίου. Στην περίπτωση αυτή ο χρόνος που χρειάζεται για να κατασκευαστεί ένα τεμάχιο ισούται με τον αριθμό των ωρών που απαιτούνται για την κατασκευή του από έναν εργάτη δια τον αριθμό των εργατών που θα χρησιμοποιηθούν για την κατασκευή του αν επισπευσθεί η παραγγελία. Η αμοιβή ενός εργάτη προσδιορίζεται ανά τεμάχιο που κατασκευάζει είτε μόνος του είτε με άλλους εργάτες. Για κάθε τεμάχιο προϊόντος τύπου product_2 να διαβάζεται το κόστος των υλικών, το κόστος της επεξεργασίας και το ποσοστό κέρδους ανά τεμάχιο, να διαβάζεται ακόμη ο ελάχιστος ζητούμενος χρόνος για την κατασκευή του, ο χρόνος που απαιτείται για την κατασκευή του από έναν εργάτη και η ανά τεμάχιο αμοιβή του εργάτη.

Η συνάρτηση main του προγράμματος να διαβάζει τον αριθμό των προϊόντων τύπου product_1 και τον αριθμό των προϊόντων τύπου product_2 να δεσμεύει δυναμικά μνήμη με τον τελεστή new για την καταχώρηση των αντίστοιχων αντικειμένων, να καλεί τη συνάρτηση calck για να υπολογίσει το συνολικό κόστος και την αξία της παραγγελίας και να εκτυπώνει το συνολικό κέρδος από την εκτέλεσή της.

 

Βοηθητικές παρατηρήσεις

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

Για τα προϊόντα τύπου product_2 το κόστος επεξεργασίας δεν περιλαμβάνει την αμοιβή των εργατών που απασχολούνται για την κατασκευή του.
Logged

provataki
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 3834



View Profile
Re: [C++] 6η Εργασια 2009
« Reply #1 on: November 26, 2009, 21:33:53 pm »

και ξανα προς τη δοξα τραβαααα
Logged

bay bay timy.
kgiann78
Guest
Re: [C++] 6η Εργασια 2009
« Reply #2 on: November 30, 2009, 23:00:49 pm »

ρε παιδιά έχει πει στη θεωρία περί templates? πρότυπα δηλαδή...

Προς πρότυπα δεν πάει η άσκηση??? Δεν θα ήθελα να ξεκινήσω από τον δύσκολο δρόμο....
Logged
antonios
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 1236



View Profile
Re: [C++] 6η Εργασια 2009
« Reply #3 on: December 01, 2009, 09:32:03 am »

καλημέρα παιδιά... έχω κάνει λίγο από την main, αλλά βγάζει ένα σφάλμα.....

cout<<"dose ton arithmo ton proionton typou 1\n";
        cin>>a;
   cout<<"dose ton arithmo ton proionton typou 2\n";
   cin>>b;
   p1=new product_1[a];
   p2=new product_2;
   for(i=0;i<a;i++){
      product_1 temp1();
      p1=temp1;
   }
   for(i=0;i<b;i++){
      product_2 temp2();
      p2=temp2;
   }

μπορείτε να μου πείτε τι εκανα λάθος???
Logged
Αθηρ
Θαμώνας
****
Gender: Male
Posts: 495



View Profile
Re: [C++] 6η Εργασια 2009
« Reply #4 on: December 01, 2009, 12:31:26 pm »

Quote from: antonios on December 01, 2009, 09:32:03 am
καλημέρα παιδιά... έχω κάνει λίγο από την main, αλλά βγάζει ένα σφάλμα.....

cout<<"dose ton arithmo ton proionton typou 1\n";
        cin>>a;
   cout<<"dose ton arithmo ton proionton typou 2\n";
   cin>>b;
   p1=new product_1[a];
   p2=new product_2;
   for(i=0;i<a;i++){
      product_1 temp1();
      p1=temp1;
   }
   for(i=0;i<b;i++){
      product_2 temp2();
      p2=temp2;
   }

μπορείτε να μου πείτε τι εκανα λάθος???

Τα p1 και p2 πρέπει να δηλωθούν ως pointers αν δεν απατώμαι. Αυτό απαιτεί η χρήση της new.
Logged

Τιποτα
frou_ira
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 540


Smart enough to be an ΗΜΜΥ??


View Profile
Re: [C++] 6η Εργασια 2009
« Reply #5 on: December 02, 2009, 18:07:55 pm »

Quote from: koureas on November 30, 2009, 23:00:49 pm
ρε παιδιά έχει πει στη θεωρία περί templates? πρότυπα δηλαδή...

Προς πρότυπα δεν πάει η άσκηση??? Δεν θα ήθελα να ξεκινήσω από τον δύσκολο δρόμο....

Είσαι σίγουρος;Μήπως γίνεται και με πιο απλό τρόπο;
Γιατί αν όχι μάλλον θα πρέπει να ξεφυλλίσουμε το τευχάκι της θεωρίας... CryBaby
Logged

"Η τεχνητή νοημοσύνη δεν μπορεί να κερδίσει τη φυσική ηλιθιότητα"
kgiann78
Guest
Re: [C++] 6η Εργασια 2009
« Reply #6 on: December 02, 2009, 23:06:00 pm »

Το λέω γιατί απλά με τριγκάρισε η έκφραση "Η συνάρτηση calck να είναι ανεξάρτητη από τον τύπο και την κατηγορία των προϊόντων που ζητείται να κατασκευαστούν."


Αλλά μέχρις στιγμής δεν έχω έρθει face-to-face με την calck και δεν μπορώ να σου πω με σιγουριά αν θα χρειαστεί... Για την ώρα έφτιαξα μια "μαμά" (ήτοι parent) κλάση, την product με virtual συνάρτηση την cost() και έφτιαξα και δυο "παιδάκια" κλάσεις τα  product_1 και product_2... Στην μαμα κλάση έβαλα τις βασικες παραμέτρους (κόστος υλικού κοστος κατασκευής, ποσοστό κέρδους)... Οι άλλες κλάσεις παιδιά όμως είναι εκείνες που θα κάνουν την υλοποίηση....

Η calck θα ακολουθήσει αύριο...
Logged
antonios
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 1236



View Profile
Re: [C++] 6η Εργασια 2009
« Reply #7 on: December 02, 2009, 23:32:44 pm »

Quote from: Glyfitzouri on December 01, 2009, 12:31:26 pm
Quote from: antonios on December 01, 2009, 09:32:03 am
καλημέρα παιδιά... έχω κάνει λίγο από την main, αλλά βγάζει ένα σφάλμα.....

cout<<"dose ton arithmo ton proionton typou 1\n";
        cin>>a;
   cout<<"dose ton arithmo ton proionton typou 2\n";
   cin>>b;
   p1=new product_1[a];
   p2=new product_2;
   for(i=0;i<a;i++){
      product_1 temp1();
      p1=temp1;
   }
   for(i=0;i<b;i++){
      product_2 temp2();
      p2=temp2;
   }

μπορείτε να μου πείτε τι εκανα λάθος???

Τα p1 και p2 πρέπει να δηλωθούν ως pointers αν δεν απατώμαι. Αυτό απαιτεί η χρήση της new.

ναι, συμφωνώ τα έχω δηλώσει πιο πάνω αυτά... και τα 2 σαν pointers...... παίζει να είναι κάτι άλλο???
Logged
Anastacia
Θαμώνας
****
Posts: 331


λευτεριά στους Μουργόλυκους


View Profile
Re: [C++] 6η Εργασια 2009
« Reply #8 on: December 03, 2009, 00:38:22 am »

Αφού λοιπόν τα έχεις δηλώσει ως pointers με ποια λογική τα βάζεις ίσα με temp που είναι αντικείμενο?!
Γράψε p1[ i ] και p2[ i ]. (κ έχεις ξεχάσει κ το μέγεθος στη 2η new, αλλά μάλλον καταλάθος)

ΑΛΛΑ δεν χρειάζεται να το κάνεις αυτό με τη λούπα, γιατί με τη new καλούνται αυτόματα οι constractors χωρίς ορίσματα για όλα τα στοιχεία του πίνακα (ίσως να φταίει κ αυτό για το λάθος?).

εδιτ: Μμμ, αν κρίνω από τα πλαγιαστά γράμματα που εμφανίζονται στον κώδικα σου, μάλλον το έγραψες το [ i ] κ το πήρε σαν italics! Τσέκαρε τότε το άλλο που σου λέω.
« Last Edit: December 03, 2009, 00:50:18 am by Anastacia » Logged

αυτόνομη παρέμβαση στους ηλ-μηχ: http://aphm.espivblogs.net/
συνέλευση για το κόστος φοίτησης: http://synkosfoi.espivblogs.net/

δυστοπία: http://dystopiarap.wordpress.com/
antonios
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 1236



View Profile
Re: [C++] 6η Εργασια 2009
« Reply #9 on: December 03, 2009, 00:46:19 am »

ναι όντως, γι' αυτό και βγαίνουν λίγο περίεργα......

απλά δεν το ήξερα ότι με την new καλούνται αυτόματα οι constructors.................... Huh
Logged
kgiann78
Guest
Re: [C++] 6η Εργασια 2009
« Reply #10 on: December 03, 2009, 19:52:49 pm »

Πράγματι με την new καλούνται αυτόματα οι constructors και αυτό στη συγκεκριμένη περίπτωση μπορεί να δημιουργεί ένα μικρό πρόβλημα...
Τι εννοώ....
Αν στην constructor της κλάσης product_1 έχεις βάλει να ζητάει το κόστος υλικού, το κοστος κατασκευής και το ποσοστό κέρδους τότε αυτό θα στο ζητάει επαναλαμβανόμενα για όλα τα a στοιχεία που θές να δημιουργήσεις. Κάτι τέτοιο όμως δεν το θέλεις αφού ξέρεις ότι όλα τα a στοιχεία του product_1 έχουν το ίδιο κόστος και το ίδιο ποσοστό κέρδους.
Logged
tolisn
Ανερχόμενος/Ανερχόμενη
**
Gender: Male
Posts: 51

Είμαι ηλεκτρολόγος, συμβαίνει κάτι;


View Profile
Re: [C++] 6η Εργασια 2009
« Reply #11 on: December 03, 2009, 21:12:56 pm »

Γιατι να μην ζητησεις λοιπον εκτος constructor τις τιμες αυτές και να τις περνάς ως ορίσματα στην constructor ?
Logged
kgiann78
Guest
Re: [C++] 6η Εργασια 2009
« Reply #12 on: December 03, 2009, 22:40:14 pm »

Ακριβώς αυτό έκανα! Τα παίρνεις μια φορά και μετά με ένα loop τύπου for περνάς σε όλα τα στιγμιότυπα του προϊόντος τις τιμές που θες. Έτσι δε χρειάζεται κάθε φορά που δημιουργείται ένα στιγμιότυπο να βάζεις τις ίδιες τιμές ξανά και ξανά...
Logged
provataki
Αbsolute ΤΗΜΜΥ.gr
*******
Gender: Male
Posts: 3834



View Profile
Re: [C++] 6η Εργασια 2009
« Reply #13 on: December 03, 2009, 23:10:33 pm »

πως ξεχωριζουμε τις κατηγοριες στον τυπο προιοντος;

 Grin Grin Grin Cheesy Grin Grin Grin

μακραν η πιο κακογραμμενη εργασια
Logged

bay bay timy.
kgiann78
Guest
Re: [C++] 6η Εργασια 2009
« Reply #14 on: December 03, 2009, 23:46:29 pm »

Quote from: provataki on December 03, 2009, 23:10:33 pm
πως ξεχωριζουμε τις κατηγοριες στον τυπο προιοντος;

 Grin Grin Grin Cheesy Grin Grin Grin

μακραν η πιο κακογραμμενη εργασια

χαχαχαχαχαχα!!!!  Cheesy Cheesy Cheesy Cheesy Cheesy Cheesy Cheesy Cheesy

Καλό!!!!

Έχεις 2 κατηγορίες σωστά? Το product1 και το product2. Όπως γράφω και πιο πάνω, και οι δυο προέρχονται απο μια κλάση parent, την product η οποία περιέχει κάποια βασικά πράγματα που έχουν και οι δυο κατηγορίες, όπως πχ τις μεταβλητές κόστους προϊόντος, επεξεργασίας και κέρδους. Επίσης η product περιέχει (αλλά δεν υλοποιεί) μια συνάρτηση που να κάνει υπολογισμό συνολικού κόστους της κατηγορίας.

Η υλοποίηση της τελευταίας αυτής συνάρτησης θα πραγματοποιηθεί με την κάθε κλάση κατηγορίας ξεχωριστά αφού η κάθε κατηγορία ζητάει και διαφορετικά πράγματα...

Έτσι όταν έρθει η ώρα για την calck να παίρνει αυτή την συνάρτηση δεν έχει σημασία ποια κατηγορία θα είναι.... Από μόνη της η κάθε κατηγορία θα υλοποιεί την ίδια ακριβώς συνάρτηση αλλά με τα δικά της δεδομένα κάθε φορά....

Γιαυτό λέω και στην αρχή μήπως πρέπει να κάνουμε την calck με τη χρήση προτύπων.....
Logged
Pages: [1] 2 3 ... 5 Go Up Print
Jump to:  

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