• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
June 18, 2025, 02:28:47 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.
June 18, 2025, 02:28:47 am

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Πρακτική Άσκηση ΤΗΜΜΥ 201...
by chris_p30
[Today at 00:45:33]

[Μεταφορά και Διανομή ΗΕ]...
by Nikos_313
[Today at 00:10:29]

Ισραήλ - Ιράν: Πόλεμος στ...
by Katarameno
[June 17, 2025, 21:32:50 pm]

[Ψηφιακά Ολοκληρωμένα Κυκ...
by tzortzis
[June 17, 2025, 21:25:42 pm]

[Εφ.Θερμοδυναμική] Γενικέ...
by PAPARI69
[June 17, 2025, 20:59:13 pm]

[Γραφική] Λυμένα θέματα
by okanpala
[June 17, 2025, 18:56:22 pm]

Τι ακούτε αυτήν τη στιγμή...
by Katarameno
[June 17, 2025, 14:25:00 pm]

Αντικατάστασης πυκνωτή σε...
by george14
[June 17, 2025, 13:58:20 pm]

Πότε θα βγει το μάθημα; -...
by tzortzis
[June 17, 2025, 13:19:53 pm]

Αποτελέσματα Εξεταστικής ...
by george14
[June 17, 2025, 12:08:25 pm]

[ΨEE] Γενικές απορίες και...
by Juror8
[June 17, 2025, 12:06:57 pm]

[Οργάνωση Υπολογιστών] Γε...
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]
Στατιστικά
Members
Total Members: 9961
Latest: Poli
Stats
Total Posts: 1426704
Total Topics: 31710
Online Today: 215
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 18
Guests: 161
Total: 179
Nikos Spiliás
kchristoua
marwt
simos
mavropan
Yamal
abunchofcells
mitsos753905
Apaugasma
ANDVRONTZOS
aplos paratiritis
andreassifo
tank
Akis Papanikolaou
Theosarm
CasualUndergrad
george pap
Εμφάνιση

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

Νέα!
Για οποιοδήποτε πρόβλημα με register/login, στείλτε email στο contact@thmmy.gr.
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 5719 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...