####ID 46-codes #### Άσκηση: #### #### Έχετε μόλις προσληφθεί στην υπηρεσία αντικατασκοπείας, στο τμήμα κρυπτογραφίας, και ο προϊστάμενός σας #### σας δίνει το αρχείο #### #### words.txt (κατεβάστε το μαζί με τα words1.txt, user.py, tester.py, στον ίδιο κατάλογο) #### #### το οποίο η υπηρεσία απέκτησε με μυστηριώδη τρόπο και πρέπει να αποκρυπτογραφήσει. Πρόκειται για ένα #### αρχείο κειμένου στο οποίο η κάθε γραμμή περιέχει ένα αριθμό από πεντάδες (λέξεις με 5 γράμματα). #### #### Ως πρώτη δουλειά που πρέπει να γίνει σας ανατίθεται η στατιστική ανάλυση του αρχείου: βρείτε κατ' αρχήν όλες τις #### πεντάδες που εμφανίζονται παραπάνω από μία φορά, καθώς η κρυπτανάλυση θα ξεκινήσει από αυτές. #### #### Γράψτε μια συνάρτηση #### #### words(filename) #### #### η οποία παίρνει ως όρισμα το όνομα του αρχείου με τις πεντάδες και επιστρέφει μια λίστα που περιέχει #### μέσα, μία φορά την κάθε μία, όλες τις πεντάδες που εμφανίζονται στο αρχείο αυτό παραπάνω από μια φορά. #### Οι πεντάδες αυτές πρέπει να είναι ταξινομημένες σε αύξουσα σειρά (λεξικογραφική διάταξη). #### #### Στον tester υπάρχει μόνο μια περίπτωση ελέγχου αλλά στον tester που ελέγχει το πρόγραμμά σας για βαθμολόγηση #### θα υπάρχει άλλη μία. #### #### *** Γενικές Οδηγίες: *** #### #### Γράφετε τον κώδικά σας αποκλειστικά ανάμεσα στις γραμμές START και STOP παρακάτω. #### Δεν πρέπει να πειράξετε καθόλου τις υπόλοιπες γραμμές #### #### Για να τρέξετε το πρόγραμμά σας (αποθηκευμένο στο αρχείο user.py) δίνετε την εντολή #### #### python3 user.py #### #### ενώ για να το ελέγξετε με τον tester δίνετε την εντολή #### #### python3 tester.py #### #### φροντίζοντας τα αρχεία user.py και tester.py να είναι στον ίδιο κατάλογο (directory) #### #### ****ΠΡΟΣΟΧΗ*****ΠΡΟΣΟΧΗ*****ΠΡΟΣΟΧΗ*****ΠΡΟΣΟΧΗ*****ΠΡΟΣΟΧΗ*****ΠΡΟΣΟΧΗ**** #### Μη γράψετε καμιά εντολή εισόδου (input) ή εξόδου (print) #### στον κώδικα που θα βάλετε ανάμεσα στα START και STOP. Αυτά είναι ήδη γραμμένα. #### Αν βάλετε και σεις το πρόγραμμά σας βγαίνει λάθος. #### filename = "words.txt" #### #### #### Υποθέσεις: #### #### Στο σημείο αυτό έχει οριστεί το όνομα του αρχείου με τις πεντάδες στη μεταβλητή filename #### #### Απαιτήσεις: #### #### Στο τέλος του προγράμματός σας θα πρέπει #### #### η συνάρτηση words #### #### να υπολογίζει αυτό που περιγράφεται στην εκφώνηση. #### Μην αλλάξετε ό,τι είναι από τη γραμμή αυτή και πάνω ####START Από δω και κάτω γράφετε το πρόγραμμά σας.---------------------------------------------------------------- def words(s): #### ####STOP Μην αλλάξετε ό,τι είναι από τη γραμμή αυτή και κάτω-------------------------------------------------------- print("Η απάντηση είναι {}.".format(words(filename))) ####