ΑΣΚΗΣΕΙΣ
ΑΣΚΗΣΗ 1
Να γραφεί πρόγραμμα που ορίζει μια συνάρτηση με όνομα square η οποία σχεδιάζει ένα τετράγωνο και χρησιμοποιεί ως παράμετρο το μήκος της πλευράς του. Ακολούθως, το πρόγραμμα, κάνοντας χρήση της προηγούμενης συνάρτησης, σχεδιάζει 3 κεκλιμένα τετράγωνα με μήκος πλευράς 100 pixels (σύμφωνα με την παρακάτω εικόνα).
Η κλίση κάθε τετραγώνου σε σχέση με το προηγούμενο είναι 20 μοίρες.
ΑΣΚΗΣΗ 2
Να γραφεί πρόγραμμα που σχεδιάζει το επόμενο γραφικό (το σπίτι του Άγιου Βασίλη). Στο γραφικό αυτό, το τετράγωνο έχει μήκος πλευράς 150 pixels.
Βοήθεια: Ο υπολογισμός του μήκους της διαγώνιου c του τετραγώνου μπορεί να γίνει με βάση τον τύπο του Πυθαγόρειου Θεωρήματος 𝑐 = √𝑎2 + 𝑏2. Για τον υπολογισμό της ρίζας ενός αριθμού, θα πρέπει να εισάγετε τη βιβλιοθήκη math και να καλέσετε ανάλογα τη συνάρτηση math.sqrt().
ΑΣΚΗΣΗ 3
Να γραφεί πρόγραμμα που σχεδιάζει το ακόλουθο γραφικό (χιονάνθρωπος), χρησιμοποιώντας πάχος στυλό = 3 και ξεκινάει στο σημείο (0, 200) της οθόνης.
ΑΣΚΗΣΗ 4
Να γραφεί πρόγραμμα που ορίζει μια συνάρτηση με όνομα line η οποία σχεδιάζει μια διακεκομμένη γραμμή στην οθόνη.
Η συνάρτηση χρησιμοποιεί 2 παραμέτρους: το πλήθος των τμημάτων της διακεκομμένης γραμμής και το μήκος κάθε τμήματος σε pixels. Το διάκενο μεταξύ δύο συνεχόμενων τμημάτων θα είναι ίσο με το μισό μήκος ενός τμήματος.
Να καλέσετε τη συνάρτηση 2 φορές. Την 1η φορά να σχεδιάσετε μια γραμμή με 10 τμήματα και μήκος τμήματος 30 pixels αρχίζοντας από το σημείο (-300,50). Τη 2η φορά η γραμμή θα έχει 15 τμήματα, μήκος τμήματος 20 pixels και θα αρχίζει στο (-300,0).
ΑΣΚΗΣΗ 5
Να γραφεί πρόγραμμα που σχεδιάζει ένα γεμισμένο εξάγωνο στην οθόνη. Το σχήμα πρέπει να έχει τις εξής ιδιότητες: πλάτος στυλό = 10, χρώμα στυλό = “blue”, χρώμα γεμίσματος = “yellow” και μήκος πλευράς = 200. Το γραφικό θα πρέπει να ξεκινάει στο σημείο (-100, 200) της οθόνης.
ΑΣΚΗΣΗ 6
Να γραφεί πρόγραμμα που ορίζει μια συνάρτηση star που σχεδιάζει στην οθόνη ένα γεμισμένο αστέρι με 10 κορυφές. Η συνάρτηση χρησιμοποιεί 3 παραμέτρους: το μήκος πλευράς του αστεριού, το χρώμα στυλό και το χρώμα γεμίσματος.
Το πρόγραμμα ζητάει από το χρήστη να δώσει τις απαραίτητες τιμές από το πληκτρολόγιο και σχεδιάζει ένα αστέρι αρχίζοντας από το σημείο (-100,100) και έχοντας πάχος στυλό = 5.
ΑΣΚΗΣΗ 7
Να ορίσετε συνάρτηση pentagon που σχεδιάζει ένα πεντάγωνο με μήκος πλευράς = 100 pixels και πάχος στυλό = 3 pixels.
Επίσης, ορίστε συνάρτηση tilted_pentagon που σχεδιάζει ένα πεντάγωνο ιδίου μεγέθους κεκλιμένο 20 μοίρες προς τα αριστερά και θα έχει τυχαίο χρώμα στυλό.
Η δεύτερη συνάρτηση θα καλεί την πρώτη για να λειτουργήσει. Διαθέσιμα χρώμα επιλογής είναι τα: blue, black, brown, red, yellow, green, orange, beige, turquoise, pink.
Στο τέλος, το πρόγραμμα θα εμφανίζει 18 κεκλιμένα πεντάγωνα (δες σχήμα) καλώντας τις προηγούμενες συναρτήσεις. Το αρχικό σημείο σχεδίασης θα είναι το (50,50).
ΑΣΚΗΣΗ 8
Να ορίσετε συνάρτηση hexagon που σχεδιάζει ένα εξάγωνο με μήκος πλευράς = 100 pixel. Ακολούθως, συνδυάστε τη συνάρτηση αυτή για να ορίσετε μια νέα συνάρτηση honeycomb η οποία σχεδιάζει το ακόλουθο σχήμα στην οθόνη ξεκινώντας από το σημείο (-50-,50).
Βοήθεια: Η συνάρτηση hexagon πρέπει να επιστρέφει τη χελώνα ακριβώς στο ίδιο σημείο που ξεκίνησε με την ίδια αρχική θέση και κατεύθυνση.
ΑΣΚΗΣΗ 9
Κατασκευάστε συνάρτηση shape που σχεδιάζει ένα σχήμα με όσες πλευρές θέλει ο χρήστης (υποθέτουμε ότι είναι > 2), ό,τι μήκος πλευράς θέλει και ό,τι χρωματικό συνδυασμό επιθυμεί για χρώμα στυλό και χρώμα γεμίσματος. Ωστόσο, το πάχος στυλό θα είναι σταθερά 5 pixel.
Η συνάρτηση shape έχει 4 παραμέτρους: το πλήθος των πλευρών, το μήκος κάθε πλευράς, το χρώμα στυλό (ως string) και το χρώμα γεμίσματος (ως string). Οι τιμές που θα χρησιμοποιηθούν ως ορίσματα στην κλήση της συνάρτησης, δίνονται από το χρήστη.
Βοήθεια: Το άθροισμα των γωνιών κάθε πιθανού σχήματος είναι πάντα 360 μοίρες.
ΑΣΚΗΣΗ 10
Να κατασκευάσετε συνάρτηση house που σχεδιάζει ένα σπίτι στην οθόνη, βασισμένη σε 3 επιμέρους συναρτήσεις με ονόματα square, triangle και rectangle.
square (μέγεθος = 100 pixel, χρώμα στυλό = black, χρώμα γεμίσματος = yellow)
triangle (μέγεθος = 100 pixel, χρώμα στυλό = black, χρώμα γεμίσματος = red)
rectangle (μέγεθος = 60x40 pixel, χρώμα στυλό = black, χρώμα γεμίσματος = brown)
ΑΣΚΗΣΗ 11
Κατασκευάστε συνάρτηση spiral που σχεδιάζει μια σπείρα στην οθόνη.
Η συνάρτηση χρησιμοποιεί 3 παραμέτρους: το μήκος της αρχικής γραμμής της σπείρας (είναι η πρώτη γραμμή στο εσωτερικό της σπείρας), το βήμα που καθορίζει πόσο μεγαλύτερη είναι η κάθε νέα γραμμή σε σχέση με την προηγούμενη, και το πλήθος των γραμμών της σπείρας.
Όλες οι τιμές θα δίνονται από τον χρήστη. Αν ο χρήστης επιλέξει άρτιο πλήθος γραμμών για τη σπείρα (πχ. 20) τότε συνάρτηση τα σχεδιάζει μια μονόχρωμη σπείρα. Διαφορετικά, αν ο χρήστης επιλέξει περιττό πλήθος γραμμών για τη σπείρα (π.χ. 21), η συνάρτηση θα σχεδιάζει μια έγχρωμη σπείρα, όπου η επιλογή του χρώματος κάθε γραμμής θα είναι τυχαία.
Μακρής Ηλίας Π.Ε. Πληροφορικής