1
Ένας εκτυπωτής χρησιμοποιεί μια ουρά εκτύπωσης για να τοποθετεί σε αυτήν τα αρχεία που έχουν σταλεί προς εκτύπωση με τη σειρά που αυτά στάλθηκαν. Κάθε φορά εκτυπώνει το αρχείο που βρίσκεται στην αρχή της ουράς εκτύπωσης, το οποίο και εξάγει. Λόγω της περιορισμένης μνήμης του εκτυπωτή, θεωρούμε ότι στην ουρά μπορούν να εισαχθούν το πολύ 15 αρχεία.
Να αναπτύξετε πρόγραμμα σε ΓΛΩΣΣΑ το οποίο:
- Να διαβάζει επαναληπτικά, με έλεγχο εγκυρότητας, το γράμμα “N” που καθορίζει την έλευση νέου αρχείου ή το γράμμα “Ε” που δηλώνει την προσπάθεια εκτύπωσης ενός αρχείου.
- Κατά την έλευση ενός αρχείου, διαβάζει το όνομά του και εξετάζει αν υπάρχει ο διαθέσιμος χώρος στην ουρά και το αρχείο καταχωρίζεται σε αυτήν με τη διαδικασία της εισαγωγής. Στην περίπτωση που δεν υπάρχει χώρος, εμφανίζεται το μήνυμα «Η ουρά γέμισε. Δε μπορεί να εκτυπωθεί το αρχείο».
- Όταν ο χρήστης δώσει το γράμμα “Ε”, εξετάζει αν υπάρχουν αρχεία προς εκτύπωση και στην
περίπτωση αυτή εξάγεται το κατάλληλο αρχείο εμφανίζοντας τη λέξη «Εκτύπωση» ακολουθούμενη από το όνομα του αρχείου που τυπώνεται.
- Η επαναληπτική διαδικασία ολοκληρώνεται, όταν εκτυπωθούν όλα τα αρχεία που έχουν
τοποθετηθεί στην ουρά.
- Μετά το τέλος της διαδικασίας, το πρόγραμμα εμφανίζει τον συνολικό αριθμό των αρχείων που εκτυπώθηκαν.