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

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

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

Transcript

1 ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΕΦΑΡΜΟΣΜΕΝΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δημιουργία δισδιάστατου βίντεο παιχνιδιού με χρηση αντικειμενοστραφούς C# στο πλαίσιο εργασίας XNA4 (2D video game development with object-oriented C# under XNA4 framework) ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΓΕΡΑΚΑΣ ΓΕΩΡΓΙΟΣ ΗΛΙΑΣ AM: 4929 ΚΑΘΗΓΗΤΗΣ: ΚΩΝΣΤΑΝΤΑΡΑΣ ΑΝΤΩΝΙΟΣ Χανιά, 20/10/2014 1

2 ΠΕΡΙΕΧΟΜΕΝΟ 1) Εξοικείωση με το πρόγραμμα Visual studio Express 2010(Σελίδα 3). 2) Σύντομη εισαγωγή στη C# (Σελίδα 8). 3) Εισαγωγη στη μηχανές παιχνιδιού (Σελίδα 10). 4) Εισαγωγή στη XNA 4.0 (Σελίδα 11). 5) Διάγραμμα ροής για το πως σχετίζονται τα αντικείμενα (Σελίδα 16). 6) Ανάλυση του κώδικα(σελίδα 17). 7) Το περιβάλλον του παιχνιδιού(σελίδα 49) 8) Στάδια βελτίωσης του παιχνιδιού(51) 9) Βιβλιογραφία(Σελίδα 55) 2

3 Εξοικειωση με το προγραμμα Visual studio Express 2010 Στο σημείο 1 που φαίνεται στην εικόνα μπορούμε να δημιουργήσουμε ένα καινούριο project, όπως θα δούμε και στην συνέχεια. [2] New project 3

4 Τα παρακατω αρχεια δημιουργουνται αυτοματα απο την ΧΝΑ οταν κανουμε βίντεο παιχνίδι για Windows ή XBOX. [2] 4

5 Στο σημείο 2 βρίσκονται όλες οι κλάσεις μας και τα αρχεία μας που έχουμε δημιουργήσει [2] Με το πλήκτρο F5 τρέχει το πρόγραμμα(debug) 5

6 Δημιουργια class[2] [1] 6

7 Εισαγωγή αρχείων γραφικών όπως το παρακάτω αρχείο (png). Kάποια απο τα αρχεία είναι στο φάκελο sprites. [2] 7

8 Σύντομη εισαγωγη στη C# [11] Η C# είναι μία ολοκληρωμένη αντικειμενοστραφής γλώσσα προγραμματισμού σχεδιασμένη για τη δημιουργία λογισμικού σε.net Framework. Τα πάντα στη C# είναι αντικείμενα Παρέχει άμεση πρόσβαση σε τεράστιες βιβλιοθήκες κλάσεων του.net Framework & ασφάλεια των τύπων της. Θα δούμε παρακάτω τη σύνταξη και τη δομή ενός απλού προγράμματος (Console Application) στη C# που εμφανίζει το μήνυμα Hello World και θα αναλύσουμε γραμμή γραμμή τα μέρη του: 1. using System; 2. namespace MyNamespace(ονομα του project) class Helloworld static void Main() Console.WriteLine("Hello World"); Console.ReadKey(); 8

9 Σε ένα C# πρόγραμμα χρησιμοποιούμε Namespaces για την οργάνωση του κώδικα μας. [11] Στο παραπάνω πρόγραμμα χρησιμοποιήσαμε την βιβλιοθήκη System (γραμμή 1 του παραδείγματος) μέσο της λέξης κλειδιού using,το οποίο περιλαμβάνει έτοιμες κλάσεις και μεθόδους του.νετ με έτοιμο επαναχρησιμοποιήσιμο κώδικα(συναρτήσεις). Ένα Namespace μπορεί να περιέχει τους εξής τύπους : Namespaces(ονομα του project) Classes(Ετικέτες για να διαχειρίζονται τα αντικείμενα) Delegates(Συναρτήσεις) Enums(Λίστες) Structs(δομές) Interfaces(Διασυνδέσεις) Για τη δημιουργία ενός δικού μας Namespace χρησιμοποιούμε τη δεσμευμένη λέξη-κλειδί namespace (γραμμή 2), έτσι η κλάση Helloworld (γραμμή 4) εμπεριέχεται στο MyNamespace που δημιουργήσαμε. Στη συνέχεια του κώδικα μπορούμε να δούμε πως μπορούμε να εμφανίσουμε στη γραμμή εντολών το μήνυμα "Hello World". Η μέθοδος Main() (γραμμή 6) περιέχει την εντολή Console.WriteLine("Hello World");,η οποία εμφανίζει το τελικό μήνυμα. Η κλάση Console ανήκει στο χώρο ονομάτων System και η WriteLine() είναι μέθοδος της Console. Εάν δεν χρησιμοποιούσαμε την εντολή using System; Η εντολή θα συντασσόταν System.Console.WriteLine("Hello Word"); Χρησιμοποιούμε την τελεία ανάμεσα από Namespaces, κλάσεις και μεθόδους για να δείξουμε τι εμπεριέχεται σε τι. Πχ. Τα σχόλια συντάσσονται χρησιμοποιώντας αυτόν τον συμβολισμό ( // ),εάν επρόκειτο για μία γραμμή σχολίου. //Αυτό είναι ένα σχόλιο 9

10 Εισαγωγη στη μηχανές παιχνιδιού[1] Μια μηχανή παιχνιδιού είναι ένα σύστημα λογισμικού σχεδιασμένο για τη δημιουργία και την ανάπτυξη βιντεο παιχνιδιών. Υπάρχουν πολλές μηχανές παιχνιδιών οι οποίες είναι σχεδιασμένες να δουλεύουν σε κονσόλες βιντεοπαιχνιδιών και λειτουργικά συστήματα επιτραπέζιων υπολογιστών όπως τα Microsoft Windows, το Linux, και το Mac OS X. Η κεντρική λειτουργικότητα που παρέχεται τυπικά από μια μηχανή παιχνιδιού περιλαμβάνει μια μηχανή φωτοαπόδοσης ("renderer") για 2D ή 3D γραφικά, μια μηχανή φυσικής ή εντοπισμού συγκρούσεων(collision detection, καθώς και collision response), ήχο, Scripting(ενα αντικείμενο οταν δέχεται ένα ερέθισμα αλλάζει την κατάστασή του), Animation(οτιδήποτε δεν ειναι ζωντανο, φανταστικο και δεν ειναι απαραιτητο να υπακουει στους νόμους της φυσικής), τεχνητή νοημοσύνη, δικτύωση, Streaming(παιχνίδι σε πραγματικό χρόνο μέσω ίντερνετ), διαχείριση μνήμης, νήματα (threading), υποστήριξη τοπικοποίησης, και ένα γράφο σκηνής (scene graph). Η διαδικασία της ανάπτυξης παιχνιδιού συχνά οικονομικοποιείται με το ότι σε μεγάλο μέρος η ίδια μηχανή παιχνιδιού επαναχρησιμοποιείται για να δημιουργηθούν διαφορετικά παιχνίδια. 10

11 Εισαγωγή στη XNA 4.0 (Χ.Ν.Α. δεν ειναι ακρώνυμα, το Χ σημαινει σε κώδικα Μορς "-..-", και το ΝΑ σημαινει "-..-") [1] Η Microsoft XNA είναι ένα σύνολο εργαλείων με ένα διαχειριζόμενο περιβάλλον εκτέλεσης που διευκολύνει τη δημιουργία βίντεο παιχνιδίων.η XNA τρέχει σε windows,windows phone, XBOX και άλλες πλατφόρμες της Microsoft διότι βασίζεται στο πλαίσιο.net της Microsoft. 11

12 Βασική δομή της ΧΝΑ 4.0: [8] Το αρχείο namespace Το όνομα του project() που περιέχει αρχικοποιήσεις, το graphics device(συσκευη γραφικων: δίνει στο παιχνίδι πρόσβαση στο υλικό του υπολογιστό).οι παρακάτω συναρτήσεις είναι απαραίτητες. Το όνομα του παιχνιδιού() Main class. Initialize() Προετοιμάζει το περιβάλλον του παιχνιδιού π.χ. ορίζει την αρχική κατάσταση των αντικειμένων. LoadContent() Φορτώνει τα αρχεία που χρειάζεται το παιχνίδι π.χ μουσική,φώτογραφιες σε μορφή (.png). Update () Εδώ γίνεται ο έλεγχος των εισόδων του χρήστη (ποντίκι, πληκτρολόγιο) που επηρεάζουν την αντίδραση των αντικειμένων. Ακόμα εδώ περιέχονται ολες οι συναρτήσεις που κάνουν τα αντικείμενα δυναμικά(να κινούνται ή οτι άλλο είναι προγραμματισμένα να κάνουν). Draw()Αυτή η συνάρτηση ειναι υπεύθυνη για την εμφάνιση των αντικειμένων στο περιβάλλον του παιχνιδιού. Αξίζει να σημειωθεί οτι η συνάρτηση Update και Draw εκτελούνται 60 φορές το δευτερόλεπτο. UnloadContent()Εκφορτώνει τους πόρους του παιχνιδιού. 12

13 Sprites(Γραφικά ή Εικονες) [8] Sprites ειναι δισδιάστατες εικόνες που ελέγχονται απο το κώδικα κατά τη διάρκεια του παιχνιδιού. Χρησιμοποιούνται για να ζωγραφιστεί το αντικείμενο στο παιχνίδι. Spritebatch είναι μια λίστα απο εικόνες(sprites). Spritefont είναι ένα αρχείο που χρησιμοποιείται για να ορίσει τον τύπο της γραμματοσειράς που θα εμφανιστεί στο παιχνίδι.το αρχείο Spritefont τοποθετείται στο 2Dgame project AContent( π.χ. στην επόμενη σελίδα τα μηνύματα που εμφανίζονται στο παιχνίδι με πράσινο χρώμα). 13

14 14

15 Διανύσματα & Διαστάσεις(Vector2,Rectangle) [8] Για φορτώσουμε εικόνες με το Spritebatch πρέπει να δημιουργηθεί ενα περιβάλλον (Τexture2D). Στην ΧΝΑ ο χώρος μπορεί να είναι δισδιάστατος ή τρισδιάστατος. Στη συγκεκριμένη εργασία είναι δισδιάστατος. mytexture = Content.Load<Texture2D>("MAO");//ΜΑΟ είναι το ονομα της φωτογραφιας του backround. Για να μπορούμε να φορτώσουμε εικόνες με το Spritebatch χρειάζεται να έχουμε δηλώσει την αρχική θέση του αντικειμένου, αυτο γίνεται με τη συνάρτηση Vector2(x,y) (2D, παίρνει δύο ορίσματα). Το μέγεθος της εικόνας ρυθμίζεται απο τη συνάρτηση Rectangle(). 15

16 ΔΙΑΓΡΑΜΜΑ ΡΟΗΣ MainFuntion.cs BrainssssKiCKer.cs Obj.cs Items.cs Enemy.cs Heli.cs ZombieSpawner.cs Bullets.cs Cursor.cs Wall.cs 16

17 [3] using System; namespace _2Dgame_project_A #if WINDOWS XBOX //Αυτο το Class ειναι δημιουργειται αυτοματα απο το ΧΝΑ, χρειαζεται για να... //... ξεκινησει το παιχνιδι και δεν χρειαζεται επεξεργασια. static class MainFunction static void Main(string[] args) // BrainssssKiCKer ειναι το κεντρικο παιχνιδι using (BrainssssKiCKer game = new BrainssssKiCKer()) game.run();// εντολη για να ξεκινησει το προγραμμα(πιο αναλυτικα αυτο το προγραμμα... //...υπαρχει απο την xna απλα για να ξεκινησει την BrainssssKiCKer ταξη). #endif 17

18 Αντικειμενο: BrainssssKiCKer.cs(Κυρίως Κώδικας) //Απαιτουμενες βιβλιοθηκες[3] using System; using System.Collections.Generic; using System.Linq; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.GamerServices; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Media; namespace _2Dgame_project_A // Το κυρίως παιχνιδι // Εδω θα μπορουσα να δημιουργησω ολοκληρο το παιχνιδι αλλα //προτιμησα να δημιουργησω classes (αντικειμενοστραφης προγραμματισμος) για να ειναι οργανωμενος ο κωδικας του παιχνιδιου ως προς τα αντικειμενα. Ετσι καλουμε εδω ολα τα υπολοιπα αντικειμενα(menu, obj, Heli, Enemy, Cursor, Wall, Bullets, Items, ZombieSpawner) ) public class BrainssssKiCKer : Microsoft.Xna.Framework.Game //ΑΡΧΙΚΟΠΟΙΗΣΕΙΣ. GraphicsDeviceManager graphics; //Οριζεται ως Διαχειριστης γραφικων της XNA. SpriteBatch spritebatch; // Menu menu; //Aρχικοποιηση του μενου Texture2D mytexture; //αρχικοποιηση μιας μεταβλητης(εικονας) 2 διαστασεων. Vector2 pos; // αρχικοποιηση της θεσης 2 διαστασεων public static SpriteFont font; // αρχικοποιηση της μεταβλητης ΛΕΞΕΩΝ. public static string Gamestate = "Menu";// static heli heli =new heli(new Vector2(150,150)); //Καλουμε τη ταξη του παικτη. static Cursor cursor = new Cursor(new Vector2(50, 50)); //Καλουμε τη ταξη του στοχου. MouseState mouse; // αρχικοποιηση της καταστασης του ποντικιου. Song song; // αρχικοποιηση μιας μεταβλητης μουσικης. public static Rectangle screen; // αρχικοποιηση της μεταβλητης ΜΕΓΕΘΟΥΣ. public static Rectangle room; // αρχικοποιηση της μεταβλητης ΜΕΓΕΘΟΥΣ. 18

