1. Μπορείτε να χρησιμοποιείτε εντολές & συναρτήσεις που δεν έχουν αναφερθεί στο μάθημα, εκτός εάν σε κάποια άσκηση περιορίζεται τη χρήση τους από τις οδηγίες στην εκφώνηση ή στα σχόλια του κώδικα που αφορούν τη συγκεκριμένη άσκηση. Πάντως, όλες οι ασκήσεις μπορούν να λυθούν χρησιμοποιώντας έννοιες που ήδη έχουν καλυφθεί στις διαλέξεις.
  2. Όπου υπάρχουν γραμμές _____________________ στο αρχείο κώδικα της άσκησης θα πρέπει να τις αντικαταστήσετε με δικό σας κώδικα. Δεν μπορείτε να τις αφαιρείτε τελειώς (χωρίς να προσθέσετε εκεί κώδικα) ούτε να εισάγετε κώδικα σε επιπλέον γραμμές. Ο αριθμός των χαρακτήρων (_) στα κενά δεν είναι ενδεικτικός της απάντησης. Αυτή μπορεί να χρησιμοποιεί περισσότερο ή λιγότερο χώρο. Αφού συμπληρώσετε την απάντησή σας, αφαιρέστε όλους τους χαρακτήρες _ αλλιώς θα λάβετε μήνυμα λάθους από τον διερμηνευτή καθώς αποτιμάτε τις συναρτήσεις.
  3. Δεν μπορείτε να εισάγετε κώδικα σε σημεία όπου δεν υποδεικνύεται (στα σχόλια ή στην εκφώνηση) ότι μπορείτε να το κάνετε αυτό. 
  4. Δεν μπορείτε να αφαιρείτε κώδικα (εκτός των ___________________)
  5. Για να εκτελέσετε τους ελέγχους ορθότητας στα doctests από τη γραμμή εντολών του συστήματός σας δώστε: 
    > python -m doctest -v hw1.py

    Σε unix/Linux ή MacOS γράψτε:

    > python3 -m doctest -v hw1.py

    (Σιγουρευτείτε ότι τρέχετε την εντολή αυτή από κατάλογο που περιέχει το hw1.py.)

  6. Εάν θέλετε να εκτελέσετε τους ελέγχους ορθότητας στα doctests μέσα από το διαδραστικό περιβάλλον του διερμηνευτή, δώστε τις εντολές:
    >>> from hw1 import *
    >>> from doctest import testmod
    >>> import sys
    >>> testmod(sys.modules['hw1'])
    (Θυμηθείτε να τρέξετε τον διερμηνευτή από τον κατάλογο που περιέχει το hw1.py.)
  7. Εάν κάνετε αλλαγές στον κώδικα και (αφού τις αποθηκεύσετε στον text editor) επιθυμείτε να τις ξαναφορτώσετε στο διαδραστικό περιβάλλον του διερμηνευτή, δεν αρκεί η εντολή
    >>> from hw1 import * 

    γιατί δεν λαμβάνει υπόψη τις τελευταίες αποθηκευμένες αλλαγές. Για να ληφθούν υπόψη, εκτελέστε:

    >>> import sys
    >>> del sys.modules['hw1']
    >>> from hw1 import * 
  8. Η βαθμολόγηση των ασκήσεων θα βασιστεί σε ελέγχους παρόμοιους με αυτούς που περιέχονται στο αρχείο hw1_tests.txt που βρίσκεται στα έγγραφα του eclass.

    Για να εκτελέσετε τους ελέγχους από τη γραμμή εντολών των Windows δώστε:

    > python -m doctest -v hw1_tests.txt

    Σε unix/Linux ή MacOS γράψτε στο shell:

    > python3 -m doctest -v hw1_tests.txt

    (Σιγουρευτείτε ότι τρέχετε την εντολή αυτή από κατάλογο που περιέχει τόσο hw1.py όσο και το hw1_tests.py.)

  9. Μπορείτε να παραδίδετε στο eclass πολλές φορές τις απαντήσεις σας μέχρι τη λήξη της προθεσμίας υποβολής. Θα βαθμολογηθεί η τελευταία έκδοση που παραδώσατε.

  10. Διαβάζετε τις συζητήσεις (forum) στη σελίδα του μαθήματος στο eclass για σχόλια και διευκρινήσεις στις ασκήσεις. Μπορείτε και εσείς να συμμετέχετε στο forum απαντώντας στα σχόλια των συμφοιτητών σας.

Οδηγίες παράδοσης

Η υποβολή των απαντήσεων θα γίνεται αποκλειστικά μέσω eclass για όσους/ες φοιτητές/τριες έχουν Αριθμό Μητρώου (ΑΜ).

Ειδικά και μόνο για τους φοιτητές που δεν έχουν ΑΜ και συνεπώς δεν είναι εγγεγραμμένοι στο eclass, οι ασκήσεις θα παραδίδονται σύμφωνα με τις οδηγίες που ακολουθούν: