4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος

Σχετικά έγγραφα
2 ο Εργαστήριο Αλληλεπίδραση και Animation

> μεγαλύτερο <= μικρότερο ή ίσο < μικρότερο == ισότητα >= μεγαλύτερο ή ίσο!= διαφορετικό

3 ο Εργαστήριο Μεταβλητές, Τελεστές

1 ο Εργαστήριο Συντεταγμένες, Χρώματα, Σχήματα

5 ο Εργαστήριο Δομές Επανάληψης (συνέχεια)

Βασικές Εντολές MicroWorlds Pro.

7 ο Εργαστήριο Θόρυβος 2Δ, Μετακίνηση, Περιστροφή

6 ο Εργαστήριο Σχεδιάζοντας σχήματα από σημεία κορυφών, Θόρυβος-Τυχαίοι Αριθμοί (συνέχεια)

Γραφικά υπολογιστών Εργαστήριο 10 Εισαγωγή στα Sprites

Μπορούμε να χρησιμοποιήσουμε τις παρακάτω μορφές συντεταγμένων με οποιοδήποτε συνδυασμό θέλουμε. Καρτεσιανές συντεταγμένες

Γ ΓΥΜΝΑΣΙΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ ΤΗ ΓΛΩΣΣΑ MicroWorlds Pro

αντίστοιχο γεγονός. Όταν όντως το κουμπί

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι

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

Γνωρίστε το Excel 2007

Προγραμματισμός με Logo στο MicroWorlds Pro

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

Κεφάλαιο 1: Κίνηση και γεωμετρικά σχήματα

Διαδικασιακός Προγραμματισμός

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον (Εργαστήριο 2)

Οδηγίες για το CABRI - GEOMETRY II Μωυσιάδης Πολυχρόνης - Δόρτσιος Κώστας

8 ο Εργαστήριο Ευθυγράμμιση σε πλέγμα

Λεπτομέριες τοιχοποιίας Σχεδίαση κάτοψης

ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5)

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

( Απάντηση: Ο τόνος βρίσκεται δεξιά από το γράμμα Λ. ) ( Απάντηση: Κρατάμε πατημένο το πλήκτρο Shift και πατάμε το πλήκτρο 8. )

«Αβάκιο» Οδηγός χρήσης Μικρόκοσμου που αποτελείται από τις ψηφίδες Καμβάς, Χελώνα, Γλώσσα, Μεταβολέας, Χρώματα.

Φύλλα εργασίας. MicroWorlds Pro. Πολυμεσικές Εφαρμογές με την χρήση της γλώσσας LOGO Στο Γυμνάσιο. Β. Χ. Χρυσοχοΐδης

ΣΧΗΜΑΤΑ-ΕΙΚΟΝΕΣ-ΕΞΙΣΩΣΕΙΣ

Εγχειρίδιο Χρήσης του «Μαθη.Συ.»

ΔΗΜΙΟΥΡΓΙΑ ΣΧΗΜΑΤΩΝ. 1) Προβολή Γραμμές εργαλείων Σχεδίαση. ΜΑΘΗΜΑ 5 ο : ΣΧΗΜΑΤΑ-ΕΙΚΟΝΕΣ-ΕΞΙΣΩΣΕΙΣ 1

του προγράμματος diagrama_rohs.zip )

Δομή Επιλογής. 1. Αν ο σκύλος ακουμπήσει ένα κόκαλο τότε το κόκαλο εξαφανίζεται και ο παίκτης κερδίζει 10 πόντους.

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

ΣΗΜΕΙΩΣΕΙΣ. στη γλώσσα προγραμματισμού. Γκέτσιος Βασίλειος

Ενότητα 5: ΜΕΤΑΒΛΗΤΕΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

A7.2 Δημιουργία Απλής Γραφικής Εφαρμογής σε Περιβάλλον Scratch

Τα αλφαριθμητικά αποτελούνται από γράμματα, λέξεις ή άλλους χαρακτήρες (π.χ. μήλο, Ιούλιος 2009, You win!).

Άσκηση 6 η Ανύψωση Σχημάτων. Στόχος της άσκησης

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

Κεφάλαιο 1.Εντολές κίνησης

Word 3: Δημιουργία πίνακα

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

ΚΕΦΑΛΑΙΟ 3. Μορφοποίηση

Master Mind εφαρμογή στη γλώσσα προγραμματισμού C

Τα Windows Πολύ Απλά και Πολύ Σύντομα

Microsoft Excel Κεφάλαιο 1. Εισαγωγή. Βιβλίο εργασίας