19 public BrainssssKiCKer()//Βασικο αντικειμενο. //Ρυθμιση της αναλυσης της οθονης graphics = new GraphicsDeviceManager(this); graphics.preferredbackbufferwidth = 1600; //(διασταση του πλατους του 'παραθυρου' του παιχνιδιου) graphics.preferredbackbufferheight = 1000; //(διασταση του του υψους του 'παραθυρου' του παιχνιδιου) graphics.applychanges();//η εντολη αυτη εφαρμοζει τη παραπανω αναλυση οθονης. Content.RootDirectory = "Content";// Η διευθυνση των περιεχομενων της ΧΝΑ. //Η συναρτηση Initialize() προετοιμάζει το περιβάλλον του παιχνιδιού π.χ. ορίζει την αρχική κατάσταση των αντικειμένων protected override void Initialize()[6] Items.Initilize(); room = new Rectangle(0, 0, graphics.preferredbackbufferwidth * 4, graphics.preferredbackbufferheight * 4); //Eκχωρει το μεγεθος της οθονης*4 screen = new Rectangle(0, 0, graphics.preferredbackbufferwidth, graphics.preferredbackbufferheight); // Eκχωρει το μεγεθος της οθονης. menu = new Menu();//Καλειται το αντικειμενο μενου. base.initialize();//αρχικοποιηση της βασης δεδομενων. //φορτωνουμε τα αρχεια των αντικειμενων. protected override void LoadContent() // Δημιουργουμε ενα καινουργιο SpriteBatch,η χρηση του ειναι για την εμφανισει //γραφικων. spritebatch = new SpriteBatch(GraphicsDevice); font = Content.Load<SpriteFont>("Grammatoseira");//φορτωνει το αρχειο menu.loadcontent(content); //φορτωνει το αρχειο του μενου mytexture = Content.Load<Texture2D>("MAO");//φορτωνει το αρχειο του //background. pos = new Vector2(10, 10); //Αρχικοποιει τη θεση των αντικειμενων. foreach (obj MYobject in Items.objList) //Για οσα αντικειμενα περιεχονται στη λιστα να φορτωνονται οι εικονες τους. MYobject.LoadContent(this.Content); 19

20 song = Content.Load<Song>("song"); //φορτωνουμε μουσικη. MediaPlayer.Play(song); //Παιζει η μουσικη. MediaPlayer.IsRepeating = true; //Η μουσικη μολις τελειωσει επαναλαμβανεται. cursor.loadcontent(content); //φορτωνει το αρχειο του κερσορα. protected override void UnloadContent() //Εκφορτώνει τους πόρους του παιχνιδιού. // Εδώ γίνεται ο έλεγχος των εισόδων του χρήστη (ποντίκι, πληκτρολόγιο) που επηρεάζουν την αντίδραση των αντικειμένων. Ακόμα εδώ περιέχονται ολες οι συναρτήσεις που κάνουν τα αντικείμενα δυναμικά(να κινούνται ή οτι άλλο είναι προγραμματισμένα να κάνουν) protected override void Update(GameTime gametime) [6] //Η συνάρτηση Update εκτελείται 60 φορές το δευτερόλεπτο. if (Gamestate =="Exit" ) // H εντολη αυτη κλεινει το παιχνιδι απο το κουμπι του μενου EXIT. this.exit(); Window.Title = "Brainssss KiCKer";//O τιτλος πανω στο παραθυρο του παιχνιδιου. 20

21 switch (Gamestate) //Εντολη για την αλλαγη της καταστασης του παιχνιδιου. case "Game": foreach (obj MYobject in Items.objList) //Ενημερωνεται καθε αντικειμενο της λιστας MYobject. MYobject.Update(); break; case "Menu": menu.update(gametime); //Ενημερωνεται το αντικειμενο Menu. break; cursor.update();//ενημερωση της καταστασης του ποντικιου. mouse = Mouse.GetState();//θετει στη μεταβλητη τη κατασταση του ποντικιου. base.update(gametime); //Ενημερωση της βασης δεδομενων. // Εδω ελεγχουμε τι θα εμφανιστει το περιβαλλον του παιχνιδιου protected override void Draw(GameTime gametime) [6] //Η συνάρτηση Draw εκτελείται 60 φορές το δευτερόλεπτο. //Tο χρωμα που θα εχει το φόντο του παιχνιδιου. GraphicsDevice.Clear(Color.Black); switch (Gamestate) //Εντολη για την αλλαγη της καταστασης του παιχνιδιου. case "Game": spritebatch.begin(); //Στην ΧΝΑ για να εμφανιστουν καποια γραφικα στο παιχνιδι με τη συναρτηση draw ειναι απαραιτητο ο κωδικας για την φωτογραφια να μπει αναμεσα στις εντολες spritebatch.begin() και spritebatch.end().[5] 21

22 spritebatch.draw(mytexture, pos, Color.White); //Eμφανιζεται φωτογραφια Background. [6] foreach (obj MYobject in Items.objList) //Εμφανίζεται καθε αντικειμενο της λιστας MYobject. MYobject.Draw(spriteBatch); cursor.draw(spritebatch); // Εμφανίζεται ο κερσορας(στοχος). spritebatch.end(); if (Keyboard.GetState().IsKeyDown(Keys.F1)) graphics.isfullscreen = true; // Εφαρμογη πληρης οθονη οταν πατιεται το F1. graphics.applychanges(); if (Keyboard.GetState().IsKeyDown(Keys.F2)) graphics.isfullscreen = false; // Εφαρμογη παραθυρου οταν πατιεται το F2. graphics.applychanges();//αλλαζει τις ρυθμισεις στις παραπανω. break; case "Menu" : menu.draw(spritebatch); // Εφαρμογη του παιχνιδιου σε πληρη οθονη οταν πατιεται το F1. if (Keyboard.GetState().IsKeyDown(Keys.F1)) graphics.isfullscreen = true; graphics.applychanges(); // Εφαρμογη του παιχνιδιου σε παραθυρο οταν πατιεται το F1. if (Keyboard.GetState().IsKeyDown(Keys.F2)) graphics.isfullscreen = false; graphics.applychanges();//αλλαζει τις ρυθμισεις στις παραπανω. break; base.draw(gametime); //Επιστρεφει στη βαση δεδομενων το gametime. public static Vector2 GetCursorPos() return cursor.position; //επιστρεφει τη θεση του κερσορα. 22

23 //Απαιτουμενες βιβλιοθηκες[3] using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.GamerServices; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Media; namespace _2Dgame_project_A class obj[6] //Η ταξη(class) αυτη,ειναι υπευθυνη για την δημιουργια των αντικειμενων του... //... παιχνιδιου,τα οποια θα ειναι δυναμικα.δηλαδη η κατασταση τους θα αλλαζει //απο καποιους παραγοντες π.χ. πληκτρολογιο,ποντικι,χρονος,συναρτησεις κ.α) //Δημιουργία μεταβλητων. public Vector2 position; //ορίζει τη θεση του 2D αντικειμενου public float rotation = 0.0f; //ορίζει τη περιστροφη του 2D αντικειμενου public Texture2D spriteindex; //μεταβλητη με τη διευθυνση που θα φορτώθουν τα γραφικα. public string spritename = "block";//το μπλοκ ειναι μια εικονα που θα εμφανιζεται στα... //...αντικειμενα που δεν τους εχουμε ορισει καποια αλλη εικονα. public float speed = 0.0f; //Η ταχυτητα του αντικειμενου. public float Scale = 1.0f; //Οριζεται η κλιμακα. public Rectangle area; // //Οι μεταβλητες boolian δεχονται μονο δυο τιμες True False μας χρησιμευει στο να σταματαμε //τη συναρτηση update και draw οταν πεθανει το αντικειμενο. public bool alive = true; //Το αντικειμενο ειναι ζωντανο public bool solid = false; // 23 public obj(vector2 pos) //Συναρτηση obj. position = pos; //θεση αντικειμενου. public virtual void Update() //Οι συναρτησεις που εχουν την εντολη vitual, οπως στη παραπανω συναρτηση //επηρεαζονται...(αλλαζουν τα δεδομενα τους) απο τις συναρτησεις με το ιδιο ονομα των //αλλων αντικειμενων.

24 if (!alive) return; //Αν δεν ειναι ζωντανο το αντικειμενο σταματα ειναι ειναι δυναμικο. [6] pushto(speed, rotation); ////Είναι ένας αλγόριθμος γεωμετρίας των πίξελ της οθόνης ετσι ώστε να προσεγγίζεται η θέση του αντικειμένου στο παιχνίδι γνωρίζοντας τη κλίμακα της ταχύτητας που θα κινείται και θα περιστρέφεται. //Εδω τοποθετειται ενας ελεγχος για το αν ειναι ζωντανο το αντικειμενο. if (heli.hp == 0) // Αν ο παικτης πεθανει, γυρναει το παιχνιδι στο Μενου, μηδενιζει το σκορ και γεμιζει τη ζωη του για να ειναι ζωντανος για να επαναλαβει το γυρο, αμα ο χρηστης πατησει την επιλογη start. BrainssssKiCKer.Gamestate = "Menu"; heli. givehp(); heli.score = 0; UpdateArea();//Ενημερωνει το τη θεση του αντικειμενου. //φορτωνουμε το περιεχομενο του αντικειμενου. public virtual void LoadContent(ContentManager content) //εδω δηλωνεται η διευθυνση που θα περιεχονται τα γραφικα που θα φορτωθουν //στο παιχνιδι, στη περιπτωση αυτη ειναι ο φακελος "sprites\\" spriteindex = content.load<texture2d>("sprites\\" + this.spritename); area = new Rectangle(0, 0,spriteIndex.Width, spriteindex.height ); //Rectangle:Αποθηκεύει ένα σύνολο από τέσσερις ακέραιους που αντιπροσωπεύουν ενα τετραγωνο με το μέγεθος του αντικειμενου μας. [10] 24

25 // Εδω ελεγχουμε τι θα εμφανιστει το περιβαλλον του παιχνιδιου public virtual void Draw(SpriteBatch spritebatch) if (!alive) return; //Δηλωνεται ποιο θα ειναι το κεντρο του αντικειμενου. Vector2 center = new Vector2(spriteIndex.Width/2, spriteindex.height/2); spritebatch.draw(spriteindex, position, null, Color.White, MathHelper.ToRadians(rotation), center, Scale,SpriteEffects.None, 0); //Αυτη η εντολη //χρειαζεται στην ΧΝΑ για ξερει το προγραμμα σε ποιο σημειο, με ποιο μεγεθος,τι //αποχρωση,τι εφε θα εμφανισει τις εικονες του παιχνιδιου. [3] // Η ιδεα του collision ειναι ενα τετραγωνο με το μεγεθος του παικτη (Rectangle) το //οποιο ακολουθει τον παικτη και εντοπιζει αν θα ακουμπισει μελλοντικα το τετραγωνο //απο καποιο αλλο αντικειμενο. Ο παρακατω κωδικας collision εμποδιζει τα αντικειμενα //απο τη λιστα να περασουν απο αλλα αντικειμενα της λιστας που ειναι σταθερα(solid) //π.χ.ο τοιχος. public bool collision(vector2 pos,obj obj) [6] //Δημιουργειται μια καινουργια περιοχη που προσεγγιζει τη θεση του αντικειμενου. Rectangle newarea = new Rectangle(area.X, area.y, area.width, area.height); newarea.x += (int)pos.x; //Η x-συντεταγμένη για την επάνω αριστερή γωνία του //ορθογωνίου. newarea.y += (int)pos.y; //Η y-συντεταγμένη για την επάνω αριστερή γωνία του //ορθογωνίου. foreach (obj MYobject in Items.objList) //Γινεται ελεγχος για το αν καποι αντικειμενο απο τη λιστα ακουμπαει καποιο αλλο //αντικειμενο της λιστα που ειναι στερεο (solid). if (MYobject.GetType() == obj.gettype() && MYobject.solid) if (MYobject.area.Intersects(newArea)) return true; return false; 25

26 [6] //Ο παρακατω κωδικας collision εξαφανιζει τις σφαιρες οταν πεφτουν πανω στον //εχθρο. public obj collision(obj obj) foreach (obj MYobject in Items.objList) if (MYobject.GetType() == obj.gettype() && MYobject.alive) //Το get type παίρνει //τα δεδομενα για την κατασταση των αντικειμενων που περιεχει η λιστα. if (MYobjecto.area.Intersects(area)) return MYobject; return new obj(vector2.zero); public void UpdateArea() //φτιαχνουμε ενα τετραγωνο το οποιο ακολουθει τον παικτη για εντοπισουμε αν //ακουμπαει καποια αλλο αντικειμενο. area.x = (int)position.x - (spriteindex.width/2 ); area.y = (int)position.y - (spriteindex.height/2 ); public virtual void pushto(float pix, float dir) //Είναι ένας αλγόριθμος γεωμετρίας των πίξελ της οθόνης ετσι ώστε να προσεγγίζεται η θέση του αντικειμένου στο παιχνίδι γνωρίζοντας τη κλίμακα της ταχύτητας που θα κινείται και θα περιστρέφεται. float newx = (float)math.cos(mathhelper.toradians(dir)); float newy = (float)math.sin(mathhelper.toradians(dir)); position.x += pix * (float)newx; position.y += pix * (float)newy; 26

27 [3] //Απαιτουμενες βιβλιοθηκες using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.GamerServices; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Media; namespace _2Dgame_project_A class heli : obj //Σε αυτη τη ταξη υπαρχει ο κωδικας για τη κινηση,την περιστροφη,πυροβολισμος του οπλου, //κατασταση πληκτρολογιου. KeyboardState keyboard; KeyboardState prevkeyboard; //κατασταση ποντικιου. MouseState mouse; MouseState prevmouse; public static int a = 0; //Αρχικοποιηση μεταβλητων. [6] public static int giros = 50; public static int d = 10; public static int e = 0; public static int hp = 100; static int hpmax = 100; public static int score = 0; // Ταχυτητα του παικτη. float spd; // Ταχυτητα των σφαιρων. float bspd = 15; const int maxammo = 60; //μεγιστος αριθμος γεμιστηρα int ammo = 60; // αριθμος γεμιστηρα int rate =5; // Ρυθμος πυρος int firingtimer = 0; int reloadtimer = 0; //αρχικοποιηση μεταβλητης int reloadtime = 60; //χρονος για να οπλισει bool reloading = false; //κατασταση οπλισμα οπλου απενεργοποιημενη 27

