By DePaul Dimadis
Choose your prefered Language: greek_flag uk_flag

Μια βιομηχανική μονάδα επιθεωρεί το μηχανολογικό της εξοπλισμό σύμφωνα με τις οδηγίες των κατασκευαστών των μηχανών. Για κάθε μηχανή και για κάθε επιθεώρηση που γίνεται από το έτος 2007 μέχρι και το έτος 2016 είναι γνωστά τα εξής δεδομένα: (ΥΠΟΔΕΙΞΗ: για κάθε μηχανή υπάρχουν πολλές επιθεωρήσεις σε κάθε έτος)
- Κωδικός μηχανής – ακέραιος θετικός αριθμός τύπου int [όρια 1-99] (ΥΠΟΔΕΙΞΕΙΣ : 1. δεν υπάρχουν όλοι οι κωδικοί από το 1-99, δηλ. το ακριβές πλήθος των μηχανών δεν είναι γνωστό και εάν απαιτηθεί πρέπει να προσδιοριστεί. 2. Επίσης, εάν ζητηθεί, θα πρέπει να προσδιοριστεί και το σύνολο των υπαρχόντων κωδικών μηχανών).
- Ημερομηνία ελέγχου στη μορφή ΜΜΕΕ (ΜΜ = μήνας, ΕΕ = έτος). Επιτρεπτές τιμές : 1<=ΜΜ<=12 και για το έτος το εύρος [2007-2016].
- Κατάσταση της μηχανής σε 10 διαφορετικά σημεία επιθεώρησης με επιτρεπτές τιμές 0 και 1 (0 καλή κατάσταση και 1 κακή κατάσταση).
Να γραφεί μια κλάση με όνομα i_mach και private μέλη – δεδομένα τα παραπάνω.
Στη συνάρτηση main( ) :
1. να οριστεί ένας πίνακας αντικειμένων της κλάσης i_mach Ν θέσεων (Ν = γνωστό, 100<= Ν <=999) και να αρχικοποιηθούν όλες οι θέσεις του πίνακα με χρήση default constructor, θέτοντας μηδενικές τιμές για όλα τα αριθμητικά δεδομένα.
2. Να γίνει εισαγωγή δεδομένων στον πίνακα αντικειμένων της i_mach μέσω δομητή (constructor) της κλάσης, χρησιμοποιώντας μόνον τυχαίους αριθμούς, στα όρια τιμών που έχουν δοθεί. Επειδή οι επιθεωρήσεις είναι συχνές κάθε μηχανή θα εμφανίζεται περισσότερες από μία φορές ανά έτος.
3. Χρησιμοποιώντας όλα τα αντικείμενα του πίνακα:
a. Να βρείτε και να εμφανίσετε τo πλήθος των επιθεωρήσεων για κάθε κωδικό μηχανής.
b. Να βρείτε και να εμφανίσετε, για κάθε έτος το πλήθος των επιθεωρήσεων για μία μηχανή καθώς και το πλήθος των 1 που έλαβε και στα 10 διαφορετικά σημεία επιθεώρησης στο έτος αυτό. Ο κωδικός της μηχανής εισάγεται μέσω της εντολής cin στη main().
c. Να δημιουργήσετε και να εμφανίσετε έναν μονοδιάστατο δυναμικό πίνακα που θα περιλαμβάνει, σε μορφή ζευγών, τον κωδικό της μηχανής και το έτος επιθεώρησης κάθε φορά που το πλήθος των 0 είναι μεγαλύτερο του 5.

Να οριστεί μια απορρέουσα κλάση με όνομα new_i_mach που θα περιλαμβάνει ως επιπλέον private μέλη – δεδομένα:
  Το κόστος επιθεώρησης της κατάστασης καθενός από τα 10 σημεία της κάθε μηχανής (θετικοί αριθμοί τύπου double).
Στη συνέχεια να γράψετε :
τη συνάρτηση του constructor (δομητή) για την εισαγωγή των δεδομένων σε ένα αντικείμενο της κλάσης new_i_mach χρησιμοποιώντας μόνον τυχαίους αριθμούς και θέτοντας μόνοι σας τα αντίστοιχα άνω όρια τιμών της συνάρτησης rand().