Προγραμματισμός 2 Σημειώσεις εργαστηρίου

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Κεφάλαιο 3 Βασική Σχεδίαση και Επεξεργασία

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo;

Αγώνες αυτοκινήτου Παιχνίδι για 2 παίκτες

Διαδικασιακός Προγραμματισμός

ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΔΟΜΕΣ. Γενική μορφή της επανάληψης επανάλαβε φορές [... ενέργειες...]

Ποιές εντολές του Scratch πρέπει να ξέρω;

ΕΡΩΤΗΣΕΙΣ στην επεξεργασία κειμένου (Word)

1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω:

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

Το μεσαίο πλήκτρο ενεργοποιεί τα Osnaps μόνο αν η μεταβλητή MBUTTONPAN έχει τιμή 1.

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Ιδιότητες αντικειμένων, συγγραφή κώδικα, συντακτικά λάθη

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

Οδηγίες για το Geogebra Μωυσιάδης Πολυχρόνης Δόρτσιος Κώστας

Οδηγίες για το SKETCHPAD Μωυσιάδης Πολυχρόνης - Δόρτσιος Κώστας. Με την εκτέλεση του Sketchpad παίρνουμε το παρακάτω παράθυρο σχεδίασης:

Βιωματικό εργαστήριο ηλεκτρονικών υπολογιστών. Οργάνωση εκπαιδευτικού υλικού με Η/Υ από δραστηριότητες στο Δημοτικό και στο Νηπιαγωγείο.

[συνέχεια του εγγράφου Word 2]

Ας μετονομάσουμε τη γάτα που εμφανίζεται μόλις ανοίγουμε το Scratch. Επιλέγουμε το εικονίδιο Μορφή1 που βρίσκεται στη λίστα αντικειμένων.

Texturing, Animation, Lighting, Rendering

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Slalom Race Computer Game on Scratch

Offset Link.

Ο χώρος όπου βρίσκονται οι εντολές (πλακίδια) με τις οποίες δημιουργούμε τα προγράμματά μας

Μαθήματα Scratch -Δραστηριότητα 1 Παλέτα Κίνηση

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

Εργαστήριο Εφαρμοσμένης Πληροφορικής

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ

Εντολές της LOGO (MicroWorlds Pro)

Διαδικασιακός Προγραμματισμός

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ

4 3 Απόκρυψη /Εμφάνιση

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL

Create Sprite at Runtime

1. ΠΕΡΙΓΡΑΦΗ ΚΑΙ ΑΝΑΛΥΣΗ ΦΥΛΛΩΝ ΕΡΓΑΣΙΑΣ (Ή ΚΑΙ ΑΛΛΟΥ ΔΙΔΑΚΤΙΚΟΥ ΥΛΙΚΟΥ) ΑΞΙΟΛΟΓΗΣΗ ΤΩΝ ΜΑΘΗΤΩΝ

Εφαρμογή δημιουργίας σεναρίων Sctatch

Ελέγξτε την ταινία σας

ΠΡΟΣΟΜΟΙΩΣΗ ΠΑΝΕΛΛΑΔΙΚΩΝ ΕΞΕΤΑΣΕΩΝ Γʹ ΤΑΞΗΣ ΗΜΕΡΗΣΙΟΥ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΑΕΠΠ ΤΡΙΤΗ 18 ΑΠΡΙΛΙΟΥ 2017 ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΠΤΑ (7)

Τεχνικό Σχέδιο - CAD

Μάθημα 3: Αρχιτεκτονική Υπολογιστών

(3) Από την εργαλειοθήκη επιλέξτε το εργαλείο «ετικέτας (Label)». Δημιουργήστε μια ετικέτα στην φόρμα σας.

Σχετική κίνηση αντικειμένων

ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ. Εργαλειοθήκη Παρουσιάζετε το έργο σας Εκκινείτε τα σενάριά σας Σταματάτε όλα τα σενάρια. Οι 8 ομάδες της Παλέτας εντολών

Εφέ επικάλυψης χρησιμοποιώντας χρονικές καθυστερήσεις

ΦΥΛΛΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ 1