28 public static heli Heli; public heli(vector2 pos) :base(pos) //βρισκει τη θεση απο τη βαση δεδομενων. position = pos; spd = 5; //Η ταχυτητα κινησης του παικτη. spritename = "player"; Heli = this; public static void givehp()[3] hp = hpmax; //Δινει μεγιστη ζωη public static void RemoveHp() hp -- ; //Μειώνει τη ζωη του παικτη κατα 1 public static Boolean hashp() return hp > 0; //Ελεγχει αν εχει ζωη ο παικτης. public static void increasescore() score+=5; //Αυξανει το σκορ κατα 5 //Η συναρτηση που ειναι override μπορει να ενημερωνει τις τιμες των μεταβλητων σε //συναρτησεις με το ιδιο ονομα που ειναι virtual(πχ στη ταξη obj ) που βρισκονται σε αλλη //ταξη. public override void Update() [7] Heli = this; //κωδικας για τον ελεγχο του οπλου απο το πληκτρολογιο και το ποντικι. keyboard = Keyboard.GetState();//εκχωρει την κατασταση του πληκρολογιου στη //μεταβλητη. mouse = Mouse.GetState();//εκχωρει την κατασταση του ποντικιου. //Κινηση του χαρακτηρα απο τα βελακια if (keyboard.iskeydown(keys.up) &&!collision(new Vector2(0, -spd), new Wall(new Vector2(0, 0)))) //Εαν το πληκτρο ΠΑΝΩ εχει πατηθει ΚΑΙ εαν ο παικτης ΔΕΝ ακουμπαει τον τοιχο //τοτε μειωσε τη θεση του αντικειμενου κατα spd.το ιδιο γινεται για τις παρακατω εντολες //των παρακατω πληκτρων. 28

29 position.y -= spd; [7] if (keyboard.iskeydown(keys.left) &&!collision(new Vector2(-spd, 0), new Wall(new Vector2(0, 0)))) position.x -= spd; if (keyboard.iskeydown(keys.down) &&!collision(new Vector2(0, spd), new Wall(new Vector2(0, 0)))) position.y += spd; if (keyboard.iskeydown(keys.right) &&!collision(new Vector2(spd, 0), new Wall(new Vector2(0, 0)))) position.x += spd; //Κινηση του οπλου απο τα(w.a.s.d) if (keyboard.iskeydown(keys.w) &&!collision(new Vector2(0, -spd), new Wall(new Vector2(0, position.y -= spd; if (keyboard.iskeydown(keys.a) &&!collision(new Vector2(-spd, 0), new Wall(new Vector2(0, position.x -= spd; if (keyboard.iskeydown(keys.s) &&!collision(new Vector2(0, spd), new Wall(new Vector2(0, position.y += spd; if (keyboard.iskeydown(keys.d) &&!collision(new Vector2(spd, 0), new Wall(new Vector2(0, position.x += spd; firingtimer++; //oταν γεμιζε το οπλο δεν πυροβολαει(!reloading)!!! if (mouse.leftbutton == ButtonState.Pressed &&!reloading) CheckShooting();//Οταν ενεργοποιειται η συναρτηση το οπλο πυροβολαει. if (keyboard.iskeydown(keys.space) &&!reloading) CheckShooting();//Οταν ενεργοποιειται η συναρτηση το οπλο πυροβολαει. 29

30 //Εντολη πληκτρολογιου για να γεμισει το οπλο σφαιρες. [7] if (keyboard.iskeydown(keys.r) keyboard.iskeydown(keys.numpad0)) reloading = true; //Εντολη πληκτρολογιου για να γεμισει το οπλο σφαιρες. if (keyboard.iskeydown(keys.rightcontrol) keyboard.iskeydown(keys.leftcontrol)) reloading = true; CheckReload();//Η συναρτηση ελεγχει τον γεμισμα του οπλου. //Εαν ο γεμιστηρας αδειασει γεμισει το οπλο σφαιρες. [6] if (ammo == 0) reloading = true; CheckReload();//Η συναρτηση ελεγχει τον γεμισμα του οπλου. //Συνδεει τη περιστροφη του οπλου με τη θεση του ποντικιου ετσι ωστε το οπλο να //σημαδευει τον κερσορα του ποντικιού. rotation = point_direction(position.x, position.y, mouse.x, mouse.y); prevkeyboard = keyboard; //εκχωρει την προηγουμενη κατασταση του //πληκρολογιου. prevmouse = mouse; //εκχωρει την προηγουμενη κατασταση του ποντικιου. base.update();//ενημερωση της βασης δεδομενων. //Αλλαζει το Gamestate στο Menu για να κανουμε ΠΑΥΣΗ. if (keyboard.iskeydown(keys.p) ) //Παυση με το πληκτρο P BrainssssKiCKer.Gamestate = "Menu"; if (keyboard.iskeydown(keys.back)) //Παυση με το πληκτρο πισω BrainssssKiCKer.Gamestate = "Menu"; if (hp <= 0) //εαν η ζωη το παικτη γινει μηδεν τοτε hp = 0; //εαν ζωη ειναι μηδεν σε περιπτωση που παρει αρνητικη τιμη. alive = false; //το αντικειμενο παυει να ειναι δυναμικο. //Εδω δημιουργουνται τα διαφορετικα σκορ τις καθε πιστας. //Εδω δημιουργω τα διαφορετικα σκορ τις καθε πιστας. for (int z = 0; z < 11; z++)//επαναληψη 10 γυρων. 30

31 if (z == a)//ελεγχει σε ποιο γυρο ειναι το παιχνιδι. [3] if (score == giros)//εαν το σκορ γινει ισο με το γυρο εκτελουνται τα παρακατω. //algorithm for time. BrainssssKiCKer.Gamestate = "Menu";//αλλαζει τη κατασταση του παιχνιδιου //σε κατασταση μενου. d = d - 1;//ποσοι γυροι εχουν μεινει. giros = giros + 200;//algorithm for score. score = 0;//μηδενιζεται το σκορ. a = a + 1;//αυξανετε ο γυρος κατα 1. heli.givehp();//μολις τελιωσει ο γυρος γεμιζει ζωη τον παικτη. foreach (obj MyZombies in Items.objList) //Για καθε αντικειμενο της λιστας κανε. if (MyZombies.GetType() == typeof(enemy))//οποιο απο τα αντικειμενα //ειναι τυπος εχθρος κανε. MyZombies.alive = false; //Mολις τελειωσει ο γυρος αδειαζει η λιστα με τα ζομπι. if (a == 11)//Αν ο γυρος παει 11 γυρνα στο μενου το παιχνιδι τελιωσε. BrainssssKiCKer.Gamestate = "Menu";//αλλαζει τη κατασταση του παιχνιδιου σε //κατασταση μενου. //Εμφανιζει στη οθονη καποιες πληροφορες σε σχεση με την κατασταση του //παιχνιδιου οπως ammo, health, score... public override void Draw(SpriteBatch spritebatch) if (BrainssssKiCKer.Gamestate == "Game") [4] //O παρακατω κωδικας εμφανιζει στην οθονη την κατασταστη των Ammo kai //Reloading score,pause,health kai round. spritebatch.drawstring(brainsssskicker.font, "Health :" + hp, new Vector2(5, -3 + BrainssssKiCKer.font.LineSpacing), Color.GreenYellow); spritebatch.drawstring(brainsssskicker.font, "Ammo :" + ammo, new Vector2(5, BrainssssKiCKer.font.LineSpacing), Color.GreenYellow); spritebatch.drawstring(brainsssskicker.font, "Score :" + score + "/" + giros, new Vector2(5, 25 + BrainssssKiCKer.font.LineSpacing), Color.GreenYellow); 31

32 [4] spritebatch.drawstring(brainsssskicker.font, "Press 'P' or 'Back' for Pause Game", new Vector2(500, BrainssssKiCKer.font.LineSpacing), Color.GreenYellow); spritebatch.drawstring(brainsssskicker.font, "Round " + a, new Vector2(150, BrainssssKiCKer.font.LineSpacing), Color.GreenYellow); if (reloading) spritebatch.drawstring(brainsssskicker.font, "Reloading :", new Vector2(10, 70 + BrainssssKiCKer.font.LineSpacing), Color.Red); base.draw(spritebatch); [6] //Η συναρτηση ελεγχει τον γεμισμα του οπλου. private void CheckReload() if (reloading) reloadtimer++; if (reloadtimer > reloadtime) ammo = maxammo; reloadtimer = 0; reloading = false; //Η συναρτηση ελεγχει ποτε και ποσο πυροβολαει το οπλο. private void CheckShooting() //ελεγχει ποτε θα αδιασει το οπλο "ammo >0". if (firingtimer > rate && ammo >0) firingtimer = 0; Shoot(); private void Shoot() ammo--;//οσο πυροβολαει το οπλο μειωνονται οι σφαιρες. foreach (obj MYobject in Items.objList) //Για καθε αντικειμενο της λιστας κανε... // με τον παρακατω ελεγχο επιτρεπουμε στο οπλο να πυροβολαει οταν εχει //σφαιρες και ειναι ζωντανο. if(myobject.gettype() == typeof(bullets) &&! MYobject.alive) //Εαν καποιο My object της λιστας ειναι σφαιρες και δεν ειναι ηδη μεσα στο // παιχνιδι κανε τα παρακατω. MYobject.position = position; //Η σφαιρα ξεκιναει απο τη θεση του οπλου. 32

33 MYobject.UpdateArea();//Ενημερωνει την θεση της σφαιρας. MYobject.rotation = rotation; //Η σφαιρα παιρνει περιστροφη του οπλου //δηλωνουμε τη ταχυτητα στης σφαιρας. MYobject.speed = bspd; //Η σφαιρα παιρνει τη ταχυτητα bspd. MYobject.alive = true; //Η σφαιρα ειναι ζωντανη. break; //Ο παρακατω αλγοριθμος βρισκει τη γωνια που σημαδευεις με το ποντικι. [6] private float point_direction(float x, float y, float x2, float y2) float diffx = x - x2; float diffy = y - y2; float adj = diffx; float opp = diffy; float tan = opp / adj; float res = MathHelper.ToDegrees((float)Math.Atan2(opp,adj)); res = (res - 180) % 360; if (res < 0) res += 360; return res; 33

34 [3] //Απαιτουμενες βιβλιοθηκες using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.GamerServices; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Media; namespace _2Dgame_project_A class Items public static List<obj> objlist = new List<obj>();//Δημιουργια μιας λιστας με ολα τα //αντικειμενα. //Η συναρτηση Initialize() προετοιμάζει το περιβάλλον του παιχνιδιού π.χ. ορίζει την //αρχική κατάσταση των αντικειμένων public static void Initilize() for (int i = 0; i < 80; i++) //στη επαναληψη αυτη οριζουμε 80 ζωντανες σφαιρες. obj MYobject = new Bullets(new Vector2(0,0)); MYobject.alive = false; //Τα αντικειμενα ειναι στη κατασταση ζωντανα objlist.add(myobject); [6]. //Μεγιστος αριθμος ζωντανων εχθρων που θα εμφανιζονται στο παιχνιδι ειναι 60. for (int j = 0; j < 60; j++) Enemy MyZombies = new Enemy(new Vector2(1340, 90)); MyZombies.alive = false; objlist.add(myzombies); //εδω βαζουμε τον παικτη και τον στοχο στο παιχνιδι. objlist.add(new heli(new Vector2(350, 450))); objlist.add(new Cursor(new Vector2(0, 0))); //εμφανιζει τα σημειου που θα βγαινει ο εχθρος. 34

35 objlist.add(new ZombieSpawner(new Vector2(1550, 600))); objlist.add(new ZombieSpawner(new Vector2(1850, 300))); objlist.add(new ZombieSpawner(new Vector2(1650, 100))); objlist.add(new ZombieSpawner(new Vector2(1750, 900))); //Εδω φτιαχνεται ενα πλαισιο απο τοιχο στο παιχνιδι. //Πλαισιο με γυρους,σκορ,ζωη,σφαιρες. objlist.add(new Wall(new Vector2(230, 50))); objlist.add(new Wall(new Vector2(200, 50))); objlist.add(new Wall(new Vector2(115, 50))); objlist.add(new Wall(new Vector2(50, 50))); //αριστερα τοιχος objlist.add(new Wall(new Vector2(-40, 150))); objlist.add(new Wall(new Vector2(-40, 250))); objlist.add(new Wall(new Vector2(-40, 350))); objlist.add(new Wall(new Vector2(-40, 450))); objlist.add(new Wall(new Vector2(-40, 550))); objlist.add(new Wall(new Vector2(-40, 650))); objlist.add(new Wall(new Vector2(-40, 750))); objlist.add(new Wall(new Vector2(-40, 850))); objlist.add(new Wall(new Vector2(-40, 950))); //δεξια τοιχος objlist.add(new Wall(new Vector2(1570, 50))); objlist.add(new Wall(new Vector2(1570, 150))); objlist.add(new Wall(new Vector2(1570, 250))); objlist.add(new Wall(new Vector2(1570, 350))); objlist.add(new Wall(new Vector2(1570, 450))); objlist.add(new Wall(new Vector2(1570, 550))); objlist.add(new Wall(new Vector2(1570, 650))); objlist.add(new Wall(new Vector2(1570, 750))); objlist.add(new Wall(new Vector2(1570, 850))); objlist.add(new Wall(new Vector2(1570, 950))); objlist.add(new Wall(new Vector2(1670, 50))); objlist.add(new Wall(new Vector2(1670, 150))); objlist.add(new Wall(new Vector2(1670, 250))); objlist.add(new Wall(new Vector2(1670, 350))); objlist.add(new Wall(new Vector2(1670, 450))); objlist.add(new Wall(new Vector2(1670, 550))); objlist.add(new Wall(new Vector2(1670, 650))); objlist.add(new Wall(new Vector2(1670, 750))); objlist.add(new Wall(new Vector2(1670, 850))); objlist.add(new Wall(new Vector2(1670, 950))); objlist.add(new Wall(new Vector2(1670, 1050))); 35

