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

Login with username, password and session length

Αναζήτηση

Google

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

Πρακτική Άσκηση ΤΗΜΜΥ 201...
by Διάλεξις
[Today at 00:06:21]

Ισραήλ - Ιράν: Πόλεμος στ...
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: 1426700
Total Topics: 31710
Online Today: 205
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 43
Guests: 161
Total: 204
soktas
gkarapip
kriton
maestros
alexlabis
ThanosV
Nikos_313
mitsos753905
chaniotism
Aftzidou
gcheristanidhs
mpaltzak
ANDVRONTZOS
IBOURAS
Διάλεξις
spetrakis
st3.kt
lasef
natavhoo
BB
sigklitiki
Karkarias
odkoutrolikos
elischat
giannisdomu
acolak
Elenit
Nikikouss
kpapama
fafafa
Petros Ts
stephystam
mmamougiorgi
acapulco
Gray139
Εμφάνιση

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

Νέα!
  Όταν ανεβάζουμε φωτογραφίες στις Ανακοινώσεις και Έκτακτα νέα, βάζουμε τη μεγαλύτερη πλευρά 400 (width=400 ή height=400 ). π.χ. [img height=400 (κλείνει η αγκύλη) 
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 2ο Εξάμηνο > Αντικειμενοστραφής Προγραμματισμός (Moderators: chatzikys, tzortzis) > [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
0 Members and 1 Guest are viewing this topic.
Pages: [1] 2 Go Down Print
Author Topic: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11  (Read 3769 times)
George_RT
Veteran
Εθισμένος στο ΤΗΜΜΥ.gr
******
Gender: Male
Posts: 831



View Profile
[C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« on: November 08, 2013, 00:29:43 am »

Άσκηση Β

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

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

Στο λογισμικό να οριστούν οι κλάσεις project και spesialist οι οποίες να υλοποιούν ένα έργο και έναν τεχνικό αντίστοιχα. Με τη δημιουργία αντικειμένων στον τύπο της κλάσης project, αφού διαβαστεί ο αριθμός n των τεχνικών που θα χρειαστούν για να τελειώσει το έργο, να δεσμεύεται δυναμικά μνήμη για τους πίνακες special και days με n στοιχεία για τον κάθε ένα. Στον πίνακα special να καταχωρούνται, ως αριθμοί τύπου int, οι κωδικοί των ειδικοτήτων που είναι απαραίτητες για να τελειώσει το έργο και στις αντίστοιχες θέσει του πίνακα days οι ημέρες που πρέπει να εργαστεί ο τεχνικός με την αντίστοιχη ειδικότητα. Για τη δημιουργία αντικειμένων στον τύπο της κλάσης spesialist να διαβάζεται, ως ένας αριθμός τύπου int  ο κωδικός της ειδικότητας του τεχνικού και ως ένας αριθμός τύπου float η ημερήσια αμοιβή για την αντίστοιχη ειδικότητα.

Στο πρόγραμμα να οριστεί η συνάρτηση program(…) η οποία να δέχεται έναν πίνακα με αντικείμενα τύπου project τα στοιχεία του οποίου να υλοποιούν τα έργα που ανέλαβε να εκτελέσει η εταιρία και έναν πίνακα με αντικείμενα τύπου spesialist τα αντικείμενα του οποίου να υλοποιούν τους τεχνικούς που διαθέτει η εταιρία. Η συνάρτηση να υπολογίζει την ημέρα έναρξης και την ημέρα περάτωσης για το κάθε έργο. Η συνάρτηση να έχει πρόσβαση στα private στοιχεία των κλάσεων project και spesialist.

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

 

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

Το πρόγραμμα να ακολουθεί την αρχή της ενσωμάτωσης.

Να θεωρηθεί ότι η εταιρία διαθέτει μόνον έναν τεχνικό για κάθε ειδικότητα.

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

Οι ημέρες για την έναρξη και την περάτωση των έργων μέτριουνται από το 1. Έτσι, ένα έργο μπορεί να αρχίσει την ημέρα  3 και να τελειώσει την ημέρα 40,

Δύο ή περισσότερα έργα μπορούν να εκτελούνται ταυτόχρονα εφόσον υπάρχου διαθέσιμοι τεχνικοί
« Last Edit: November 18, 2013, 03:47:59 am by Napoleon » Logged
PureForm
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 520


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #1 on: November 11, 2013, 22:26:24 pm »

Quote
Στον πίνακα special να καταχωρούνται, ως αριθμοί τύπου int, οι κωδικοί των ειδικοτήτων που είναι απαραίτητες για να τελειώσει το έργο και στις αντίστοιχες θέσει του πίνακα days οι ημέρες που πρέπει να εργαστεί ο τεχνικός με την αντίστοιχη ειδικότητα.
οποτε τον πινακα days δεν τον θελει δyο διαστασεων θεωρειται δεδομενο πωσ ειναι παραλληλος με τον special?
« Last Edit: November 11, 2013, 22:35:14 pm by PureForm » Logged
vasilis1005
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 1131


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #2 on: November 13, 2013, 14:07:12 pm »

η κλαση specialist θα κληρονομει την ειδικοτητα του τεχνικου απο την κλαση project ή βλακειες λεω;
Logged
PureForm
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 520


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #3 on: November 13, 2013, 21:56:59 pm »

δεν χρειαζονται κληρονομικοτητες μονο friend την program κανε
Logged
paul
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Gender: Male
Posts: 701



View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #4 on: November 14, 2013, 19:43:00 pm »

Quote from: PureForm on November 13, 2013, 21:56:59 pm
δεν χρειαζονται κληρονομικοτητες μονο friend την program κανε

noob here...
πως γινεται αυτο?
Logged
sk0uf
Ανερχόμενος/Ανερχόμενη
**
Posts: 88


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #5 on: November 14, 2013, 20:08:06 pm »

Με ποιο κριτηριο θα μετραμε το πως περναει μια μερα;


Edit:Άκυρο το βρήκα!
« Last Edit: November 14, 2013, 20:59:34 pm by sk0uf » Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #6 on: November 14, 2013, 21:12:53 pm »

Quote from: paul on November 14, 2013, 19:43:00 pm
Quote from: PureForm on November 13, 2013, 21:56:59 pm
δεν χρειαζονται κληρονομικοτητες μονο friend την program κανε

noob here...
πως γινεται αυτο?

Check this out
Logged

vasilis1005
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 1131


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #7 on: November 15, 2013, 12:51:17 pm »

αρχικοποιω την κλαση project οποτε εκει μεσα θα ορισω τον πινακα special;

αν ναι μπορω να τον χρησιμοποιησω εξω απο την κλαση project (π.χ  στην αρχικοποιηση της κλασης specialist);
Logged
L
WebSlave
Καταστραμμένος
***
Posts: 5562


Bad faith


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #8 on: November 15, 2013, 13:14:26 pm »

Δεν είμαι σίγουρος ότι καταλαβαίνω ακριβώς πού κολλάς, αλλά θα σου πω τα εξής:

Ο πίνακας special δηλώνεται ως private στοιχείο της κλάσης project και περιέχει n int τιμές.

Επειδή θέλουμε δυναμική δέσμευση μνήμης (δεν ξέρεις το n) θα δηλωθεί ως int *special και μετά θα δεσμεύεται στον constructor μνήμη κατά τα γνωστά.

H συνάρτηση program είναι friend, οπότε θα έχει πρόσβαση στον special των projects που θα της περάσεις.
Logged

It was the best of times, it was the worst of times, it was the age of wisdom, it was the age of foolishness, it was the epoch of belief, it was the epoch of incredulity, it was the season of Light, it was the season of Darkness, it was the spring of hope, it was the winter of despair, we had everything before us, we had nothing before us.

vasilis1005
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 1131


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #9 on: November 15, 2013, 13:20:33 pm »

Quote from: L on November 15, 2013, 13:14:26 pm
Δεν είμαι σίγουρος ότι καταλαβαίνω ακριβώς πού κολλάς, αλλά θα σου πω τα εξής:

Ο πίνακας special δηλώνεται ως private στοιχείο της κλάσης project και περιέχει n int τιμές.

Επειδή θέλουμε δυναμική δέσμευση μνήμης (δεν ξέρεις το n) θα δηλωθεί ως int *special και μετά θα δεσμεύεται στον constructor μνήμη κατά τα γνωστά.

H συνάρτηση program είναι friend, οπότε θα έχει πρόσβαση στον special των projects που θα της περάσεις.

οκ αυτα τα εκανα (εκτος απο την  programm) αλλα στον construstor της specialist δεν θα κανω τιποτα;

δηλαδη απλα θα γραψω
Code:
specialist::specialist();
Logged
L
WebSlave
Καταστραμμένος
***
Posts: 5562


Bad faith


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #10 on: November 15, 2013, 13:23:16 pm »

(Αυτό είναι άλλη ερώτηση από την προηγούμενη)

Γιατί να είναι κενός ο constructor;
Πως θα βάλεις τις μεταβλητές του specialist μέσα;
Logged

It was the best of times, it was the worst of times, it was the age of wisdom, it was the age of foolishness, it was the epoch of belief, it was the epoch of incredulity, it was the season of Light, it was the season of Darkness, it was the spring of hope, it was the winter of despair, we had everything before us, we had nothing before us.

vasilis1005
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 1131


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #11 on: November 15, 2013, 13:33:18 pm »

εγω νομιζα οτι για να ορισω την αμοιβη του καθε τεχνικου επρεπε μεσα στον constructor της specialist να χρησιμοποιω τον πινακα special που εχω ορισει μεσα στην κλαση project και μετα να λεω οτι για τον τεχνικο με ταδε κωδικο τετοια αμοιβη κτλ.


αυτα θα γινουν μεσα στην program;
« Last Edit: November 15, 2013, 14:21:02 pm by vasilis1005 » Logged
Exomag
Veteran
Διεστραμμένος
******
Gender: Male
Posts: 22045


unfortunate...


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #12 on: November 15, 2013, 15:27:21 pm »

Quote from: vasilis1005 on November 15, 2013, 13:33:18 pm
εγω νομιζα οτι για να ορισω την αμοιβη του καθε τεχνικου επρεπε μεσα στον constructor της specialist να χρησιμοποιω τον πινακα special που εχω ορισει μεσα στην κλαση project και μετα να λεω οτι για τον τεχνικο με ταδε κωδικο τετοια αμοιβη κτλ.


αυτα θα γινουν μεσα στην program;

Εκτός και αν δε κατάλαβα καλά, ο constructor τκς κλάσης specialist θα πρέπει να διαβάζεις δύο τιμές (κώδικας ειδικότητας και αμοιβή) τις οποίες και θα καταχωρεί σε αντίστοιχες μεαβλητές της κλάσης.
Οπότε κάθε αντικείμενο στον τύπο specialist (που υλοποιεί έναν εργάτη) θα έχει δύο μεταβλητές, την ειδικότητα και την αμοιβή αυτού του ατόμου.
Logged

L
WebSlave
Καταστραμμένος
***
Posts: 5562


Bad faith


View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #13 on: November 15, 2013, 16:15:00 pm »

Όπως τα λέει ο Exomag.
Logged

It was the best of times, it was the worst of times, it was the age of wisdom, it was the age of foolishness, it was the epoch of belief, it was the epoch of incredulity, it was the season of Light, it was the season of Darkness, it was the spring of hope, it was the winter of despair, we had everything before us, we had nothing before us.

molotov49
Καταξιωμένος/Καταξιωμένη
***
Gender: Male
Posts: 269



View Profile
Re: [C++] Άσκηση B - 2013/2014 - Προθεσμία 17/11
« Reply #14 on: November 15, 2013, 16:32:20 pm »

στον constructor της spesialist θα δημιουργήσω πινακα αντικειμενων??
Logged
Pages: [1] 2 Go Up Print
Jump to:  

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