Transcript:

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος Μεταβλητές Συστήματος Η Processing χρησιμοποιεί κάποιες μεταβλητές συστήματος, όπως τις ονομάζουμε, για να μπορούμε να παίρνουμε πληροφορίες από το σύστημα κατά την εκτέλεση ενός προγράμματος. Έχουμε ήδη χρησιμοποιήσει τις μεταβλητές συστήματος mousex και mousey παρ ότι δεν τις είχαμε ονομάσει. Γνωρίζαμε όμως ότι χρησιμοποιώντας αυτές τις μεταβλητές μπορούμε να γνωρίζουμε τις συντεταγμένες της θέσης του δείκτη του ποντικιού. Επιπλέον, είδαμε ότι όταν γράφουμε το όνομα της μεταβλητής mousex ή mousey η Processing το εμφανίζει με κόκκινα γράμματα. Αυτό είναι διότι αναγνωρίζει το όνομα που δώσαμε ως το όνομα μιας μεταβλητής συστήματος. Στο προηγούμενο μάθημα που είδαμε πως μπορούμε να χρησιμοποιούμε μεταβλητές στα προγράμματα της Processing είχαμε αναφέρει ότι πριν χρησιμοποιήσουμε μια μεταβλητή πρέπει να την δηλώσουμε με έναν συγκεκριμένο τύπο (int, float, κ.λπ.) και ένα όνομα. Αυτό δεν χρειάζεται να το κάνουμε για τις μεταβλητές συστήματος, αφού είναι ορισμένες από την Processing και γνωρίζει τόσο τον τύπο τους αλλά και το όνομά τους. Όταν δηλώνουμε δικές μας μεταβλητές στα προγράμματα που γράφουμε δεν πρέπει να χρησιμοποιούμε ονόματα που έχει δεσμεύσει η Processing για τις δικές της μεταβλητές συστήματος. Στη συνέχεια παραθέτουμε τις μεταβλητές συστήματος της Processing τις οποίες θα συναντήσουμε σε επόμενα παραδείγματα. width το πλάτος (σε pixel) του παραθύρου εξόδου height το ύψος (σε pixel) του παραθύρου εξόδου framecount πλήθος frames που έχουν ήδη επεξεργαστεί framerate ρυθμός με τον οποίο επεξεργάζονται τα frames (ανά δευτερόλεπτο) screen.width το πλάτος (σε pixel) όλης της οθόνης screen.height το ύψος (σε pixel) όλης της οθόνης key το πιο πρόσφατο πλήκτρο που πατήθηκε στο πληκτρολόγιο keycode ο αριθμητικός κωδικός του πλήκτρου που πατήθηκε keypressed True ή false. Έχει πατηθεί κάποιο πλήκτρο; mousepressed True ή false. Έχει πατηθεί κάποιο κουμπί του ποντικιού; mousebutton Ποιο κουμπί του ποντικιού πατήθηκε; Το αριστερό, το δεξί ή το μεσαίο; Παράδειγμα 1

Άσκηση Πληροφορική: Εισαγωγή στον Προγραμματισμό και την Τεχνολογία των Υπολογιστών Χρησιμοποιήστε τις μεταβλητές συστήματος width και height για να εμφανίσετε στην οθόνη το παρακάτω σχήμα με το ίδιο τρόπο ανεξάρτητα από το μέγεθος του παραθύρου που ορίζεται με την size(). Το μέγεθος των σχημάτων πρέπει να μεταβάλλεται ανάλογα με το μέγεθος του παραθύρου εξόδου. (Δείτε στο προηγούμενο παράδειγμα τον τρόπο με τον οποίο το τετράγωνο σχεδιαζόταν πάντα στο κέντρο του παραθύρου εξόδου. Η αλλαγή μεγέθους των σχημάτων γίνεται με αντίστοιχο τρόπο.) Τυχαίοι Αριθμοί Στο παρακάτω παράδειγμα κώδικα βλέπουμε να σχεδιάζεται ένας κύκλος σε μια ορισμένη θέση του παραθύρου εξόδου, με συγκεκριμένη διάμετρο και χρώμα γεμίσματος και περιγράμματος. Όλες οι παράμετροι βάση των οποίων θα σχεδιαστεί ο κύκλος έχουν ορισμένες τιμές τις οποίες έχουμε αναθέσει σε μεταβλητές. Η εντολή σχεδίασης του κύκλου είναι μέσα στην draw(). Αυτό σημαίνει ότι ο ίδιος κύκλος θα σχεδιάζεται ξανά και ξανά μέχρι τον τερματισμό του προγράμματος. 2