36 //πανω τοιχος objlist.add(new Wall(new Vector2(1400, -40))); objlist.add(new Wall(new Vector2(1300, -40))); objlist.add(new Wall(new Vector2(1200, -40))); objlist.add(new Wall(new Vector2(1100, -40))); objlist.add(new Wall(new Vector2(1000, -40))); objlist.add(new Wall(new Vector2(900, -40))); objlist.add(new Wall(new Vector2(800, -40))); objlist.add(new Wall(new Vector2(700, -40))); objlist.add(new Wall(new Vector2(600, -40))); objlist.add(new Wall(new Vector2(500, -40))); objlist.add(new Wall(new Vector2(400, -40))); objlist.add(new Wall(new Vector2(300, -40))); objlist.add(new Wall(new Vector2(200, -40))); objlist.add(new Wall(new Vector2(100, -40))); objlist.add(new Wall(new Vector2(0, -40))); //κατω τοιχος objlist.add(new Wall(new Vector2(1600, 1040))); objlist.add(new Wall(new Vector2(1500, 1040))); objlist.add(new Wall(new Vector2(1400, 1040))); objlist.add(new Wall(new Vector2(1300, 1040))); objlist.add(new Wall(new Vector2(1200, 1040))); objlist.add(new Wall(new Vector2(1100, 1040))); objlist.add(new Wall(new Vector2(1000, 1040))); objlist.add(new Wall(new Vector2(900, 1040))); objlist.add(new Wall(new Vector2(800, 1040))); objlist.add(new Wall(new Vector2(700, 1040))); objlist.add(new Wall(new Vector2(600, 1040))); objlist.add(new Wall(new Vector2(500, 1040))); objlist.add(new Wall(new Vector2(400, 1040))); objlist.add(new Wall(new Vector2(300, 1040))); objlist.add(new Wall(new Vector2(200, 1040))); objlist.add(new Wall(new Vector2(100, 1040))); objlist.add(new Wall(new Vector2(0, 1040))); 36

37 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.GamerServices; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Media; namespace _2Dgame_project_A class Enemy : obj[6] //Αρχικοποιηση καποιων μεταβλητων που θα μας χρησιμευσουν παρακατω. int health = 100; float spd = 1; //ταχυτητα του ζομπι. [3] int damagetimer = 300; //Οταν η δίπλα μεταβλητη ειναι μηδεν το ζομπι μπορει να // // τραυματισει τον παικτη, το 300 ειναι ενα ειδος //καθυστέρησης για καθε χτυπημα του ζομπι. public Enemy(Vector2 pos) : base(pos) position = pos; //η θεση του ζομπι spritename = "zombie";//το ονομα του αρχειου του ζομπι. health = 50; //η ζωη του ζομπι speed = spd; //ταχυτητα του ζομπι. if (!alive) return; public void damageplayer() if (damagetimer == 0)//Οταν ειναι μηδεν το ζομπι μπορει να τραυματισει τον παικτη damagetimer = 300; heli.removehp();//μειώνει τη ζωη του παικτη κατα 1 37

38 public override void Update()[6] //Ο εχθρος ερχεται προς το μερος του παικτη, οταν του τελιωσει η ζωη //εξαφανιζεται. if (health > 0) rotation = point_direction(position.x, position.y, heli.heli.position.x, heli.heli.position.y); //Το ζομπι πηγαινει προς την θεση του παικτη. if (damagetimer > 0) damagetimer--; //Μειωνει κατα 1 το χρονο. //Οταν ο εχθρος ''ακουμπησει'' τον παικτη, ο παικτης χανει ζωη obj MyZombies = collision(new heli(new Vector2(heli.Heli.position.X, heli.heli.position.y ))); if (MyZombies.GetType() == typeof(heli)) //Εαν το αντικειμενο ειναι ο παικτης τοτε damageplayer();//καλει τη συναρτηση που μειωνε ιτη ζωη του παικτη. // Οταν πεθανει ενας εχθρος παιρνεις 5 ποντους. if (health == 0 ) heli.increasescore();//η συναρτηση αυτη καλειται απο το αντικειμενο heli και αυξανει το... //...σκορ κατα 5 μοναδες. alive = false; //Το αντικειμενο δεν ειναι δυναμικο πια γιατι δεν ειναι ζωντανο. health = 50; //Η ζωη του εχθρου zombie. base.update();// Ενημερωνετε η βαση δεδομενων. 38

39 //Ο παρακατω αλγοριθμος βρισκει τη γωνια που σημαδευεις με το ποντικι. private float point_direction(float x, float y, float x2, float y2) [6] float diffx = x - x2; float diffy = y - y2; float adj = diffx; float opp = diffy; float tan = opp / adj; float res = MathHelper.ToDegrees((float)Math.Atan2(opp, adj)); res = (res - 180) % 360; if (res < 0) res += 360; return res; public void Damage(int dmg) health -= dmg; Μειωνει τη ζωη των ζομπι κατα 1 39

40 40 ZombieSpawner [3] using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.GamerServices; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Media; namespace _2Dgame_project_A class ZombieSpawner : obj[6] //Αρχικοποιησεις μεταβλητων private int spawntimer = 0; public static int spawntime = 300; public ZombieSpawner(Vector2 pos) : base(pos) position = pos; //Η θεση του αντικειμενου //Απο τη λιστα με τα αντικειμενα που δημιουργησα παιρνει τον εχθρο. public override void Update() IncrementTimers();//Aυξανει κατα ενα το χρονο if (spawntimer > spawntime) //καθε φορα που το spawntimer γινεται 300 βγαινει //ενα ζομπι. spawntimer = 0; foreach (obj MYobject in Items.objList) if (MYobject.GetType() == typeof(enemy) &&! MYobject.alive) //εαν βρει ζομπι παει στη κατω εντολη MYobject.alive = true; //Ζωντανευει ενα ζομπι MYobject.position = position; //Ενα ζομπι εμφανιζεται στη θεση του zombie spawner. break; //Διακοπτουμε την εντολη for each με το break για να βγαζει καθε //φορα που το spawntime γινεται 300 ενα ζομπι.

41 private void IncrementTimers()[3] if (heli.a == 1 heli.a == 2 heli.a == 3) //Η ταχυτητα εμφανισης ζομπι στου γυρους 1,2,3 spawntimer = spawntimer + 1; if (heli.a == 4 heli.a == 5 heli.a == 6 heli.a == 7) //Η ταχυτητα εμφανισης ζομπι στου γυρους 4,5,6 spawntimer = spawntimer + 2; if (heli.a == 8 heli.a == 9 heli.a == 10) //Η ταχυτητα εμφανισης ζομπι στου γυρους 8,9,10 spawntimer = spawntimer + 3; 41

42 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.GamerServices; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Media; namespace _2Dgame_project_A class Bullets : obj[6] public Bullets(Vector2 pos) : base(pos) //βρισκει τη θεση απο τη βαση δεδομενων του obj. position = pos; spritename = "bullet"; [3] public override void Update() if (!alive) return; //Αν δεν ειναι ζωντανη δεν κανει τιποτα. //εξαφανιζεται η σφαιρα οταν πεφτει σε τοιχο. if (collision(vector2.zero, new Wall(new Vector2(0, 0)))) alive = false; //η σφαιρα δεν ειναι ζωντανη. //Δημιουργει damage στον εχθρο οταν ερχεται σε επαφη με τη σφαιρα. obj MYobject = collision(new Enemy(new Vector2(0, 0))); if (MYobject.GetType() == typeof(enemy)) //Αν το αντικειμενο ειναι εχθρος κανε... alive = false; Enemy MyZombies = (Enemy) MYobject; //Μετατροπη obj σε Enemy. MyZombies.Damage(10); //Μειωνει τη ζωη των ζομπι κατα 1 απο τα 10 base.update();//ενημερωση της βασης δεδομενων. 42

43 [3] using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.GamerServices; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Media; namespace _2Dgame_project_A //Δημιουργω τοιχο στο παιχνιδι. class Wall : obj public Wall(Vector2 pos) [6] : base(pos) //βρισκει τη θεση απο τη βαση δεδομενων του obj solid = true; //ειναι στερεο. position = pos; //μεταβλητη για τη θεση του τοιχου. spritename = "wall";//το ονομα του αρχειου του τοιχου. 43

44 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.GamerServices; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Media; namespace _2Dgame_project_A class Cursor : obj[6] //Σε αυτη τη ταξη υπαρχει ο κωδικας του κερσορα "στοχου του οπλου". MouseState mouse; //εκχωρει την κατασταση του ποντικιου. //Αυτη η ταξη επιστρεφει τη θεση του κερσορα στο παιχνιδι και προς αυτη τη θεση θα... //...κατευθυνεται η σφαιρα που ξεκιναει απο το παικτης-οπλο. public Cursor(Vector2 pos) : base(pos) //βρισκει τη θεση απο τη βαση δεδομενων. position = pos; //Η θεση του αντικειμενου. spritename = "cursor";//το ονομα του αρχειου της εικονας του κερσορα. public override void Update() mouse = Mouse.GetState();//Η κατασταση που βρισκεται το ποντικι. [3] position = new Vector2(mouse.X,mouse.Y); // τη θεση του κερσορα στο παιχνιδι. base.update();//ενημερωση της βασης δεδομενων. 44

45 [3] using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Audio; using Microsoft.Xna.Framework.Content; using Microsoft.Xna.Framework.GamerServices; using Microsoft.Xna.Framework.Graphics; using Microsoft.Xna.Framework.Input; using Microsoft.Xna.Framework.Media; namespace _2Dgame_project_A class Menu[6] public static int c = 0; KeyboardState keyboard; //κατασταση πληκτρολογιου. KeyboardState prevkeyboard; //προηγουμενη κατασταση πληκτρολογιου. SpriteFont spritefont; // αρχικοποιηση της μεταβλητης ΛΕΞΕΩΝ. List<string> buttonlist = new List<string>();// Δημιουργια λιστας κουμπιων μενου. int selected = 0; // αρχικοποιηση της μεταβλητης public Menu() // μενου κουμπια μπορουν να αλλαζουν την κατασταση του παιχνιδιου. buttonlist.add("start Game");// μενου κουμπι startgame. buttonlist.add("exit");// μενου κουμπι exit. public void LoadContent(ContentManager Content) spritefont = Content.Load<SpriteFont>(" Grammatoseira ");//φορτωνει το αρχειο 45

46 public void Update(GameTime gametime) [7] c = heli.α - 1; //Θετει στο c τον αριθμο του προηγουμενου γυρου. keyboard = Keyboard.GetState(); //Ελεγχος του μενου απο το πληκτρολογιο. if (CheckKeyboard(Keys.Up)) //Εαν πατηθει το πληκτρο πανω κανε if (selected > 0) selected--; //Εαν το selected ειναι μεγαλυτερο απο το 0 μειωσε το κατα 1. if (CheckKeyboard(Keys.Down)) //Εαν πατηθει το πληκτρο κατω κανε if (selected < buttonlist.count - 1) selected++; //Εαν το selected ειναι μικροτερο απο το τελευταιο κουμπι αυξησε το κατα 1. if (CheckKeyboard(Keys.Enter)) //Εαν πατηθει το πληκτρο enter κανε. switch (selected) //επελεξε τον αριθμο της μεταβλητης selected. case 0: //Εαν το selected ειναι 0 ξεκινα το παιχνιδι. BrainssssKiCKer.Gamestate ="Game"; break; case 1: //Εαν το selected ειναι 1 πηγαινε στο μενου. BrainssssKiCKer.Gamestate = "Exit"; break; if (CheckKeyboard(Keys.Space)) //Εαν πατηθει το πληκτρο space κανε. switch (selected) //επελεξε τον αριθμο της μεταβλητης selected. case 0: //Εαν το selected ειναι 0 ξεκινα το παιχνιδι. BrainssssKiCKer.Gamestate = "Game"; break; case 1: //Εαν το selected ειναι 1 πηγαινε στο μενου. BrainssssKiCKer.Gamestate = "Exit"; break; public bool CheckKeyboard(Keys key) //Ελεγχος για το εαν εχει πατηθει καποιο πληκτρο απο το πληκτρολογιο του χρηστη. return (keyboard.iskeydown(key) &&!prevkeyboard.iskeydown(key)); 46

47 public void Draw(SpriteBatch spritebatch) Color color; //Δηλωση της μεταβλητης int linepadding = 10; //κενο γραμμης μεταξυ των κουμπιων "Exit" και Game. //Στην ΧΝΑ για να εμφανιστουν καποια γραφικα στο παιχνιδι με τη συναρτηση draw ειναι //απαραιτητο ο κωδικας για την φωτογραφια να μπει αναμεσα στις εντολες //spritebatch.begin() και spritebatch.end().[5] spritebatch.begin(); for (int i = 0; i < buttonlist.count; i++)//για οσα κουμπια εχει η λίστα κανε //Το χρωμα για οταν το κουμπι ειναι επιλεγμενο και το χρωμα για οταν το κουμπι δεν ειναι //ειναι επιλεγμενο color = (i == selected)? Color.Goldenrod : Color.Aquamarine; //Ο κατω κωδικας εμφανιζει τα κουμπια στο μενου. spritebatch.drawstring(spritefont, buttonlist[i], new Vector2 ((BrainssssKiCKer.screen.Width / 2) - (spritefont.measurestring(buttonlist[i]).x / 2), (BrainssssKiCKer.screen.Height / 2) - (spritefont.linespacing * buttonlist.count / 2) + ((spritefont.linespacing + linepadding) * i)), color); //Τα παρακατω μηνυματα εμφανιζονται μονο στο μενου if (BrainssssKiCKer.Gamestate == "Menu") //O παρακατω κωδικας εμφανιζει στην οθονη την κατασταση καποιων μεταβλητων //και δινει διαφορες οδηγιες στον χρηστη για το πως να χειριστει το παιχνιδι. [4] spritebatch.drawstring(brainsssskicker.font, "Project Create by Gerakas George Hlias", new Vector2(15, BrainssssKiCKer.font.LineSpacing), Color.Red); spritebatch.drawstring(brainsssskicker.font, "AM : 4929 ATEI Chania", new Vector2(15, 10 + BrainssssKiCKer.font.LineSpacing), Color.Red); spritebatch.drawstring(brainsssskicker.font, "Project for Dr.Konstantaras A.", new Vector2(15, 30 + BrainssssKiCKer.font.LineSpacing), Color.Red); spritebatch.drawstring(brainsssskicker.font, "HELLOW To BrainsSSSS KiCKer ", new Vector2(600, BrainssssKiCKer.font.LineSpacing), Color.Purple); spritebatch.drawstring(brainsssskicker.font, "Beta ", new Vector2(1200, BrainssssKiCKer.font.LineSpacing), Color.Purple); spritebatch.drawstring(brainsssskicker.font, "...Control Menu with Buttons: Up,Down,Enter to Play or Exit...", new Vector2(350, BrainssssKiCKer.font.LineSpacing), Color.Green); 47

