ΠΟΛΥΤΕΧΝΕΙΟ
ΚΡΗΤΗΣ Τμήμα Ηλεκτρονικών Μηχ. και Μηχ. Υπολογιστών ΛΟΓ 201: Τεχνολογία Λογισμικού
ΙΙ |
Ημερομηνία εξέτασης: |
Πέμπτη 14 Σεπτεμβρίου 2000 |
Διάρκεια: | 3 ώρες |
Ποσοστό επί της συνολικής βαθμολογίας: |
60% |
Ένα πολυώνυμο της μορφής:
a_n x^n + a_n-1 x^n-1 + ... + a_1 x + a_0
μπορεί να αναπαρασταθεί με έναν πίνακα (array) n+1 πραγματικών αριθμών, που
να περιέχει τις τιμές a_0, a_1, ..., a_n. Να υλοποιηθεί μια κλάση C++ με το
όνομα Polynomial
που να χρησιμοποιεί αυτή την αναπαράσταση. Η κλάση
πρέπει να υποστηρίζει τουλάχιστον τις ακόλουθες λειτουργίες.
==
.Σημείωση: δύο πολυώνυμα είναι ίσα όταν είναι ίσοι οι αντίστοιχοι συντελεστές. Προσοχή απαιτείται στην περίπτωση που ένα πολυώνυμο περιέχει μηδενικούς συντελεστές.
Να γραφεί ένα πρόγραμμα σε περιβάλλον Unix System V που να προσομοιώνει τις λειτουργίες κατάθεσης και ανάληψης σε τραπεζικό λογαριασμό. Κατά την εκτέλεσή του, το πρόγραμμα θα αποτελείται από δύο διεργασίες που θα τρέχουν διαρκώς και θα επικοινωνούν μέσω μιας κοινής μεταβλητής (κοινή μνήμη). Η μεταβλητή αυτή θα έχει με τύπο double και θα παριστάνει το υπόλοιπο του λογαριασμού. Η πρώτη διεργασία θα καταθέτει διαρκώς 100 δραχμές στο λογαριασμό, ενώ η δεύτερη θα αφαιρεί διαρκώς 642 δραχμές, υπό την προϋπόθεση το ποσό αυτό να υπάρχει στο λογαριασμό.
Σημείωση: Πρέπει να εξασφαλίσετε ότι το υπόλοιπο του λογαριασμού θα αρχικοποιείται κατάλληλα και ότι οι δυο εργασίες δε θα μπορούν να το προσπελαύνουν συγχρόνως.
Καλή επιτυχία.
nickie@softlab.ntua.gr
).
15/9/2000
.