Το αποτέλεσμα του παραπάνω κώδικα θα ήταν πολύ πιο ενδιαφέρον αν κάθε φορά που εκτελείται η εντολή σχεδιασμού ενός κύκλου στην draw() σχεδιαζόταν ένας διαφορετικός κύκλος με διαφορετικό μέγεθος, θέση και χρώμα. Για να το πετύχουμε αυτό θα χρησιμοποιήσουμε την συνάρτηση της Processing random() για την παραγωγή τυχαίων αριθμών. Η random() είναι μια συνάρτηση της Processing όπως είναι και οι συναρτήσεις line(), ellipse() κ.λπ. που έχουμε χρησιμοποιήσει πολλές φορές μέχρι τώρα. Η βασική διαφορά της random() είναι ότι το αποτέλεσμα εκτέλεσής της δεν είναι να σχεδιαστεί κάτι στο παράθυρο εξόδου αλλά να μας επιστρέψει μια τιμή, στη συγκεκριμένη περίπτωση έναν τυχαίο αριθμό. Σε αυτό μοιάζει περισσότερο με τη συνάρτηση abs() που είχαμε χρησιμοποιήσει για να υπολογίζουμε την απόλυτη τιμή ενός αριθμού. random() Παράγει τυχαίους αριθμούς. Κάθε φορά που η random() καλείται, επιστρέφει μια τυχαία τιμή εντός του καθορισμένου εύρους. Εάν μόνο μία παράμετρος περνά στη συνάρτηση, θα επιστρέψει έναν float μεταξύ μηδέν και τη τιμή της παραμέτρου. Για παράδειγμα, η random(5) επιστρέφει τιμές μεταξύ 0 και 5 (ξεκινώντας από το μηδέν, και μέχρι, αλλά μη συμπεριλαμβανομένης της τιμής 5). Εάν έχουν καθοριστεί δύο παράμετροι, η συνάρτηση θα επιστρέψει έναν float με μια τιμή μεταξύ των δύο τιμών. Για παράδειγμα, η random(-5, 10.2) επιστρέφει τιμές που ξεκινούν από -5 έως (αλλά μη συμπεριλαμβανομένης) 10.2. Έτσι η random() λειτουργεί με ακριβώς τον ίδιο τρόπο που θα ακολουθούσαμε αν θέλαμε να πει ένας φίλος μας έναν τυχαίο αριθμό. Θα του ζητούσαμε να μας πει ένα τυχαίο αριθμό εντός ενός συγκεκριμένου εύρους (π.χ. από 1 έως 100) και τον αριθμό που θα μας έλεγε θα τον χρησιμοποιούσαμε στη συνέχεια με όποιον τρόπο θέλαμε. Στο παρακάτω παράδειγμα σχεδιάζουμε ένα ορθογώνιο που το πλάτος του είναι ένας τυχαίος αριθμός από 1 έως 100. Όπως αναφέραμε και παραπάνω η συνάρτηση random() μας επιστρέφει έναν δεκαδικό (float) τυχαίο αριθμό. Αν θέλουμε έναν ακέραιο τυχαίο αριθμό τότε μπορούμε να τον μετατρέψουμε σε τέτοιο με τον τρόπο που φαίνεται στο παρακάτω παράδειγμα. Στην πραγματικότητα με το int(random(1, 100)) εκτελούμε δύο συναρτήσεις. Η random() πρώτα επιστρέφει έναν τυχαίο float από 1 έως 100 και στη συνέχεια η συνάρτηση int() μετατρέπει αυτόν τον float σε ακέραιο int. Θα μπορούσαμε με παρόμοιο τρόπο να γράψουμε την εκτέλεση της int() και random() μέσα στην rect() ως εξής: rect(100,100,int(random(1,100)),50); 3

Παράδειγμα Ξαναγράφουμε το προηγούμενο παράδειγμα με τη σχεδίαση του κύκλου, μόνο που τώρα η τιμή όλων των παραμέτρων προκύπτει με τυχαίο τρόπο. 4

Παράδειγμα Σε αυτή την εκδοχή του Zoog θέλουμε δύο επιπλέον λειτουργίες: Λειτουργία 1: Ο Zoog θα βγαίνει από το κάτω μέρος της οθόνης και στο τέλος θα βγαίνει εκτός οθόνης. Λειτουργία 2: Τα μάτια του Zoog θα χρωματίζονται με τυχαίο τρόπο όσο ο Zoog κινείται 5

Άσκηση Τροποποιήστε το παραπάνω παράδειγμα του Zoog ώστε να κινείται δεξιά και αριστερά όσο μετακινείται προς τα επάνω. Θα πρέπει να χρησιμοποιήσετε την random() σε συνδυασμό με τη μεταβλητή zoogx. Άσκηση Δημιουργήστε ένα δικό σας σχέδιο με τουλάχιστον 3 σχήματα και με τη χρήση μεταβλητών και της random() κάντε το σχήμα σας να κινείται, να αλλάζει χρώμα, μέγεθος κ.λπ. 6