48 [4] spritebatch.drawstring(brainsssskicker.font, "Game controls by KEYS (W, A,S,D,R,MOUSE) or (UP,DOWN,LEFT,RIGHT,MOUSE, 0 to reload or CTRL)", new Vector2(105, BrainssssKiCKer.font.LineSpacing), Color.Green); spritebatch.drawstring(brainsssskicker.font, "...also you can shoot with SPACE", new Vector2(350, BrainssssKiCKer.font.LineSpacing), Color.Green); spritebatch.drawstring(brainsssskicker.font, "For fullscreen press the button 'F1' ", new Vector2(850, 60 + BrainssssKiCKer.font.LineSpacing), Color.SandyBrown); spritebatch.drawstring(brainsssskicker.font, "For exit fullscreen press the button 'F2' ", new Vector2(850, BrainssssKiCKer.font.LineSpacing), Color.SandyBrown); if (heli.a!= 11) //Το μηνυμα εμφανιζεται μεχρι να τερματιστει το παιχνιδι. spritebatch.drawstring(brainsssskicker.font, "Press Start to continue to round " + heli.a, new Vector2(550, BrainssssKiCKer.font.LineSpacing), Color.GreenYellow); if (heli.a!= 11 && heli.a!= 1) //Το μηνυμα εμφανιζεται απο το τελος του 1 γυρου μεχρι να τελιωσει παιχνιδι. spritebatch.drawstring(brainsssskicker.font, "Congratulation you finish the round " + c + "!!!! " + heli.d + " Rounds Remaining!!!!", new Vector2(350, BrainssssKiCKer.font.LineSpacing), Color.GreenYellow); if (heli.a == 11) //Το μηνυμα εμφανιζεται μολις τερματιστει το παιχνιδι. spritebatch.drawstring(brainsssskicker.font, "Congratulation you win :)!!! ", new Vector2(650, BrainssssKiCKer.font.LineSpacing), Color.GreenYellow); spritebatch.drawstring(brainsssskicker.font, "No more rounds!!!you can only exit the game!!! ", new Vector2(550, BrainssssKiCKer.font.LineSpacing), Color.GreenYellow); spritebatch.end(); 48

49 49 Το περιβαλλον του παιχνιδιου[3]

50 50

51 Στάδια βελτίωσης του παιχνιδιού Eνδιάμεσα απο αυτα τα Beta υπηρξαν και αλλα με μικροαλλαγες Ημερομηνια:5/7/2014 Beta Πολυ λιτο μενου χωρις πληροφοριες 51

52 Ημερομηνια:25/7/2014 Beta Το μενού έχει περισσότερες πληροφορίες και οδηγίες. 52

53 Ημερομηνια:22/9/2014 Beta Η τελική μορφή του μενού του παιχνιδιού που τα εχει ολα! 53

54 Ημερομηνια:3/11/2014 Beta Το μενού του παιχνιδιού παραμένει ίδιο.οταν ο παικτης κερδισει και τον τελευταιο γυρο το παιχνιδι γυρναει στο μενου με τα παρακατω μηνυματα και ο χρηστης το μονο που μπορει να κανει ειναι να πατησει το κουμπι exit. 54

55 Peter Kuhn "Mister Goodcat" 10) Function X press C# Aplication design(rectangle diagram) Εισαγωγή στη C# Γκανάτσιος) 55

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

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

Διαβάστε περισσότερα

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010 Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010 Δημιουργία ενός απλού παιχνιδιού με το Gamemaker (μετάφραση από το http://www.stuffucanuse.com/downloads/gamemaker-introductionlessons/free_game_downloads_gamemaker.htm)

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ 447 ΥΠΟΛΟΓΙΣΤΙΚΗ ΟΡΑΣΗ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ 447 ΥΠΟΛΟΓΙΣΤΙΚΗ ΟΡΑΣΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ 447 ΥΠΟΛΟΓΙΣΤΙΚΗ ΟΡΑΣΗ PROJECT Pac-Man game controlled with Kinect Αβραάμια Κοντού 990412 Νικόλας Τσεκούρας 1021973 Σκεύη Ματσεντίδου 982267 1 ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή 3-4 2. Επεξήγηση

Διαβάστε περισσότερα

Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών

Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 06: Συνδεδεμένες Λίστες & Εφαρμογές Στοιβών και Ουρών Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Υλοποίηση ΑΤΔ με Συνδεδεμένες Λίστες -

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07 Ακαδ έτος 2007-2008 ΠΛΗΡΟΦΟΡΙΚΗ Ι Φερεντίνος 22/11/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με ΑΜ σε 3, 7, 8 & 9 22/11/07 Παράδειγμα με if/else if και user input: import javautil*; public class Grades public

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Δημιουργία παιχνιδιού με το Game Maker 8.1 Lite 1

Δημιουργία παιχνιδιού με το Game Maker 8.1 Lite 1 Δημιουργία παιχνιδιού με το Game Maker 8.1 Lite 1 Νίκος Αγγελιδάκης, ΠΕ19 2 έκδοση 1.0 Φεβρουάριος 2012 1 http://www.yoyogames.com/gamemaker/windows 2 http://aggelid.mysch.gr Περιεχόμενα σελ. 1 - Εισαγωγή

Διαβάστε περισσότερα

C# (Sharp) ΤΕΙ Λάρισας. Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπικοινωνιών. βιβλίο μελέτης εργαστηρίου. προγραμματισμός ΙΙ. έκδοση 1.0.

C# (Sharp) ΤΕΙ Λάρισας. Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπικοινωνιών. βιβλίο μελέτης εργαστηρίου. προγραμματισμός ΙΙ. έκδοση 1.0. ΤΕΙ Λάρισας Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπικοινωνιών προγραμματισμός ΙΙ C# (Sharp) βιβλίο μελέτης εργαστηρίου έκδοση 1.0.1 Νεβράντζας Βάιος-Γερμανός Λάρισα Φεβρουάριος 2011 σελίδα 2 από 39 Ευρετήριο

Διαβάστε περισσότερα

Windows 7 Windows Vista

Windows 7 Windows Vista ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΗΠΕΙΡΟΥ ΚΕΝΤΡΟ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΩΝ Κωστακιοί Άρτας, ΑΡΤΑ 47100 - Tηλ.. 26810 50500 - Fax. 2681 76941 e-mail: noc@teiep.gr ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΔΙΚΤΥΟ ΤΟΥ Τ.Ε.Ι. ΗΠΕΙΡΟΥ

Διαβάστε περισσότερα

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

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Τμήμα Πληροφορικής & Τηλ/νιών Τομέας Προγ/σμού & Τεχνολογίας Λογισμικού Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Δρ. Νικόλαος Θ. Λιόλιος Καθηγητής Φεβρουάριος 2012 1. Εισαγωγή Το Visual

Διαβάστε περισσότερα

Δημιουργία παρουσιάσεων (Power Point)

Δημιουργία παρουσιάσεων (Power Point) Δημιουργία παρουσιάσεων (Power Point) Το πρόγραμμα PowerPoint είναι η «αίθουσα προβολών» του Office. Μια προβολή (παρουσίασης) του PowerPoint μπορεί να έχει ως στόχο να ενημερώσει, να διδάξει ή και να

Διαβάστε περισσότερα

Βασικά Στοιχεία της Java

Βασικά Στοιχεία της Java Βασικά Στοιχεία της Java Παύλος Εφραιμίδης Java Βασικά Στοιχεία της γλώσσας Java 1 Τύποι Δεδομένων Η Java έχει δύο κατηγορίες τύπων δεδομένων: πρωτογενείς (primitive) τύπους δεδομένων αναφορές Java Βασικά

Διαβάστε περισσότερα

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word Επειδή οι μεταγενέστερες εκδόσεις του Word δεν περιλαμβάνουν στο μενού τη δυνατότητα δημιουργίας πολλαπλών

Διαβάστε περισσότερα

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

Κεφάλαιο 1.Εντολές κίνησης Προγραμματίζω με το ΒΥΟΒ 1 Κεφάλαιο 1.Εντολές κίνησης Από το μάθημα της Φυσικής γνωρίζουμε ότι κίνηση σημαίνει αλλαγή της θέσης ενός αντικειμένου. Οι εντολές κίνησης που μας παρέχει το ΒΥΟΒ χωρίζονται

Διαβάστε περισσότερα

Μεταβλητές. Για περισσότερες λεπτομέρειες πάνω στις μεταβλητές θα ήταν χρήσιμο να διαβάσεις το

Μεταβλητές. Για περισσότερες λεπτομέρειες πάνω στις μεταβλητές θα ήταν χρήσιμο να διαβάσεις το Τάξη : Α Λυκείου Λογισμικό : Scratch Ενδεικτική Διάρκεια : 45 λεπτά Μεταβλητές Όλα όσα έμαθες στα προηγούμενα φυλλάδια είναι απαραίτητα για να υλοποιήσεις απλές εφαρμογές. Ωστόσο αν θέλεις να δημιουργήσεις

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΔΙΚΤΥΟ ΤΟΥ ΟΠΑ ΑΠΟ ΕΞΩΤΕΡΙΚΟ ΠΑΡΟΧΟ (ΥΠΗΡΕΣΙΑ VPN) Windows 8, Windows 7, Windows Vista, Windows XP

ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΔΙΚΤΥΟ ΤΟΥ ΟΠΑ ΑΠΟ ΕΞΩΤΕΡΙΚΟ ΠΑΡΟΧΟ (ΥΠΗΡΕΣΙΑ VPN) Windows 8, Windows 7, Windows Vista, Windows XP ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΔΙΚΤΥΟ ΤΟΥ ΟΠΑ ΑΠΟ ΕΞΩΤΕΡΙΚΟ ΠΑΡΟΧΟ (ΥΠΗΡΕΣΙΑ VPN) Windows 8, Windows 7, Windows Vista, Windows XP Σε περίπτωση κατά την οποία ο υπολογιστής που χρησιμοποιείτε συνδέεται στο Internet

Διαβάστε περισσότερα

3 Αλληλεπίδραση Αντικειμένων

3 Αλληλεπίδραση Αντικειμένων Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή

Διαβάστε περισσότερα

Βιοϊατρική τεχνολογία

Βιοϊατρική τεχνολογία Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Βιοϊατρική τεχνολογία Ενότητα 5: Οξύμετρο (OxyPro Project) Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr ΕΕΔΙΠ Μπέλλου Σοφία e-mail: sbellou@uowm.gr

Διαβάστε περισσότερα

Πώς γίνεται το debug? Το debug γίνεται με δύο τρόπους, ως επί το πλείστον. Τουλάχιστον, εγώ δύο έμαθα, και αυτούς αναφέρω.

Πώς γίνεται το debug? Το debug γίνεται με δύο τρόπους, ως επί το πλείστον. Τουλάχιστον, εγώ δύο έμαθα, και αυτούς αναφέρω. Τι είναι το debug μαμα? Με απλά λόγια, debug (αποσφαλμάτωση αλλά που να κάθεσαι να το πεις), είναι η διαδικασία εντοπισμού και διόρθωσης σφαλμάτων που υπάρχουν σε κώδικα (ασχέτως γλώσσας προγραμματισμού).

Διαβάστε περισσότερα

7. Επαναλήψεις (Loops) Προγραμματισμός EV3 Ακαδημία Ρομποτικής 58

7. Επαναλήψεις (Loops) Προγραμματισμός EV3 Ακαδημία Ρομποτικής 58 7. Επαναλήψεις (Loops) Προγραμματισμός EV3 Ακαδημία Ρομποτικής 58 Στόχοι Μαθήματος 1. Πώς να επαναλάβετε μια δράση 2. Μάθετε πώς να χρησιμοποιείτε το Loop Blocks Προγραμματισμός EV3 Ακαδημία Ρομποτικής

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον

Διαβάστε περισσότερα

Το λογισμικό παρουσιάσεων Power Point 2007

Το λογισμικό παρουσιάσεων Power Point 2007 Το λογισμικό παρουσιάσεων Power Point 2007 Το πρόγραμμα PowerPoint είναι η «αίθουσα προβολών» του Office. Μια προβολή (παρουσίασης) του PowerPoint μπορεί να έχει ως στόχο να ενημερώσει, να διδάξει ή και

Διαβάστε περισσότερα

Σενάριο Εστίασης Win XP:

Σενάριο Εστίασης Win XP: Σενάριο Εστίασης Win XP: Υλικό: 1 Η/Υ (backoffice), 1 POS, 1 router Motorola, 1 PDA. Σενάριο: Sync του backoffice με το POS και merge του POS με το PDA. Προϋποθέσεις Software: 1) BACK OFFICE : WIN XP pro,.net

Διαβάστε περισσότερα

Εισαγωγικές έννοιες. Ιωάννης Γ. Τσούλος 2014

Εισαγωγικές έννοιες. Ιωάννης Γ. Τσούλος 2014 Εισαγωγικές έννοιες Ιωάννης Γ. Τσούλος 2014 Διάγραμμα παρουσιάσεως 1. Κατηγορίες κινητών τηλεφώνων 2. Κατηγορίες έξυπνων κινητών τηλεφώνων 3. Προγραμματισμός κινητών συσκευών 4. Ξεκίνημα με το Eclipse

Διαβάστε περισσότερα

Ευ ομή. Εγχειρίδιο χρήσης του περιβάλλοντος LT125-dp

Ευ ομή. Εγχειρίδιο χρήσης του περιβάλλοντος LT125-dp Ευ ομή Εγχειρίδιο χρήσης του περιβάλλοντος LT125-dp Περιεχόμενα 1. Χειρισμός του περιβάλλοντος LT125-dp Εγκατάσταση & Τρέξιμο Χειρισμός της ψηφιακής εφαρμογής Πλοήγηση στο περιεχόμενο Αλλαγή του μεγέθους

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

1. Τα τμήματα της επιφάνειας εργασίας των Windows

1. Τα τμήματα της επιφάνειας εργασίας των Windows 1. Τα τμήματα της επιφάνειας εργασίας των Windows Εικονίδια συντομεύσεων (αρχείου-φακέλου) Εικονίδια Ανενεργά Ενεργό Επιφάνεια (αρχείου-φακέλου) παράθυρα παράθυρο εργασίας Γραμμή μενού Γραμμή εργαλείων

Διαβάστε περισσότερα

DreamSpark. Τώρα λοιπόν που μάθατε περι τίνος πρόκειται, ας δούμε πώς μπορεί κάποιος να κατεβάσει λογισμικό από το site του DreamSpark.

DreamSpark. Τώρα λοιπόν που μάθατε περι τίνος πρόκειται, ας δούμε πώς μπορεί κάποιος να κατεβάσει λογισμικό από το site του DreamSpark. DreamSpark Το DreamSpark είναι μια πρωτοβουλία της Microsoft, για δωρεάν παροχή λογισμικού σε φοιτητές και άλλα μέλη ακαδημαϊκών ιδρυμάτων, για ερευνητικούς-εκπαιδευτικούς σκοπούς και όχι μόνο. To λογισμικό

Διαβάστε περισσότερα

ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE)

ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE) ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE) ΣΤΟΧΟΙ: 1. Λογισμικό 2. Λογισμικό Λειτουργικού Συστήματος 3. Προσαρμοστικό Γραφικών Χρήστη 4. Λογισμικών Εφαρμογών 5. Διαφορά Μεταξύ Λογισμικού Λειτουργικού Συστήματος Και

Διαβάστε περισσότερα

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΜΑΘΗΜΑ : Η/Υ I (ενότητα WINDOWS) ΥΠΕΥΘΥΝΟΣ : ΑΝΑΣΤΑΣΙΟΣ ΟΙΚΟΝΟΜΙΔΗΣ, Καθηγητής ΕΡΓΑΣΤΗΡΙΑ : ΘΕΑΝΩ ΧΑΤΖΙΔΑΚΗ, Εργαστηριακό

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές)

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές) ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές) Βρείτε τα λάθη Στο πρόγραμμα στην επόμενη διαφάνεια υπάρχουν διάφορα λάθη Ποια είναι? public abstract

Διαβάστε περισσότερα

MESSAGE EDITOR FOR WINDOWS Ο ΗΓΙΕΣ ΧΡΗΣΕΩΣ

MESSAGE EDITOR FOR WINDOWS Ο ΗΓΙΕΣ ΧΡΗΣΕΩΣ MESSAGE EDITOR FOR WINDOWS Ο ΗΓΙΕΣ ΧΡΗΣΕΩΣ Εγκατάσταση και λειτουργία message editor: Αρχικά τοποθετούµε το cd στον υπολογιστή και εµφανίζεται η οθόνη εγκατάστασης Στην περίπτωση που δεν εµφανιστεί αυτόµατα

Διαβάστε περισσότερα

Κεφάλαιο 7: Υλοποίηση εφαρμογών σε προγραμματιστικά περιβάλλοντα. Εφαρμογές Πληροφορικής Κεφ. 7 Καραμαούνας Πολύκαρπος 1

Κεφάλαιο 7: Υλοποίηση εφαρμογών σε προγραμματιστικά περιβάλλοντα. Εφαρμογές Πληροφορικής Κεφ. 7 Καραμαούνας Πολύκαρπος 1 Κεφάλαιο 7: Υλοποίηση εφαρμογών σε προγραμματιστικά περιβάλλοντα Καραμαούνας Πολύκαρπος 1 Ανάπτυξη εφαρμογών για φορητές συσκευές: τείνουν να αντικαταστήσουν τους υπολογιστές και άλλες συσκευές. Τα δημοφιλέστερα

Διαβάστε περισσότερα

Περιεχόμενα. Λίγα λόγια για αυτή την έκδοση... 23

Περιεχόμενα. Λίγα λόγια για αυτή την έκδοση... 23 Περιεχόμενα Λίγα λόγια για αυτή την έκδοση...... 23 Κεφάλαιο 1 Εισαγωγή... 25 O στόχος του βιβλίου και σε ποιους απευθύνεται... 27 Πώς να διαβάσετε αυτό το βιβλίο... 27 Εκπαίδευση από απόσταση... 29 Ιστορική

Διαβάστε περισσότερα

Π.1.2.2.: Εγχειρίδια χρήσης της υπηρεσίας για τα κύρια υποστηριζόμενα Λειτουργικά

Π.1.2.2.: Εγχειρίδια χρήσης της υπηρεσίας για τα κύρια υποστηριζόμενα Λειτουργικά ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΗΠΕΙΡΟΥ ΚΕΝΤΡΟ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΩΝ Κωστακιοί Άρτας, ΑΡΤΑ 47100 - Tηλ.. 26810 50500 - Fax. 2681 76941 e-mail: noc@teiep.gr ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΔΙΚΤΥΟ ΤΟΥ Τ.Ε.Ι. ΗΠΕΙΡΟΥ

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ.

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ. ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ Ηλεκτρονική Υποβολή Α.Π.Δ. ΠΕΡΙΕΧΟΜΕΝΑ 1) Είσοδος στην εφαρμογή 2) Δημιουργία Περιόδου Υποβολής 2.α) Ακύρωση Περιόδου Υποβολής 3) Μέθοδος Υποβολής: Συμπλήρωση Φόρμας 3.α) Συμπλήρωση

Διαβάστε περισσότερα

Πληρουορική Γ Γσμμασίοσ

Πληρουορική Γ Γσμμασίοσ Πληρουορική Γ Γσμμασίοσ Προγραμματισμός και Αλγόριθμοι Από το και τημ Χελώμα στημ Ευριπίδης Βραχνός http://evripides.mysch.gr/ 2014 2015 1 Προγραμματισμός Ζάννειο Πρότυπο Πειραματικό Γυμνάσιο Πειραιά Ενότητα:

Διαβάστε περισσότερα

Η γλώσσα προγραμματισμού C

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εισαγωγή στη C Λίγα λόγια για την C Γλώσσα προγραμματισμού υψηλού επιπέδου. Σχεδιάστηκε και υλοποιήθηκε από τον Dennis Richie στις αρχές της δεκαετίας του 1970 (Bell Labs). Η

Διαβάστε περισσότερα

Περιγραφή του βασικού παραθύρου του Cubase SE3. Εικόνα 1

Περιγραφή του βασικού παραθύρου του Cubase SE3. Εικόνα 1 Περιγραφή του βασικού παραθύρου του Cubase SE3 Εικόνα 1 Transport panel Προετοιμασία και εκτέλεση ηχογράφησης σε ένα κανάλι MIDI και Quantize 1. Ανοίγουμε το Cubase, πηγαίνουμε στο μενού File και επιλέγουμε

Διαβάστε περισσότερα

Υπερφόρτωση τελεστών (operator(

Υπερφόρτωση τελεστών (operator( Υπερφόρτωση τελεστών (operator( overloading) Η υπερφόρτωση τελεστών είναι ένα από τα πιο ενδιαφέροντα χαρακτηριστικά του αντικειμενοστραφούς προγραμματισμού. Αναφέρεται στην πρόσθετη χρήση των συνηθισμένων

Διαβάστε περισσότερα

ΣΥΝΔΕΣΗ ΚΑΤΑΓΡΑΦΙΚΟΥ ΣΤΟ INTERNET

ΣΥΝΔΕΣΗ ΚΑΤΑΓΡΑΦΙΚΟΥ ΣΤΟ INTERNET ΣΥΝΔΕΣΗ ΚΑΤΑΓΡΑΦΙΚΟΥ ΣΤΟ INTERNET 1) Συνδέουμε το καταγραφικό και τον Η/Υ με το ίδιο ADSL Router. 2) Έπειτα θα πρέπει να βρούμε την IP διεύθυνση που έχει το Router. Για να το κάνουμε αυτό, ακολουθούμε

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR KTEC

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR KTEC ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR KTEC 1) Πατάμε δεξί κλικ Μενού 2) Όνομα Χρήστη βάζουμε «admin» 3) Κωδικός Πρόσβασης το αφήνουμε «κενό» 4) Πατάμε OK και μπαίνουμε στο Μενού Είσοδος στο μενού Στην πρώτη εκκίνηση μετά

Διαβάστε περισσότερα

Ανακαλύπτω. Ο υπολογιστής στην πράξη!

Ανακαλύπτω. Ο υπολογιστής στην πράξη! ΔΗΜΟΣΙΑ ΚΕΝΤΡΙΚΗ ΒΙΒΛΙΟΘΗΚΗ ΛΕΒΑΔΕΙΑΣ ΣΥΛΛΟΓΟΣ «ΦΙΛΟΙ ΒΙΒΛΙΟΘΗΚΗΣ ΛΙΒΑΔΕΙΑΣ» Κατερίνα Κεράστα 2014 Α Μαθαίνω τον υπολογιστή μου Ανακαλύπτω Ο υπολογιστής στην πράξη! Ο υπολογιστής στην πράξη! Επιφάνεια

Διαβάστε περισσότερα

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008 Παράδειγμα: Μηχανή για Εισιτήρια 2 Ορισμός Κλάσεων Σύνταξη κλάσης: πεδία, κατασκευαστές, μέθοδοι Ένας αυτόματος εκδότης εισιτηρίων είναι μια μηχανή που δέχεται χρήματα και εκδίδει ένα εισιτήριο. Εκδίδει

Διαβάστε περισσότερα

Η ΑΞΙΟΠΟΙΗΣΗ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΛΟΓΙΣΜΙΚΟΥ COACH 5 ΣΤΗΝ ΔΙΔΑΣΚΑΛΙΑ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΤΟΥ ΗΛΕΚΤΡΟΝΙΚΟΥ ΤΟΜΕΑ ΤΩΝ Τ.Ε.Ε.

Η ΑΞΙΟΠΟΙΗΣΗ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΛΟΓΙΣΜΙΚΟΥ COACH 5 ΣΤΗΝ ΔΙΔΑΣΚΑΛΙΑ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΤΟΥ ΗΛΕΚΤΡΟΝΙΚΟΥ ΤΟΜΕΑ ΤΩΝ Τ.Ε.Ε. 2 Ο ΣΥΝΕΔΡΙΟ ΣΤΗ ΣΥΡΟ ΤΠΕ ΣΤΗΝ ΕΚΠΑΙΔΕΥΣΗ 485 Η ΑΞΙΟΠΟΙΗΣΗ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΛΟΓΙΣΜΙΚΟΥ COACH 5 ΣΤΗΝ ΔΙΔΑΣΚΑΛΙΑ ΜΑΘΗΜΑΤΩΝ ΕΙΔΙΚΟΤΗΤΑΣ ΤΟΥ ΗΛΕΚΤΡΟΝΙΚΟΥ ΤΟΜΕΑ ΤΩΝ Τ.Ε.Ε. Μπουλταδάκης Στέλιος Εκπαιδευτικός

Διαβάστε περισσότερα

Εφαρμογή Ηλεκτρονικής Υποβολής Δηλώσεων Ε9. Οδηγίες Χρήσης

Εφαρμογή Ηλεκτρονικής Υποβολής Δηλώσεων Ε9. Οδηγίες Χρήσης Εφαρμογή Ηλεκτρονικής Υποβολής Δηλώσεων Ε9 Οδηγίες Χρήσης Πίνακας Περιεχομένων 1. Αρχική οθόνη... 3 2. Αρχική Οθόνη Πιστοποιημένου Χρήστη... 4 2.1. Οριστικοποίηση της Περιουσιακής Εικόνας... 5 2.2. Καρτέλες

Διαβάστε περισσότερα

Εργασία για το Facility Game Μάθημα: Δομές Δεδομένων 2013-2014. Σωτήρης Γυφτόπουλος

Εργασία για το Facility Game Μάθημα: Δομές Δεδομένων 2013-2014. Σωτήρης Γυφτόπουλος Εργασία για το Facility Game Μάθημα: Δομές Δεδομένων 2013-2014 Σωτήρης Γυφτόπουλος Κανόνες του Facility Game (1/4) Στο Facility Game υπάρχει ένα σύνολο κόμβων που συνδέονται «σειριακά» και κάθε κόμβος

Διαβάστε περισσότερα

Χρήσιμες Ρυθμίσεις του Windows 7 στον Η/Υ σας

Χρήσιμες Ρυθμίσεις του Windows 7 στον Η/Υ σας Χρήσιμες Ρυθμίσεις του Windows 7 στον Η/Υ σας Πώς να δημιουργήσουμε ένα νέο λογαριασμό χρήστη (User Account) στα Windows 7 Αρκετές φορές τυχαίνει να χρησιμοποιούν διάφορα άτομα τον Η/Υ σας. Σε τέτοιες

Διαβάστε περισσότερα

ΕΠΛ233 Βιβλιοθήκες και Προσδιοριστές Πρόσβασης στην JAVA

ΕΠΛ233 Βιβλιοθήκες και Προσδιοριστές Πρόσβασης στην JAVA Βιβλιοθήκες και Προσδιοριστές Πρόσβασης στην JAVA 2 «Μονάδα Μετάφρασης» 2 «Μονάδα Μετάφρασης» Όταν δημιουργείται ένα αρχείο πηγαίου κώδικα στην Java, το αρχείο καλείται µονάδα µετάφρασης (compilation unit)

Διαβάστε περισσότερα

Διάγραμμα Κλάσεων. Class Diagram

Διάγραμμα Κλάσεων. Class Diagram Διάγραμμα Κλάσεων Class Diagram Γενικά Ορίζει τις κλάσεις αντικειμένων σε ένα σύστημα, τις μεθόδους και τις συναρτήσεις τους, και τις συσχετίσεις μεταξύ των κλάσεων. Περιγράφουν την δομή και συμπεριφορά

Διαβάστε περισσότερα

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010 Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010 Καθηγητής. Γουνόπουλος Άσκηση 1 Σκοπός της εργασίας αυτής είναι η κατανόηση της εσωτερικής λειτουργίας

Διαβάστε περισσότερα

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στοn επεξεργαστή κειμένου Microsoft Word. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στοn επεξεργαστή κειμένου Microsoft Word. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008 Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στοn επεξεργαστή κειμένου Microsoft Word Βόλος, Νοέμβριος 2008 To Microsoft Word (έκδοση 2003) είναι ένας εξελιγμένος επεξεργαστής κειμένου, με τον οποίο μπορούμε να δημιουργήσουμε

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εξαιρέσεις Εξαιρέσεις Στα προγράμματα μας θα πρέπει να μπορούμε να χειριστούμε περιπτώσεις που το πρόγραμμα δεν εξελίσσεται όπως το είχαμε προβλέψει Π.χ., κάνουμε

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ WEBCAM STATION EVOLUTION

ΕΓΧΕΙΡΙΔΙΟ WEBCAM STATION EVOLUTION ΕΓΧΕΙΡΙΔΙΟ WEBCAM STATION EVOLUTION ΠΕΡΙΕΧΟΜΕΝΑ Κάνοντας κλικ σε έναν τίτλο σε αυτόν τον πίνακα περιεχομένων, θα εμφανιστεί η αντίστοιχη παράγραφος 1. 2. 3. ΕΙΣΑΓΩΓΗ 3 ΡΥΘΜΙΣΗ ΗΧΟΥ ΚΑΙ ΒΙΝΤΕΟ 4 ΕΜΦΑΝΙΣΗ

Διαβάστε περισσότερα

Σενάριο 17: Παιχνίδι μνήμης με εικόνες

Σενάριο 17: Παιχνίδι μνήμης με εικόνες Σενάριο 17: Παιχνίδι μνήμης με εικόνες Φύλλο Εργασίας Τίτλος: Παιχνίδι μνήμης με εικόνες Γνωστικό Αντικείμενο: Εφαρμογές Πληροφορικής-Υπολογιστών Διδακτική Ενότητα: Διερευνώ - Δημιουργώ Ανακαλύπτω, Συνθετικές

Διαβάστε περισσότερα

Εισαγωγή 6. Είσοδος στα Windows και οθόνη κλειδώματος 11. Οι πρώτες ρυθμίσεις των Windows 8 29. H επιφάνεια εργασίας 49

Εισαγωγή 6. Είσοδος στα Windows και οθόνη κλειδώματος 11. Οι πρώτες ρυθμίσεις των Windows 8 29. H επιφάνεια εργασίας 49 περιεχόμενα Εισαγωγή 6 Είσοδος στα Windows και οθόνη κλειδώματος 11 Οι πρώτες ρυθμίσεις των Windows 8 29 H επιφάνεια εργασίας 49 Πλοήγηση στο Internet με τον Internet Explorer 65 Επικοινωνία και Κοινωνική

Διαβάστε περισσότερα

Τα σχήματα στη Logo δημιουργούνται με την κίνηση μιας μικρής χελώνας και την κατευθύνουμε με οδηγίες από το πληκτρολόγιο.

Τα σχήματα στη Logo δημιουργούνται με την κίνηση μιας μικρής χελώνας και την κατευθύνουμε με οδηγίες από το πληκτρολόγιο. e Τι είναι η Logo Η Logo είναι μία γλώσσα προγραμματισμού, η οποία μας δίνει τη δυνατότητα να κατασκευάσουμε διάφορα σχέδια και σχήματα με συνδυασμό χρωμάτων και ήχου. Τα σχέδια αυτά μπορεί να είναι απλά

Διαβάστε περισσότερα

Εφαρμογές Πληροφορικής Διαχείριση Αρχείων Η έννοια του αρχείου, βασικές έννοιες διαχείρισης αρχείων.

Εφαρμογές Πληροφορικής Διαχείριση Αρχείων Η έννοια του αρχείου, βασικές έννοιες διαχείρισης αρχείων. Εφαρμογές Πληροφορικής Διαχείριση Αρχείων Η έννοια του αρχείου, βασικές έννοιες διαχείρισης αρχείων. Ορισμός Ένα αρχείο είναι ένα σύνολο από σχετιζόμενες πληροφορίες οι οποίες έχουν αποθηκευτεί σε κάποιο

Διαβάστε περισσότερα

Εισαγωγή στο Libre Office. Bάιος Κολοφωτιάς Επιστημονικός Συνεργάτης Sweng Lab A.Π.Θ

Εισαγωγή στο Libre Office. Bάιος Κολοφωτιάς Επιστημονικός Συνεργάτης Sweng Lab A.Π.Θ Εισαγωγή στο Libre Office Bάιος Κολοφωτιάς Επιστημονικός Συνεργάτης Sweng Lab A.Π.Θ Εισαγωγή στο Libre Ofiice To LibreOffice είναι η ελεύθερη, πολυδύναμη (power-packed), σουΐτα προσωπικής παραγωγικότητας

Διαβάστε περισσότερα

Οδηγίες για την εγκατάσταση του πακέτου Cygwin

Οδηγίες για την εγκατάσταση του πακέτου Cygwin Οδηγίες για την εγκατάσταση του πακέτου Cygwin Ακολουθήστε τις οδηγίες που περιγράφονται σε αυτό το file μόνο αν έχετε κάποιο laptop ή desktop PC που τρέχουν κάποιο version των Microsoft Windows. 1) Copy

Διαβάστε περισσότερα

Μάθημα: Ψηφιακή Επεξεργασία Ήχου

Μάθημα: Ψηφιακή Επεξεργασία Ήχου Τμήμα Τεχνών Ήχου και Εικόνας Ιόνιο Πανεπιστήμιο Μάθημα: Ψηφιακή Επεξεργασία Ήχου Εργαστηριακή Άσκηση 5 «Διαδραστικός έλεγχος στερεοφωνικής εικόνας ήχου» Διδάσκων: Φλώρος Ανδρέας Δρ. Ηλ/γος Μηχ/κός & Τεχνολογίας

Διαβάστε περισσότερα

Computing and Information Systems Service. ιαχείριση Αρχείων

Computing and Information Systems Service. ιαχείριση Αρχείων ιαχείριση Αρχείων Η διαχείριση αρχείων είναι πολύ σηµαντική για την οργάνωση των αρχείων σας σε φακέλους και την αποθήκευση των αρχείων που συσχετίζονται µεταξύ τους στον ίδιο φάκελο. Αν έχετε πολλά αρχεία,

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ.

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ. ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ Ηλεκτρονική Υποβολή Α.Π.Δ. ΠΕΡΙΕΧΟΜΕΝΑ 1) Είσοδος στην εφαρμογή 2) Δημιουργία Περιόδου Υποβολής 2.α) Ακύρωση Περιόδου Υποβολής 2.β) Αντιγραφή από προηγούμενη περίοδο 3) Μέθοδος

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR TVT

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR TVT ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR TVT ΕΙΣΟΔΟΣ ΣΤΟ ΜΕΝΟΥ Στην πρώτη εκκίνηση του καταγραφικού πατάμε ΕΞΟΔΟΣ στο παράθυρο με τον «ΟΔΗΓΟ ΕΚΚΙΝΗΣΗΣ» 1) Κάνουμε δεξί κλικ και εμφανίζεται στο κάτω μέρος της οθόνης η μπάρα

Διαβάστε περισσότερα

Εγχειρίδιο Χρήσης Εφαρμογής TRS Client

Εγχειρίδιο Χρήσης Εφαρμογής TRS Client Εγχειρίδιο Χρήσης Εφαρμογής TRS Client Transaction Reporting System (TRS) Πίνακας Περιεχομένων 1. Γενικά... 3 1.1 Έλεγχος Διαθεσιμότητας... 4 1.2 Επιλογή Αρχείου... 4 1.3 Υπογραφή Αποστολή Δεδομένων...

Διαβάστε περισσότερα

Οδηγός αναβάθμισης των Windows 8 βήμα προς βήμα ΕΜΠΙΣΤΕΥΤ ΚΟ 1/53

Οδηγός αναβάθμισης των Windows 8 βήμα προς βήμα ΕΜΠΙΣΤΕΥΤ ΚΟ 1/53 Οδηγός αναβάθμισης των Windows 8 βήμα προς βήμα ΕΜΠΙΣΤΕΥΤ ΚΟ 1/53 Περιεχόμενα 1. 1. Διαδικασία των Windows 8 2. Απαιτήσεις συστήματος 3. Προετοιμασία 2. 3. 4. 5. με τη 6. 1. Εξατομίκευση 2. Ασύρματο 3.

Διαβάστε περισσότερα

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Διαπροσωπείες Φυσικής Αλληλεπίδρασης σε Περιβάλλοντα Παιχνιδιών ΔΙΠΛΩΜΑΤΙΚΗ

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ GRS-1

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ GRS-1 ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ GRS-1 Σελίδα 1 ΓΕΝΙΚΑ - ΕΙΣΑΓΩΓΗ Το GRS-1 της TOPCON διαθέτει λειτουργικό σύστημα Windows CE NET 6.1 παρέχοντας την δυνατότητα εγκατάστασης οποιασδήποτε εφαρμογής και λογισμικού έκδοσης

Διαβάστε περισσότερα

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΙΟΥΝΙΟΥ

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΙΟΥΝΙΟΥ ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΙΟΥΝΙΟΥ ΜΑΘΗΜΑ : Πληροφορική Κατεύθυνσης ΤΑΞΗ : Β Αρ. σελίδων : 11 Ηµεροµηνία : 10/6/2008 Ώρα Έναρξης : 7:45 π.µ ιάρκεια : 2 ώρες Ονοµατεπώνυµο :...Τµήµα : Αριθµός :...Βαθµός

Διαβάστε περισσότερα

Εισαγωγή 6. Οδηγίες για καλύτερη χρήση του YouTube 12. Δημιουργία λογαριασμού 16. Δημιουργία καναλιού 26. Έσοδα από τα βίντεο 42

Εισαγωγή 6. Οδηγίες για καλύτερη χρήση του YouTube 12. Δημιουργία λογαριασμού 16. Δημιουργία καναλιού 26. Έσοδα από τα βίντεο 42 περιεχόμενα Εισαγωγή 6 Οδηγίες για καλύτερη χρήση του YouTube 12 Δημιουργία λογαριασμού 16 Δημιουργία καναλιού 26 Έσοδα από τα βίντεο 42 Εμφάνιση στατιστικών 57 Μηνύματα και επικοινωνία 65 Επεξεργασία

Διαβάστε περισσότερα

ΣΥΝΟΠΤΙΚΟΣ ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C

ΣΥΝΟΠΤΙΚΟΣ ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΣΥΝΟΠΤΙΚΟΣ ΟΔΗΓΟΣ ΓΛΩΣΣΑΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C 1 Εισαγωγή Ο προγραμματισμός είναι μια διαδικασία επίλυσης προβλημάτων με χρήση Η/Υ. Ένα πρόγραμμα είναι ένα σύνολο εντολών κάποιας γλώσσας προγραμματισμού,

Διαβάστε περισσότερα

ΜICROSOFT VISUAL STUDIO 2008. Eργ 1: Ανάπτυξη απλής εφαρµογής: Solutions, Projects, GUI, Events, Debugging. Εισαγωγή

ΜICROSOFT VISUAL STUDIO 2008. Eργ 1: Ανάπτυξη απλής εφαρµογής: Solutions, Projects, GUI, Events, Debugging. Εισαγωγή ΜICROSOFT VISUAL STUDIO 2008 Eργ 1: Ανάπτυξη απλής εφαρµογής: Solutions, Projects, GUI, Events, Debugging Εισαγωγή Visual Basic 2008 Eργαλείο ανάπτυξης εντυπωσιακών εφαρµογών στα Windows, στο Web, φορητά

Διαβάστε περισσότερα

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Εισαγωγή στην Πληροφορική & τον Προγραμματισμό Ενότητα 11 η : Αντικείμενα Γραφικής Διασύνδεσης (Μέρος 1 ο ) Ι. Ψαρομήλιγκος Χ.

Διαβάστε περισσότερα

ΤΟ MICROSOFT WORD XP. Ας ξεκινήσουμε λοιπόν!

ΤΟ MICROSOFT WORD XP. Ας ξεκινήσουμε λοιπόν! XP ΚΑΡΤΕΛΑ ΕΡΓΑΣΙΑΣ 1 Το Microsoft Word είναι ένα πρόγραμμα στον υπολογιστή που σας βοηθά να γράφετε όμορφα κείμενα στα οποία μπορείτε να προσθέσετε εικόνες, γραφικά ακόμα και ήχους. Aφού γράψετε ένα κείμενο,

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ

Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Προγραμματισμός Η/Υ Ι (Χρήση της C) 6 η Θεωρία ΜΟΝΟΔΙΑΣΤΑΤΟΙ ΠΙΝΑΚΕΣ Σκοπός του μαθήματος Σκοπός του παρόντος μαθήματος είναι να μάθετε να κάνετε εισαγωγή δεδομένων σε πίνακες και περαιτέρω επεξεργασία

Διαβάστε περισσότερα

Αντικείμενα (Objects) στην Java. Αντικείμενα στη Java. Δημιουργία Αντικειμένων. Δηλώσεις Μεταβλητών (2) Ο τελεστής new (1)

Αντικείμενα (Objects) στην Java. Αντικείμενα στη Java. Δημιουργία Αντικειμένων. Δηλώσεις Μεταβλητών (2) Ο τελεστής new (1) Αντικείμενα (Objects) στην Java Αντικείμενα στη Java Παύλος Εφραιμίδης Ένα πρόγραμμα Java κατά την εκτέλεσή του δημιουργεί αντικείμενα τα αντικείμενα αλληλεπιδρούν, στέλνοντας μηνύματα το ένα στο άλλο

Διαβάστε περισσότερα

ΣΤΟΙΧΕΙΑ ΤΗΣ ΓΛΩΣΣΑΣ C++ Constructors, Destructors, Pointers IO Streams, File Streams

ΣΤΟΙΧΕΙΑ ΤΗΣ ΓΛΩΣΣΑΣ C++ Constructors, Destructors, Pointers IO Streams, File Streams ΣΤΟΙΧΕΙΑ ΤΗΣ ΓΛΩΣΣΑΣ C++ Constructors, Destructors, Pointers IO Streams, File Streams CONSTRUCTORS DESTRUCTORS Η κλάση mystring class mystring private: char s[100]; public: char *GetString(); void SetString(char

Διαβάστε περισσότερα

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στο Λειτουργικό Σύστημα Windows XP. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008

Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στο Λειτουργικό Σύστημα Windows XP. Εισηγητής: Χαριτωνίδης Γεώργιος. Βόλος, Νοέμβριος 2008 Κ.Α.ΕΛ.Ε. Σημειώσεις επάνω στο Λειτουργικό Σύστημα Windows XP Βόλος, Νοέμβριος 2008 Τα Windows είναι ένα Λειτουργικό Σύστημα που χρησιμοποιείται σε εκατομμύρια υπολογιστές στον κόσμο. Μας βοηθούν στο να

Διαβάστε περισσότερα

Οδηγός Εγκατάστασης. Εγχειρίδιο Χρήσης. Νεοελληνική Γλώσσα. Κατηγορία Λογισμικού / Θεματική Ενότητα. Νεοελληνική Γλώσσα / Γενική Αγωγή.

Οδηγός Εγκατάστασης. Εγχειρίδιο Χρήσης. Νεοελληνική Γλώσσα. Κατηγορία Λογισμικού / Θεματική Ενότητα. Νεοελληνική Γλώσσα / Γενική Αγωγή. Οδηγός Εγκατάστασης Εγχειρίδιο Χρήσης Νεοελληνική Γλώσσα Α-Γ Γυμνασίου Κατηγορία Λογισμικού / Θεματική Ενότητα Νεοελληνική Γλώσσα / Γενική Αγωγή Τάξεις-Βαθμίδα Α-Γ Γυμνασίου Ειδική Εκπαιδευτική Ανάγκη

Διαβάστε περισσότερα

ΓΙΑΝΝΕΝΑ & ΣΥΓΧΡΟΝΗ ΔΗΜΙΟΥΡΓΙΑ ΔΙΑΧΕΙΡΙΣΗ ΓΙΑΝΝΕΝΑ & ΣΥΓΧΡΟΝΗ ΔΗΜΙΟΥΡΓΙΑ

ΓΙΑΝΝΕΝΑ & ΣΥΓΧΡΟΝΗ ΔΗΜΙΟΥΡΓΙΑ ΔΙΑΧΕΙΡΙΣΗ ΓΙΑΝΝΕΝΑ & ΣΥΓΧΡΟΝΗ ΔΗΜΙΟΥΡΓΙΑ ΓΙΑΝΝΕΝΑ & ΣΥΓΧΡΟΝΗ ΔΗΜΙΟΥΡΓΙΑ ΔΙΑΧΕΙΡΙΣΗ Περιγραφή και επεξήγηση της χρήσης του χώρου διαχείρισης της ιστοσελίδας για τους καλλιτέχνες 1 Περιεχόμενα Είσοδος στο χώρο διαχείρισης...3 Επεξεργασία της σελίδας

Διαβάστε περισσότερα

Αναδρομικοί Αλγόριθμοι

Αναδρομικοί Αλγόριθμοι Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας ένα ή περισσότερα στιγμιότυπα του ίδιου προβλήματος. Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας

Διαβάστε περισσότερα

Σύνδεση σε ένα Microsoft Windows XP Η/Υ

Σύνδεση σε ένα Microsoft Windows XP Η/Υ Σύνδεση σε ένα Microsoft Windows XP Η/Υ Αυτός ο οδηγός εξηγεί πώς θα συνδεθείτε σε έναν Ηλεκτρονικό Υπολογιστή (Η/Υ) του Frederick, πώς να καταχωρίσετε το όνοµα χρήστη και τον προσωπικό σας κωδικό και

Διαβάστε περισσότερα

Windows XP. Αρχικές Ρυθμίσεις - Οργάνωση Αρχείων. 1. Ρυθμίσεις. 2 Οργάνωση Αρχείων

Windows XP. Αρχικές Ρυθμίσεις - Οργάνωση Αρχείων. 1. Ρυθμίσεις. 2 Οργάνωση Αρχείων Windows XP Αρχικές Ρυθμίσεις - Οργάνωση Αρχείων 1. Ρυθμίσεις 1.1 Επιφάνειας Εργασίας. Όταν γίνεται η εγκατάσταση των WindowsXP τότα κατά την πρώτη εκκίνηση στην επιφάνεια εργασίας φαίνεται μόνο ένα εικονίδιο

Διαβάστε περισσότερα

ΛΙΓΕΣ ΑΠΛΕΣ ΟΔΗΓΙΕΣ WAVE MODE MOBILE. Cod. Art. A0138 / A0139

ΛΙΓΕΣ ΑΠΛΕΣ ΟΔΗΓΙΕΣ WAVE MODE MOBILE. Cod. Art. A0138 / A0139 WAVE MODE MOBILE ΛΙΓΕΣ ΑΠΛΕΣ ΟΔΗΓΙΕΣ Cod. Art. A038 / A039 Habakis Co Υψηλάντου 4 456, Κηφισιά Τηλ.: 20807470 Fax: 208074662 Email: service@habakis.gr www.habakis.gr CISA SpA Via Oberdan, 42 4808 Faenza

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ GPRS 1. ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ GOOGLE EARTH

ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ GPRS 1. ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ GOOGLE EARTH Αχαρναί 20.7.09 ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ GPRS 1. ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ GOOGLE EARTH Για τη σωστή λειτουργία του προγράμματος πρέπει να έχετε εγκαταστήσει στον υπολογιστή σας το λογισμικό χαρτογράφησης

Διαβάστε περισσότερα

Γρήγορη Εκκίνηση. Όταν ξεκινήσετε το GeoGebra, εμφανίζεται το παρακάτω παράθυρο:

Γρήγορη Εκκίνηση. Όταν ξεκινήσετε το GeoGebra, εμφανίζεται το παρακάτω παράθυρο: Τι είναι το GeoGebra; Γρήγορη Εκκίνηση Λογισμικό Δυναμικών Μαθηματικών σε ένα - απλό στη χρήση - πακέτο Για την εκμάθηση και τη διδασκαλία σε όλα τα επίπεδα της εκπαίδευσης Συνδυάζει διαδραστικά γεωμετρία,

Διαβάστε περισσότερα

Μεταφραστής (Compiler)

Μεταφραστής (Compiler) Windows Καθαρισµος οθονης cls Unix clear Τελεστες ανακατευθυνσης > > >> >> < < Εντολες σε αρχεια * * (wild card) del Α rm Α ιαγραφη type Α cat Α Εµφανιση copy Α Β cp Α Β Αντιγραφη ren Α Β mv Α Β Αλλαγη

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ... 2 ΠΡΟΛΟΓΟΣ... 3 ΕΙΣΑΓΩΓΗ... 4 ΤΑ ΚΟΥΜΠΙΑ ΚΑΙ ΤΑ ΜΠΛΟΚ... 6 ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΤΟΥΣ ΚΙΝΗΤΗΡΕΣ... 9 ΚΙΝΗΣΕΙΣ ΚΙΝΗΤΗΡΑ...

ΠΕΡΙΕΧΟΜΕΝΑ... 2 ΠΡΟΛΟΓΟΣ... 3 ΕΙΣΑΓΩΓΗ... 4 ΤΑ ΚΟΥΜΠΙΑ ΚΑΙ ΤΑ ΜΠΛΟΚ... 6 ΧΡΗΣΙΜΟΠΟΙΩΝΤΑΣ ΤΟΥΣ ΚΙΝΗΤΗΡΕΣ... 9 ΚΙΝΗΣΕΙΣ ΚΙΝΗΤΗΡΑ... ΒΑΣΙΚΑ ΜΑΘΗΜΑΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ... 2 ΠΡΟΛΟΓΟΣ... 3 ΕΙΣΑΓΩΓΗ... 4 Η ΑΝΑΠΤΥΞΗ ΤΗΣ ΟΘΟΝΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ... 4 Ο ΕΚΠΑΙΔΕΥΤΗΣ ΡΟΜΠΟΤ... 5 ΤΟ ΠΑΡΑΘΥΡΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ... 5 ΤΑ ΚΟΥΜΠΙΑ ΚΑΙ ΤΑ ΜΠΛΟΚ...

Διαβάστε περισσότερα

Aρ. Μοντέλου: DW - 100

Aρ. Μοντέλου: DW - 100 Aρ. Μοντέλου: DW - 100 Λεπτό πληκτρολόγιο ΠΕΡΙΓΡΑΦΗ multimedia με νέα σχεδίαση τετράγωνα πλήκτρα 1. Αντικείμενο: Ακολουθούν τα χαρακτηριστικά του πληκτρολογίου, επεξηγήσεις σχετικά με τα χαρακτηριστικά,

Διαβάστε περισσότερα

Οδηγός Χρήστη. Καλώς ήλθατε στο Ηλεκτρονικό Περιβάλλον Μάθησης. http://elearning.kekdiastasi.edu.gr/

Οδηγός Χρήστη. Καλώς ήλθατε στο Ηλεκτρονικό Περιβάλλον Μάθησης. http://elearning.kekdiastasi.edu.gr/ Οδηγός Χρήστη Καλώς ήλθατε στο Ηλεκτρονικό Περιβάλλον Μάθησης http://elearning.kekdiastasi.edu.gr/ Περιεχόµενα 1. ΕΙΣΟ ΟΣ ΣΤΗΝ ΠΛΑΤΦΟΡΜΑ 3 2. ΤΟ ΠΡΟΦΙΛ ΣΑΣ 6 3. ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΟΥ ΜΑΘΗΜΑΤΟΣ 9 4. ΤΟ ΜΑΘΗΜΑ

Διαβάστε περισσότερα

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

ΜΝΗΜΟΝΙΟ ΕΝΕΡΓΕΙΩΝ ΓΙΑ ΕΠΙΛΥΣΗ ΑΠΛΩΝ ΤΕΧΝΙΚΩΝ ΠΡΟΒΛΗΜΑΤΩΝ ΚΛΙΜΑΚΙΟ ΠΛΗΡΟΦΟΡΙΚΗΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙ ΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΜΝΗΜΟΝΙΟ ΕΝΕΡΓΕΙΩΝ ΓΙΑ ΕΠΙΛΥΣΗ ΑΠΛΩΝ ΤΕΧΝΙΚΩΝ ΠΡΟΒΛΗΜΑΤΩΝ Κατά τη διάρκεια της χρόνιας 2002-2003, τα σχολεία εξοπλίστηκαν µε υπολογιστές µάρκας ARROW

Διαβάστε περισσότερα

Εγχειρίδιο εγκατάστασης και βασικής παραμετροποίησης σεναρίου εστίασης

Εγχειρίδιο εγκατάστασης και βασικής παραμετροποίησης σεναρίου εστίασης Εγχειρίδιο εγκατάστασης και βασικής παραμετροποίησης σεναρίου εστίασης Σε αυτό το εγχειρίδιο θα καλύψουμε τη μεθοδολογία εγκατάστασης ενός σεναρίου εστίασης από την αρχή έως το σημείο των βασικών ρυθμίσεων

Διαβάστε περισσότερα

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013 ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013 ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν, γράφοντας δίπλα στο γράμμα που αντιστοιχεί σε κάθε πρόταση τη

Διαβάστε περισσότερα

Γενικό Λύκειο Κρουσώνα - Σχολικό έτος 2013-2014 Εκπαιδευτικός: Παπαδάκης Σταµάτης

Γενικό Λύκειο Κρουσώνα - Σχολικό έτος 2013-2014 Εκπαιδευτικός: Παπαδάκης Σταµάτης Οδηγάµε το Γενικό Λύκειο Κρουσώνα - Σχολικό έτος 2013-2014 Φύλλο Εργασίας Προγραµµατισµός Εφαρµογής στο AppInventor http://ai2.appinventor.mit.edu Ακολουθώντας τα βήµατα αυτού του φύλλου εργασίας, θα αναπτύξουµε

Διαβάστε περισσότερα

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions)

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αυγερινός Αραμπατζής avi@ee.duth.gr www.aviarampatzis.com Βάσεις Δεδομένων Stored Procedures 1 Stored Routines (1/2) Τμήματα κώδικα τα

Διαβάστε περισσότερα

Περιεχόμενα. Δημιουργία σύνδεσης... 27 5. ΤΙ ΕΙΝΑΙ ΙΣΤΟΣΕΛΙΔΕΣ ΚΑΙ ΤΙ ΤΟΠΟΘΕΣΙΕΣ ΙΣΤΟΥ... 37. Γνωριμία με μια ιστοσελίδα:... 38

Περιεχόμενα. Δημιουργία σύνδεσης... 27 5. ΤΙ ΕΙΝΑΙ ΙΣΤΟΣΕΛΙΔΕΣ ΚΑΙ ΤΙ ΤΟΠΟΘΕΣΙΕΣ ΙΣΤΟΥ... 37. Γνωριμία με μια ιστοσελίδα:... 38 Περιεχόμενα ΠΡΟΛΟΓΟΣ... 11 ΔΙΑΔΙΚΤΥΟ... 13 1. ΙΣΤΟΡΙΑ ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ... 15 2. ΤΙ ΕΙΝΑΙ ΤΟ ΔΙΑΔΙΚΤΥΟ INTERNET;... 16 3. ΤΙ ΠΡΟΣΦΕΡΕΙ ΤΟ ΔΙΑΔΙΚΤΥΟ, ΤΙ ΜΠΟΡΕΙ ΝΑ ΒΡΕΙ ΚΑΝΕΙΣ... 19 4. ΤΙ ΑΠΑΙΤΕΙΤΑΙ ΓΙΑ ΝΑ

Διαβάστε περισσότερα

Περιεχόμενα. Σελίδα 3 από 21

Περιεχόμενα. Σελίδα 3 από 21 Σελίδα 1 από 21 Σελίδα 2 από 21 Περιεχόμενα Κεφάλαιο 1 Χρήσεις του υπολογιστή... 4 Κεφάλαιο 2 Βασικά τμήματα υπολογιστή... 6 Κεφάλαιο 3 - Ασφάλεια... 9 Κεφάλαιο 4 - Ποντίκι... 11 Κεφάλαιο 5 - Πληκτρολόγιο...

Διαβάστε περισσότερα

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

Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo; Κεφάλαιο 2 Εισαγωγή Πώς μπορούμε να δημιουργούμε γεωμετρικά σχέδια με τη Logo; Η Logo είναι μία από τις πολλές γλώσσες προγραμματισμού. Κάθε γλώσσα προγραμματισμού έχει σκοπό τη δημιουργία προγραμμάτων

Διαβάστε περισσότερα