Οι πίνακες στην C++/CLI δημιουργούνται και δεσμεύουν χώρο στο Managed Heap (Garbage Collected Heap) Για τον λόγο αυτό οι μεταβλητές των πινάκων

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

Download "Οι πίνακες στην C++/CLI δημιουργούνται και δεσμεύουν χώρο στο Managed Heap (Garbage Collected Heap) Για τον λόγο αυτό οι μεταβλητές των πινάκων"

Transcript

1 Οι πίνακες στην C++/CLI δημιουργούνται και δεσμεύουν χώρο στο Managed Heap (Garbage Collected Heap) Για τον λόγο αυτό οι μεταβλητές των πινάκων δηλώνονται πάντα ως Λαβές Εντοπισμού (Tracking Handles) «^». Η δήλωση ενός πίνακα γίνεται με την δεσμευμένη λέξη array ως εξής array<τύπος στοιχείων του πίνακα> ^ όνομα_πίνακα, π.χ. array<int> ^ data; array<double> ^ grades; κ.λ.π. Η δέσμευση μνήμης για τον πίνακα γίνεται με χρήση της εντολής gcnew ως εξής: όνομα_πίνακα = gcnew array<τύπος στοιχείων>(πλήθος στοιχείων); Π.χ. array<int> ^ data; data = gcnew array<int>(100); Μετά την δήλωσή της (array<int> ^ data;) η μεταβλητή data έχει την τιμή nullptr. Η τιμή αυτή σημαίνει ότι το managed handle δεν δείχνει σε κανένα αντικείμενο. Η gcnew θα δώσει στο handle την τιμή της περιοχής μνήμης που δεσμεύτηκε για το αντικείμενο.

2 Η δήλωση ενός πίνακα μπορεί να γίνει και με functional notation : array<int> ^ data( gcnew array<int>(100) ); Επίσης είναι δυνατό κατά την δήλωση του πίνακα να γίνει και αρχικοποίηση των τιμών του πίνακα, για παράδειγμα: array<int> ^ numbers = { 1, 2, 3, 4, 5 }; Σε αυτή την περίπτωση το πλήθος των στοιχείων του πίνακα για την δέσμευση μνήμης λαμβάνεται από το πλήθος των στοιχείων εντός των άγκιστρων (στην περίπτωση αυτή = 5). Τέλος αρχικοποίηση μπορεί να γίνει και με την κλήση της gcnew ως εξής : array<int> ^ numbers; numbers = gcnew array<int>{ 1, 2, 3, 4, 5 }; Παράδειγμα αρχικοποίησης πίνακα με String: array < String^ > ^ onomata = { "John", Ann", Mary", Tom", "Jim"};

3 Η προσπέλαση των στοιχείων του πίνακα γίνεται με τον γνωστό τρόπο με χρήση των τετράγωνων αγκύλων και ενός δείκτη θέσης του πίνακα: Στοιχείο_Πίνακα = Όνομα_Πίνακα [ Δείκτης_Θέσης ] ; Η αρίθμηση των θέσεων των στοιχείων του πίνακα ξεκινά από το 0. Λόγω του δείκτη θέσης, η προσπέλαση όλων των στοιχείων ενός πίνακα μπορεί να γίνει εύκολα με ένα βρόχο for, Π.χ. : for (i=0 ; i<5 ; i++ ) sum+= data[i]; Εκτός από τον βρόχο for μπορούμε να χρησιμοποιήσουμε και τον βρόχο for each που συντάσσεται ως εξής : for each ( όνομα_μεταβλητής in όνομα_πίνακα ) { } Παράδειγμα : array<int> ^ data= gcnew array<int>{1,2,3,4,5}; int Max=data[0]; for each (int n in data) {if (n>max) Max=n;} Console::WriteLine("Max = {0}",Max);

4 Οι πίνακες ως αντικείμενα έχουν και ορισμένες πολύ χρήσιμες ιδιότητες και μεθόδους που διευκολύνουν την χρήση τους : Ιδιότητα Length: επιστρέφει το πλήθος των στοιχείων του πίνακα ως ακέραιο αριθμό, π.χ. for (i=0 ; i<data->length ; i++) sum=sum+data[i]; Ιδιότητα Rank: επιστρέφει τον αριθμό των διαστάσεων του πίνακα, π.χ. 1 για μονοδιάστατο, 2 για δισδιάστατο, 3 για τρισδιάστατο κ.λ.π. Μέθοδος Clear: μηδενίζει τα στοιχεία ενός πίνακα. Αν τα στοιχεία είναι αριθμητικά γίνονται ίσα με το 0. Αν είναι bool γίνονται false. Αν είναι pointers γίνονται nullptr, κ.λ.π. π.χ. if (data!=nullptr) Array::Clear(data,0,data->Length); Μέθοδος Sort: ταξινομεί έναν πίνακα με αύξουσα σειρά. Ο πίνακας θα πρέπει να έχει οριστεί στο Heap (να μην είναι nullptr) και θα πρέπει να είναι μονοδιάστατος (Rank=1). Παράδειγμα : array<int> ^ data= gcnew array<int>{3,1,5,4,2}; Array::Sort(data); // data = {1,2,3,4,5}

5 Με την μέθοδο Sort είναι δυνατό να ταξινομήσουμε δύο μονοδιάστατους πίνακες ταυτόχρονα. Η ταξινόμηση γίνεται με βάση τα στοιχεία του πρώτου πίνακα που θεωρείται πίνακας «κλειδιών» αλλά αναδιατάσσονται ταυτόχρονα και τα στοιχεία του δεύτερου πίνακα. Παράδειγμα: array < String^ > ^ onomata = { "John", Ann", Mary", Tom", "Jim"}; array <float> ^ bathmoi = {7.5, 9.0, 6.8, 5.4, 8.1 }; Array::Sort( onomata, bathmoi ); Μέθοδος Reverse: Αντιστρέφει την σειρά των στοιχείων του πίνακα, π.χ array<int> ^ data= gcnew array<int>{1,2,3,4,5}; Array::Reverse(data); // {5,4,3,2,1} Μέθοδος Copy: Αντιγράφει έναν πίνακα σε έναν άλλο. Παράδειγμα : array <float> ^ bathmoi = {7.5, 9.0, 6.8, 5.4, 8.1 }; array <float> ^ grades = gcnew array<float> (5) ; Array::Copy( bathmoi, grades, 5);

6 Μέθοδος BinarySearch: με την μέθοδο αυτή μπορούμε να αναζητήσουμε ένα στοιχείο μέσα σε έναν ταξινομημένο πίνακα. Η σύνταξη είναι : θέση_στοιχείου = Array::BinarySearch( πίνακας, στοιχείο ); Π.χ. array < int > ^ values = { 23, 45, 68, 94, 123, 127, 150, 203, 299}; int tobefound=127; int position = Array::BinarySearch(values, tobefound); // 5 Αν το στοιχείο δεν βρεθεί η μέθοδος επιστρέφει αρνητικό νούμερο. Μέθοδος IndexOf: με την μέθοδο αυτή μπορούμε να αναζητήσουμε ένα στοιχείο μέσα σε έναν πίνακα που δεν χρειάζεται να είναι ταξινομημένος. Η σύνταξη είναι : θέση_στοιχείου = Array::IndexOf( πίνακας, στοιχείο ); Π.χ. array < String^ > ^ onomata = { "John", Ann", Mary", Tom", "Jim"}; String ^ student ( Tom ); int position = Array::IndexOf( onomata, student); // 3

7 Με βάση την κλάση Array μπορούμε να δημιουργήσουμε πίνακες δύο η περισσότερων διαστάσεων με μέγιστο αριθμό διαστάσεων τις 32. Για παράδειγμα, η δημιουργία πίνακα δύο διαστάσεων γίνεται ως εξής: array < int, 2 > ^ values = gcnew array < int, 2 > (4, 5); όπου το «,2» δηλώνει το πλήθος των διαστάσεων του πίνακα, ενώ το 4,5 είναι το πλήθος των γραμμών και το πλήθος των στηλών του πίνακα αντίστοιχα. Η προσπέλαση των στοιχείων του πίνακα γίνεται ως εξής: όνομα_πίνακα [ γραμμή, στήλη ] = τιμή ; Παράδειγμα κώδικα : int nrows=4; int ncols=5; array < int, 2 > ^ values(gcnew array < int, 2 > (nrows, ncols)); for(int i = 0 ; i < nrows ; i++) for(int j = 0 ; j < ncols ; j++) values[i,j] = (i+1)*(j+1);

8 File extension Type Contents.cpp,.c Source Τα πηγαία αρχεία κώδικα της εφαρμογής..exe,.dll Project Το παραγόμενο εκτελέσιμο πρόγραμμα ή η παραγόμενη dynamic-link library.h Source Αρχείο επικεφαλίδας (header file) που συνδυάζεται με το.cpp.ico Resource Αρχείο με την γραφική αναπαράσταση εικονιδίου..ilk Linking Incremental link file -αρχείο που υποβοηθά το αυξητικό link..map Linking Ένα αρχείο κειμένου που περιέχει πληροφορίες για το linking..obj,.o Compiling Αρχείο κώδικα μηχανής μετά την μεταγλώττιση και πριν το linking..pch Debug Precompiled header file αρχείο προ-μεταγλωττισμένης επικεφαλίδας.pdb Debug Program debug database αρχείο με βάση δεδομένων του Debugging.res Resource Αρχείο Binary με τα Resources του Project..resx Resource XML αρχείο που περιγράφει τα resources του project..rc,.rc2 Resource Script file που χρησιμοποιείται στην παραγωγή των resources..sln Solution Το αρχείο του Solution (Solution File).suo Solution Το αρχείο με τα Options του Solution (solution options file) sdf Compiling Βάση Δεδομένων του κώδικα (Code Browsing Database) tlog Compiling Αρχεία συμβάντων - Log Files.vcxproj Project Το αρχείο του Project

9 Σε κάθε Windows Forms Application παράγεται και ένα.cpp αρχείο με το όνομα που δώσαμε στο project μας p.x. Askhsh1-1.cpp. Το αρχείο αυτό περιέχει το εναρκτήριο σημείο της εφαρμογής (application entry point) που είναι η ρουτίνα main : // Askhsh1-1.cpp : main project file. #include "stdafx.h" #include "Form1.h" using namespace Askhsh11; [STAThreadAttribute] int main(array<system::string ^> ^args) { // Enabling Windows XP visual effects before any controls are created Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault(false); // Create the main window and run it Application::Run(gcnew Form1()); return 0; }

10 #include "stdafx.h : Στο αρχείο αυτό ενσωματώνουμε όλους τους precompiled headers της εφαρμογής. Το #include αυτό πρέπει να ενσωματώνεται πριν από οποιοδήποτε.cpp [STAThreadAttribute] : καθορίζει ότι η τρέχουσα εφαρμογή θα είναι μονού νήματος (single threaded). Application::EnableVisualStyles() : Ενεργοποιεί τα οπτικά εφφέ (visual styles) τα οποία απαρτίζουν ένα «θέμα» του Λειτουργικού Συστήματος ώστε να μπορούν τα Controls να εμφανίζονται με βάση αυτά τα visual styles. Απαιτείται πριν την δημιουργία οποιουδήποτε Control. Application::SetCompatibleTextRenderingDefault(false): Καθορίζει ότι τα Controls θα χρησιμοποιούν την κλάση TextRenderer που βασίζεται στο GDI (Graphics Device Interface) των Windows. Application::Run(gcnew Form1()) : Ξεκινάει τον βρόχο μηνυμάτων της εφαρμογής στο τρέχον νήμα (thread) και δεσμεύει μνήμη στο garbage collected heap για την βασική φόρμα της εφαρμογής (Form1) την οποία και εμφανίζει στην οθόνη.

11 Το αρχείο Form1.h περιέχει τον βασικό κώδικα που σχετίζεται με την συγκεκριμένη φόρμα, δηλαδή δήλωση της κλάσης της φόρμας, δήλωση των ενσωματωμένων Controls, αρχικοποίηση των Controls σύμφωνα με την σχεδίασή τους από τον προγραμματιστή και τον κώδικα των διαχειριστών συμβάντων (Event Handlers). Τα τμήματα του Form1.h είναι τα ακόλουθα: Δηλώσεις για την χρήση namespaces Δήλωση της κλάσης Form1 Δήλωση του Constructor και του Destructor Δήλωση και δημιουργία των ενσωματωμένων Controls Αρχικοποίηση των Controls σύμφωνα με την σχεδίαση Δήλωση του κώδικα των Event Handlers

12 #pragma once namespace Askhsh21 { using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Windows::Forms; using namespace System::Data; using namespace System::Drawing; public ref class Form1 : public System::Windows::Forms::Form { public: Form1(void) { InitializeComponent(); // //TODO: Add the constructor code here // }

13 protected: ~Form1() { if (components) { delete components; } } private: System::Windows::Forms::Label^ label1; private: System::Windows::Forms::Button^ button1; private: System::Windows::Forms::Button^ button2; private: System::Windows::Forms::Button^ button3; private: System::Windows::Forms::Button^ button4; private: System::Windows::Forms::Button^ button5; protected: /// <summary> /// Required designer variable. /// </summary> private: System::ComponentModel::Container ^components;

14 #pragma region Windows Form Designer generated code void InitializeComponent(void) {this->button1 = (gcnew System::Windows::Forms::Button()); this->label1 = (gcnew System::Windows::Forms::Label()); this->button2 = (gcnew System::Windows::Forms::Button()); this->button3 = (gcnew System::Windows::Forms::Button()); this->button4 = (gcnew System::Windows::Forms::Button()); this->button5 = (gcnew System::Windows::Forms::Button()); this->suspendlayout(); //παύση ενημέρωσης της φόρμας // button1 this->button1->location = System::Drawing::Point(105, 106); this->button1->name = L"button1"; this->button1->size = System::Drawing::Size(75, 23); // label1 this->label1->autosize = true;

15 this->resumelayout(false); //ενεργοποίηση της ενημέρωσης της φόρμας this->performlayout(); //επανασχεδιασμός της φόρμας } #pragma endregion private: System::Void button1_click(system::object^ sender, System::EventArgs^e) { label1->left=(this->clientsize.width-label1->width)/2; label1->top=(this->clientsize.height-label1->height)/2; } private: System::Void button2_click(system::object^ sender, System::EventArgs^ e) { label1->left=0; label1->top=0; } }; // τέλος της δήλωσης της κλάσης Form1 } // τέλος του namespace Askhsh21

16 #include : ενσωματώνει αρχείο επικεφαλίδων (με δηλώσεις κλάσεων, συναρτήσεων, μεταβλητών κ.λ.π., στο πηγαίο αρχείο κατά την μεταγλώττιση (#include <stdafx.h>). #define : καθορίζει τιμή σταθεράς που μακρο-αντικαθίσταται πριν την μεταγλώττιση (#define N 100) #ifdef, #ifndef, #else, #endif : δομές για υπό συνθήκη μεταγλώττιση κώδικα. (#ifdef WINDOWS #include <win.h> #else #include <dos.h> #endif) #mport : ενσωματώνει μία βιβλιοθήκη τύπων.olb,.tlb, ή.dll ( π.χ. #import "..\drawctl\drawctl.tlb ) #pragma token-string : η οδηγία pragma ακολουθούμενη από μία χαρακτηριστική λέξη (token-string) αποτελεί μία εξειδικευμένη οδηγία προς τον συγκεκριμένο compiler, που μπορεί να μην αναγνωρίζεται από άλλους compilers, αλλά δεν προκαλεί την δημιουργία σφαλμάτων κατά την μεταγλώττιση. Ο compiler της C/C++ αναγνωρίζει 40 τέτοια tokens.

17

18 Αποτελεί ένα κοινό TextBox στο οποίο καθορίζουμε την ιδιότητα Multiline σε true. Στην περίπτωση αυτή το TextBox μπορεί να δεχτεί πολλαπλές γραμμές κειμένου. Συμπληρωματικά Properties WordWrap : (true/false) καθορίζει αν οι γραμμές θα αναδιπλώνονται στο τέλος κάθε γραμμής ή όχι. ScrollBars : (None/Horizontal/Vertical/Both) εισάγει scroll bars για την ολίσθηση πάνω-κάτω και δεξιά-αριστερά. Για να εμφανιστούν τα οριζόντια scrollbars πρέπει η ιδιότητα WordWrap να είναι false. Lines : (array<string^> ^ Lines) πίνακας από Strings που περιέχει τις γραμμές του Multiline TextBox. Μέσω της ιδιότητας αυτής μπορώ να διαβάσω (read) τις γραμμές του TextBox σε μορφή πίνακα, αλλά με ανάθεση πίνακα στην ιδιότητα Lines μπορώ να επανα-καθορίσω τις γραμμές που εμφανίζονται μέσα σε ένα Multiline TextBox.

19 Κληρονομείται από την κλάση System::Windows:: Forms::ComboBox. Λειτουργεί σαν TextBox αλλά ο χρήστης μπορεί να επιλέξει μία από τις επιλογές της drop-down λίστας που εμφανίζεται πατώντας το Properties DropDownHeight: καθορίζει το ύψος της drop-down λίστας DropDownWidth: καθορίζει το πλάτος της drop-down λίστας DropDownStyle: καθορίζει τον τρόπο εμφάνισης του ComboBox Simple DropDown DropDownList Εμφανίζει ταυτόχρονα το Εμφανίζει το TextBox και Επιτρέπει εισαγωγή TextBox και την λίστα με και την λίστα μόνο από την λίστα

20 Properties Text : το κείμενο του ComboBox MaxDropDownItems: καθορίζει το μέγιστο πλήθος επιλογών που θα εμφανίζονται στο Drop-Down list. Sorted: (true/false) καθορίζει εάν οι επιλογές της λίστας θα εμφανίζονται ταξινομημένες ή όχι. Items: Collection του τύπου ComboBox::ObjectCollection που περιέχει τις επιλογές της drop-down λίστας με ιδιότητες Count, Item[] και μεθόδους Add, Clear, IndexOf, Insert, Remove, RemoveAt, κ.λ.π. SelectedIndex: δείχνει ή καθορίζει τον α/α της επιλογής από την λίστα. SelectedItem: Επιστρέφει το ίδιο το επιλεγμένο αντικείμενο της λίστας. Methods BeginUpdate(), EndUpdate() επιτρέπουν την πολλαπλή ενημέρωση του ComboBox χωρίς ενδιάμεσο επανα-σχεδιασμό του. RefreshItems(): επανα-σχεδιάζει τις επιλογές του ComboBox. Events DropDown, DropDownClosed, SelectedIndexChanged, SelectionChangeCommitted, κ.λ.π.

21 Κληρονομείται από την κλάση System::Windows:: Forms::CheckBox. Εμφανίζει ένα τετράγωνο που μπορεί να περιέχει ένα checkmark ή όχι και δίπλα μία λεζάντα κειμένου. Properties Appearance: (Normal/Button) καθορίζει αν θα εμφανίζεται ως checkbox ή ως button που μένει πατημένο ή όχι. AutoSize: (true/false) καθορίζει εάν το μέγεθος του αντικειμένου θα καθορίζεται αυτόματα ή ελεύθερα από τον χρήστη. CheckAlign: (BottomCenter, BottomLeft, BottomRight, MiddleCenter, MiddleLeft, MiddleRight, TopCenter, TopLeft, TopRight) καθορίζει την σχετική θέση του checkbox σε σχέση με την λεζάντα κειμένου. Checked: (true/false) καθορίζει αν το CheckBox είναι τσεκαρισμένο ή όχι CheckState: (Checked, Unchecked, Indeterminate) καθορίζει την κατάσταση του CheckBox. ThreeState: (true/false) καθορίζει εάν το checkbox θα έχει 3 καταστάσεις αντί για 2 (Checked, Unchecked, Indeterminate). Text: το κείμενο της λεζάντας του checkbox

22 Properties: TextAlign: (BottomCenter, BottomLeft, BottomRight, MiddleCenter, MiddleLeft, MiddleRight, TopCenter, TopLeft, TopRight) καθορίζει την σχετική θέση του κειμένου στο control. Image: εικόνα που μπορεί να φορτωθεί στο background του control. ImageAlign: (BottomCenter, BottomLeft, BottomRight, MiddleCenter, MiddleLeft, MiddleRight, TopCenter, TopLeft, TopRight) καθορίζει την σχετική θέση της εικόνας στο control. TextImageRelation: (Overlay, ImageAboveText, TextAboveImage, ImageBeforeText, TextBeforeImage) καθορίζει την σχετική θέση εικόνας και κειμένου μέσα στο checkbox control. Methods Hide, Show : Εξαφανίζει / εμφανίζει το CheckBox. Refresh(), Invalidate(), Focus(), SendToBack(), BringToFront(), SetBounds(), Scale(factor), Select(), Events CheckedChanged(), CheckStateChanged(), AppearanceChanged(),

23 Κληρονομείται από την κλάση System::Windows:: Forms::RadioButton. Εμφανίζει ένα κυκλικό κουμπί που μπορεί να είναι επιλεγμένο ή όχι και δίπλα μία λεζάντα κειμένου. Μοιάζει με το CheckBox. Χρησιμοποιείται σε συστοιχίες πολλών RadioButtons τα οποία συμπεριφέρονται με ενιαίο τρόπο: όταν επιλέγεις το ένα από-επιλέγονται τα υπόλοιπα. Properties Appearance: (Normal/Button) καθορίζει αν θα εμφανίζεται ως checkbox ή ως button που μένει πατημένο ή όχι. AutoSize: (true/false) καθορίζει εάν το μέγεθος του αντικειμένου θα καθορίζεται αυτόματα ή ελεύθερα από τον χρήστη. CheckAlign: (BottomCenter, BottomLeft, BottomRight, MiddleCenter, MiddleLeft, MiddleRight, TopCenter, TopLeft, TopRight) καθορίζει την σχετική θέση του checkbox σε σχέση με την λεζάντα κειμένου. Checked: (true/false) καθορίζει αν το CheckBox είναι τσεκαρισμένο ή όχι CheckState: (Checked, Unchecked, Indeterminate) καθορίζει την κατάσταση του CheckBox.

24 Properties Text: το κείμενο της λεζάντας του radiobutton TextAlign: (BottomCenter, BottomLeft, BottomRight, MiddleCenter, MiddleLeft, MiddleRight, TopCenter, TopLeft, TopRight) καθορίζει την σχετική θέση του κειμένου στο control. Image: εικόνα που μπορεί να φορτωθεί στο background του control. ImageAlign: (BottomCenter, BottomLeft, BottomRight, MiddleCenter, MiddleLeft, MiddleRight, TopCenter, TopLeft, TopRight) καθορίζει την σχετική θέση της εικόνας στο control. TextImageRelation: (Overlay, ImageAboveText, TextAboveImage, ImageBeforeText, TextBeforeImage) καθορίζει την σχετική θέση εικόνας και κειμένου μέσα στο radiobutton control. Methods Hide, Show : Εξαφανίζει / εμφανίζει το radiobutton. Refresh(), Invalidate(), Focus(), SendToBack(), BringToFront(), SetBounds(), Scale(factor), Select(), Events: CheckedChanged(), CheckStateChanged(), AppearanceChanged(),...

25 Δημιουργούμε νέο Project. Αλλάζουμε το text της Form1 σε Άσκηση 3-1. Ενσωματώνουμε ένα TextBox και καθορίζουμε την ιδιότητα Multiline σε true, την WordWrap σε false και την ιδιότητα ScrollBars σε Both. Προσθέτουμε δύο Label και δύο TextBox για την γραμμή και την στήλη. Προσθέτουμε 4 buttons και αλλάζουμε το μέγεθός τους και το text. Για την εμφάνιση γραμμής και στήλης «παγιδεύουμε» τα Events Click και KeyUp και γράφουμε τον ακόλουθο κώδικα: private: System::Void textbox1_click(system::object^sender, System::EventArgs^e) { int start = textbox1->selectionstart; int line = textbox1->getlinefromcharindex(start); textbox2->text = Convert::ToString(line+1); //correct 0-based int col = start - textbox1->getfirstcharindexofcurrentline(); textbox3->text = Convert::ToString(col+1); //correct 0-based }

26 Για την εμφάνιση κειμένου δημιουργούμε event handler και γράφουμε τον ακόλουθο κώδικα: private: System::Void button1_click (System:: Object^ sender, System:: EventArgs^ e) { MessageBox::Show(textBox1->Text, "Άσκηση 3-1", MessageBoxButtons:: OKCancel,MessageBoxIcon:: Information); } Για την εισαγωγή γραμμής δημιουργούμε event handler και γράφουμε: private: System::Void button2_click(system::object^ sender, System::EventArgs^ e) { int start = textbox1->getfirstcharindexofcurrentline(); textbox1->text=textbox1->text->insert(start,environment::newline); // NewLine="\r\n" }

27 Για το Undo δημιουργούμε event handler και γράφουμε τον κώδικα: private: System::Void button4_click (System::Object^ sender, System::EventArgs^ e) { textbox1->undo(); } Τέλος για την διαγραφή γραμμής γράφουμε τον κώδικα: private: System::Void button3_click(system::object^ sender, System::EventArgs^ e) {if (textbox1->lines->length>0) { int line = textbox1->getlinefromcharindex(textbox1->selectionstart); array<string^>^ temp=gcnew array<string^>(textbox1->lines->length-1); Array::Copy(textBox1->Lines,temp,line); Array::Copy(textBox1->Lines,line+1,temp,line,textBox1->Lines->Length-line-1); textbox1->lines=temp; } }

28 Η εφαρμογή αποτελείται από 3 φόρμες και υλοποιεί ένα Setup Wizard. Η κάθε φόρμα μπορεί να μας οδηγήσει στην επόμενη φόρμα μέχρι την ολοκλήρωση της διαδικασίας, αλλά και στην προηγούμενη για επανάληψη των βημάτων. Στην αρχική φόρμα ενσωματώνουμε ένα Label ένα PictureBox και 2 Buttons. Αλλάζουμε το κείμενο το και το font του Label. Φορτώνουμε μία εικόνα στο PictureBox. Αλλάζουμε το Text των 2 Buttons.

29 Δημιουργούμε και 2 η φόρμα και ενσωματώνουμε σε αυτήν ένα Label, ένα ComboBox ένα CheckBox και 3 Buttons. Καθορίζουμε το κείμενο του Label. Προσθέτουμε επιλογές στην ιδιότητα Items του ComboBox. Αλλάζουμε το Text του CheckBox. Αλλάζουμε το Text των 3ων Buttons Δημιουργούμε και 3 η φόρμα και ενσωματώνουμε σε αυτήν 3 RadioButtons και 3 Buttons. Καθορίζουμε το Text των 3ων RadioButtons. Καθορίζουμε το Text των 3ων Buttons. Στο Form1.h κάνουμε include τις δύο άλλες φόρμες: #include "Form2.h" #include "Form3.h" Στην κλάση της Form1 ενσωματώνουμε 2 μέλη δεδομένα: public: Form2 ^ frm2; Form3 ^ frm3;

30 Στo Form2.h ενσωματώνουμε στην κλάση της φόρμας δύο data members: public: System::Windows::Forms::Form ^ frm1; System::Windows::Forms::Form ^ frm3; Στo Form3.h ενσωματώνουμε στην κλάση της φόρμας ένα data member: public: System::Windows::Forms::Form ^ frm2; Στo Form1.h ενσωματώνουμε στον Constructor τον παρακάτω κώδικα αρχικοποίησης ώστε να δημιουργηθούν οι Form2 και Form3 και η κάθε φόρμα να έχει pointers για τις άλλες δύο: Form1(void) {InitializeComponent(); frm2= gcnew Form2(); frm3= gcnew Form3(); frm2->frm1=this; frm2->frm3=frm3; frm3->frm2=frm2; }

31 Παράγουμε Event Handlers για τα Buttons. Για το Button Έξοδος της Form1 γράφουμε τον παρακάτω κώδικα: private: System::Void button1_click(system::object^ sender, System::EventArgs^ e) { this->close(); } Για το Button Επόμενο> της Form1 γράφουμε τον παρακάτω κώδικα: private: System::Void button2_click(system::object^ sender, System::EventArgs^ e) { this->hide(); frm2->show(); } Για το Button Έξοδος της Form2 γράφουμε τον παρακάτω κώδικα: private: System::Void button3_click(system::object^ sender, System::EventArgs^ e) { frm1->close(); } Για το Button <Προηγούμενο της Form2 γράφουμε τον παρακάτω κώδικα: private: System::Void button1_click(system::object^ sender, System::EventArgs^ e) { frm1->show(); this->hide(); }

32 Για το Button Επόμενο> της Form2 γράφουμε τον παρακάτω κώδικα: private: System::Void button2_click(system::object^ sender, System::EventArgs^ e) { frm3->show(); this->hide(); } Για το Button <Προηγούμενο της Form3 γράφουμε τον παρακάτω κώδικα: private: System::Void button1_click(system::object^ sender, System::EventArgs^ e) { frm2->show(); this->hide(); } Για το Button Έξοδος της Form3 γράφουμε τον παρακάτω κώδικα: private: System::Void button2_click(system::object^ sender, System::EventArgs^ e) { Application::Exit(); } Για το Button Ολοκλήρωση της Form3 γράφουμε τον παρακάτω κώδικα: private: System::Void button3_click(system::object^ sender, System::EventArgs^ e) { MessageBox::Show("Η Εγκατάσταση Ολοκληρώθηκε με Επιτυχία!", "Εφαρμογή",MessageBoxButtons::OKCancel,MessageBoxIcon::Exclamation);}

Το MS Visual Studio επιτρέπει στον προγραμματιστή να αναπτύξει προγράμματα σε δύο διαφορετικές εκδόσεις της γλώσσας C++ : ISO/IEC C++ που αποτελεί

Το MS Visual Studio επιτρέπει στον προγραμματιστή να αναπτύξει προγράμματα σε δύο διαφορετικές εκδόσεις της γλώσσας C++ : ISO/IEC C++ που αποτελεί Το MS Visual Studio επιτρέπει στον προγραμματιστή να αναπτύξει προγράμματα σε δύο διαφορετικές εκδόσεις της γλώσσας C++ : ISO/IEC C++ που αποτελεί την στάνταρ έκδοση της γλώσσας, χρησιμοποιεί στάνταρ βιβλιοθήκες

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

Συνέχεια του αντικειμενoστραφούς προγραμματισμού Επέκταση των κλάσεων σε Visual Components (Window Controls) Κατασκευή του Interface στο Design Time,

Συνέχεια του αντικειμενoστραφούς προγραμματισμού Επέκταση των κλάσεων σε Visual Components (Window Controls) Κατασκευή του Interface στο Design Time, Συνέχεια του αντικειμενoστραφούς προγραμματισμού Επέκταση των κλάσεων σε Visual Components (Window Controls) Κατασκευή του Interface στο Design Time, και καθορισμός πολλών παραμέτρων των αντικειμένων (properties).

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

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

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

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

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

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

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

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

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Προγραμματισμός Η/Υ Ενότητα 9 η : Αντικείμενα για επιλογή τιμής (CheckBox, RadioButton) & το αντικείμενο ομαδοποίησης GroupBox

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

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

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ

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

New Project Windows Forms Applications

New Project Windows Forms Applications Ανάπτυξη απλής εφαρµογής. Solutions, Projects, GUI, Events, Debugging. New Project Windows Forms Applications Name: ΜyLucky7 Location: C:\... Solution Name: ΜyLucky7 OK (επιλογή έκδοσης του πλαισίου Εφαρµογών.NET)

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

ΔΟΜΗΜΕΝΟΣ ΟΠΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΠAΡΑΘΥΡΙΚΟ ΠΕΡΙΒΑΛΛΟΝ με τη Γλώσσα Προγραμματισμού VISUAL BASIC (1 ο ΕΠΙΠΕΔΟ)

ΔΟΜΗΜΕΝΟΣ ΟΠΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΠAΡΑΘΥΡΙΚΟ ΠΕΡΙΒΑΛΛΟΝ με τη Γλώσσα Προγραμματισμού VISUAL BASIC (1 ο ΕΠΙΠΕΔΟ) Γενικός Σκοπός Το αναλυτικό πρόγραμμα έχει ως γενικό σκοπό να δώσει στους μαθητές τις απαιτούμενες γνωστικές, κριτικές και αναλυτικές δεξιότητες ώστε να είναι ικανοί να χρησιμοποιούν τους υπολογιστές για

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

Διαδικτυακό Λογισμικό Αριθμητικής Ανάλυσης. Numerical Analysis Network Software

Διαδικτυακό Λογισμικό Αριθμητικής Ανάλυσης. Numerical Analysis Network Software ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΟΜΕΑΣ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Διαδικτυακό Λογισμικό Αριθμητικής Ανάλυσης Numerical Analysis Network

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

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Εισαγωγή στη γλώσσα προγραμματισμού JAVA Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Το πρώτο φλιτζάνι Java Λίστα με τα απαραίτητα Το πρώτο μου πρόγραμμα(hello World) Συνεχίζοντας

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

Μ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, φορητά

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

Γ3.3.Μ7 ΕΠΑΝΆΛΗΨΗ ΜΈΡΟΣ Α: ΈΝΝΟΙΕΣ ΤΙ ΕΊΝΑΙ Η VISUAL BASIC ΤΙ ΜΠΟΡΟΎΜΕ ΝΑ ΚΆΝΟΥΜΕ ΜΕ ΤΗ VISUAL BASIC ΑΝΤΙΚΕΊΜΕΝΑ: ΦΌΡΜΑ ΚΑΙ ΧΕΙΡΙΣΤΉΡΙΑ ΕΤΙΚΈΤΑ LABEL

Γ3.3.Μ7 ΕΠΑΝΆΛΗΨΗ ΜΈΡΟΣ Α: ΈΝΝΟΙΕΣ ΤΙ ΕΊΝΑΙ Η VISUAL BASIC ΤΙ ΜΠΟΡΟΎΜΕ ΝΑ ΚΆΝΟΥΜΕ ΜΕ ΤΗ VISUAL BASIC ΑΝΤΙΚΕΊΜΕΝΑ: ΦΌΡΜΑ ΚΑΙ ΧΕΙΡΙΣΤΉΡΙΑ ΕΤΙΚΈΤΑ LABEL Γ3.3.Μ7 ΕΠΑΝΆΛΗΨΗ ΜΈΡΟΣ Α: ΈΝΝΟΙΕΣ ΤΙ ΕΊΝΑΙ Η VISUAL BASIC Η Visual Basic είναι μια γλώσσα προγραμματισμού οδηγούμενη από συμβάντα που έχει ένα ολοκληρωμένο περιβάλλον ανάπτυξης Έχει δημιουργηθεί από τη

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

Προγραμματισμός Ι. Προεπεξεργαστής. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Προεπεξεργαστής. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Προεπεξεργαστής Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Διαδικασία Μεταγλώττισης πρόγραµµα επεξεργασίας κειµένου if a

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

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο Τετάρτη, 30 Οκτωβρίου 2013 Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο Λύστε στο Visual Basic Express 2010 τις παρακάτω ασκήσεις: 1. Να δημιουργήσετε ένα νέο Project του είδους Console

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

Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή

Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή Δημιουργία Νέου αρχείου Από το μενού προγραμμάτων ανοίγετε το DEV C++ Επιλέγετε File-> New-> Source File (συντόμευση πληκτρολογίου Ctrl+N)

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ηµιουργία και χειρισµός LIFO λιστών µεταβλητού µήκους µε στοιχεία ακεραίους αριθµούς. Γενίκευση για χειρισµό λιστών πραγµατικών

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

Πως θα κατασκευάσω το πρώτο πρόγραμμα;

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

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

Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Κλάσεις και Αντικείμενα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Κλάσεις Η γενική μορφή μιας κλάσης είναι η εξής: class class-name { private data and

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

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στην FORTRAN Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 Fortran FORmula TRANslation: (Μία από τις πρώτες γλώσσες τρίτης γενιάς) Εκδόσεις FORTRAN (1957) FORTRAN II (1958) FORTRAN III

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

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

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

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

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

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

Επίλυση προβλήματος με Access

Επίλυση προβλήματος με Access Δ.1. Το προς επίλυση πρόβλημα Ζητείται να κατασκευάσετε τα αρχεία και τα προγράμματα μιας εφαρμογής καταχώρησης Δαπανών μελών ΔΕΠ (Διδακτικό και Ερευνητικό Προσωπικό) για την παρακολούθηση του απολογισμού

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

Διάλεξη 5: Κλάσεις και Αντικείμενα. Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 5: Κλάσεις και Αντικείμενα. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 5: Κλάσεις και Αντικείμενα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Κλάσεις και Αντικείμενα - Κατασκευή, Πρόσβαση Αντικειμένων - Διαχείριση Μνήμης, Garbage

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

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

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

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

Γράφοντας μουσική με το Finale 2006 (B μέρος)

Γράφοντας μουσική με το Finale 2006 (B μέρος) Γράφοντας μουσική με το Finale 2006 (B μέρος) Συνέχεια λοιπόν των οδηγιών για την χρήση του FINALE 2006, αν και ήδη έχει κυκλοφορήσει το FINALE 2007. Αφού ολοκληρώσουμε την παρουσίαση των κυριοτέρων λειτουργιών

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

Περιεχόμενα. Πρόλογος... 17

Περιεχόμενα. Πρόλογος... 17 Περιεχόμενα Πρόλογος... 17 Κεφάλαιο 1: Εισαγωγή... 19 Πώς να διαβάσετε αυτό το βιβλίο... 20 Η γλώσσα C Ιστορική αναδρομή... 22 Τα χαρακτηριστικά της C... 23 C Μια δομημένη γλώσσα... 23 C Μια γλώσσα για

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

Visual Basic Γλώσσα οπτικού

Visual Basic Γλώσσα οπτικού Visual Basi Γλώσσα οπτικού προγραµµατισµού «Η αρχή είναι το ήµισυ του παντός» Κουλλάς Χρίστος www.oullas.om oullas 2 Στόχοι Μαθήµατος Οι µαθητές να µπορούν: να εξηγούν τι είναι η Visual Basi. ναεξηγούνταστάδιαδηµιουργίας

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

Διάλεξη 13: Δομές Δεδομένων ΙΙ (Ταξινομημένες Λίστες)

Διάλεξη 13: Δομές Δεδομένων ΙΙ (Ταξινομημένες Λίστες) Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 13: Δομές Δεδομένων ΙΙ (Ταξινομημένες Λίστες) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 13-1 Περιεχόμενο

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

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 2 Επιμέλεια: Βασίλης Παλιουράς, Αναπληρωτής Καθηγητής Ευάγγελος Δερματάς, Αναπληρωτής Καθηγητής Σταύρος Νούσιας, Βοηθός Ερευνητή Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών

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

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Πίνακες Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Πίνακες Πολλές φορές θέλουμε να κρατήσουμε στην μνήμη πολλά αντικείμενα

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

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

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

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

Παράρτημα A: PHP, HTML φόρμες και το πρωτόκολλο HTTP.

Παράρτημα A: PHP, HTML φόρμες και το πρωτόκολλο HTTP. Εργαστήριο #5 Τι πρέπει να έχετε ολοκληρώσει από το προηγούμενο εργαστήριο. Θα πρέπει να ξέρετε να εισάγετε ένα βασικό πρόγραμμα PHP μέσα σε μια ιστοσελίδα, τη χρήση της echo και τον χειρισμό απλών μεταβλητών

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

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων Αντικείµενα ηµιουργία και χρησιµοποίηση αντικειµένων ηµιουργία αντικειµένων Για να δηµιουργήσω ένα νέο αντικείµενο χρησιµοποιώ τον τελεστή new µε τοόνοµατηςκλάσηςαπότηνοποίαθέλωναδηµιουργήσωένααντικείµενο,

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

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

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

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

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε

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

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

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας

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

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

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

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

SPSS Statistical Package for the Social Sciences

SPSS Statistical Package for the Social Sciences SPSS Statistical Package for the Social Sciences Ξεκινώντας την εφαρμογή Εισαγωγή εδομένων Ορισμός Μεταβλητών Εισαγωγή περίπτωσης και μεταβλητής ιαγραφή περιπτώσεων ή και μεταβλητών ΣΤΑΤΙΣΤΙΚΗ Αθανάσιος

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

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

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

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

8. Μέθοδοι (Methods)

8. Μέθοδοι (Methods) 8. Μέθοδοι (Methods) Χειμερινό εξάμηνο 2012 Πέτρος Κωμοδρόμος komodromos@ucy.ac.cy http://www.eng.ucy.ac.cy/petros 1 Θέματα Μέθοδοι που παρέχονται από τη τάξη Math του Java API Χρήση στατικών μεθόδων και

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

ΣΤΟΙΧΕΙΑ ΤΗΣ ΓΛΩΣΣΑΣ 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

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

4 Συλλογές Αντικειμένων

4 Συλλογές Αντικειμένων 4 Συλλογές Αντικειμένων Πώς χειριζόμαστε αντικείμενα σε ομάδες με επανάληψη Η Απαίτηση Συλλογών Αντικειμένων Πολλές εφαρμογές χρειάζονται πλήθος αντικειμένων: Κατάλογος βιβλίων Φοιτητολόγιο Πελατολόγιο

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

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi ee.duth.

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth. Το πρόγραμμα HelloWorld.java Σχόλια στη Java HelloWorld Παύλος Εφραιμίδης pefraimi ee.duth.gr Java Το πρόγραμμα HelloWorld 1 Java Το πρόγραμμα HelloWorld 2 Σχόλια στη Java ΗγλώσσαJava υποστηρίζει

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

ΣΗΜΕΙΩΣΕΙΣ ΓΙΑ ΤΗ VISUAL BASIC Γ ΓΥΜΝΑΣΙΟΥ

ΣΗΜΕΙΩΣΕΙΣ ΓΙΑ ΤΗ VISUAL BASIC Γ ΓΥΜΝΑΣΙΟΥ ΣΗΜΕΙΩΣΕΙΣ ΓΙΑ ΤΗ VISUAL BASIC Γ ΓΥΜΝΑΣΙΟΥ Συγγραφική Ομάδα Εποπτεία: Ιάκωβος Παπαντωνίου Ευστάθιος Ευσταθίου Θεόδουλος Κωνσταντίνου Ξένιος Ξενοφώντος Χρίστος Μινίκκης 1 Εισαγωγή στον προγραμματισμό υπολογιστών

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

Σι θα δούμε σε αυτό το μάθημα;

Σι θα δούμε σε αυτό το μάθημα; Σι θα δούμε σε αυτό το μάθημα; Γήισζε, αξρηθνπνίεζε θαη ρξήζε κεηαβιεηώλ πηλάθσλ (arrays) Γήισζε, αξρηθνπνίεζε θαη ρξήζε κεηαβιεηώλ ζπιινγώλ (collections) Σι είναι ένας πίνακας (array) Έλαο πίλαθαο είλαη

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

Εργαστήριο #12. Βήμα 1 ο. Βήμα 2 ο. Βήμα 3 ο. Βήμα 4 ο.

Εργαστήριο #12. Βήμα 1 ο. Βήμα 2 ο. Βήμα 3 ο. Βήμα 4 ο. Εργαστήριο #12 Από τα προηγούμενα εργαστήρια: Το εργαστήριο αυτό είναι ανεξάρτητο από τα προηγούμενα επειδή όμως ασχολείται με τη γλώσσα JavaScript, βεβαιωθείτε ότι έχετε διαβάσει το εισαγωγικό Παράρτημα

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

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19)

Κεφάλαιο 8.7. Πολυδιάστατοι Πίνακες (Διάλεξη 19) Κεφάλαιο 8.7 Πολυδιάστατοι Πίνακες (Διάλεξη 19) Πολυδιάστατοι πίνακες Μέχρι τώρα μιλούσαμε για Μονοδιάστατους Πίνακες. ή π.χ. int age[5]= {31,28,31,30,31; για Παράλληλους πίνακες, π.χ. int id[5] = {1029,1132,1031,9991,1513;

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

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

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

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

Εργαστήριο Λειτουργικών Συστημάτων. Minix Overview

Εργαστήριο Λειτουργικών Συστημάτων. Minix Overview Εργαστήριο Λειτουργικών Συστημάτων Minix Overview Σύνοψη 5ης ιάλεξης Λειτουργικό Σύστημα Minix Οργάνωση του Λειτουργικού Συστήματος Οργάνωση πηγαίου κώδικα Minix recompilation Σύνοψη Μαθήματος Σύνοψη Μαθήματος

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

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Αλγόριθμοι και Προγράμματα

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

ΚΕΦΑΛΑΙΟ 2: Τύποι δεδομένων και εμφάνιση στοιχείων...33

ΚΕΦΑΛΑΙΟ 2: Τύποι δεδομένων και εμφάνιση στοιχείων...33 ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος του συγγραφέα... 13 Πρόλογος του καθηγητή Τιμολέοντα Σελλή... 15 ΚΕΦΑΛΑΙΟ 1: Εργαλεία γλωσσών προγραμματισμού...17 1.1 Γλώσσες προγραμματισμού τρίτης γεννεάς... 18 τι είναι η γλώσσα

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

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις Γαβαλάς Δαμιανός

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

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

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

Τα αντικείμενα ή Χειριστήρια και οι βασικές ιδιότητες τους (properties)

Τα αντικείμενα ή Χειριστήρια και οι βασικές ιδιότητες τους (properties) Καθηγητής : Κώστας Αχιλλέως ΒΑΣΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ ΓΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΣΤΗ VISUAL BASIC A ΛΥΚΕΙΟΥ ΚΑΤΕΥΘΥΝΣΗΣ Α) Τι είναι η Visual Basic Είναι μια γλώσσα οπτικού προγραμματισμού υψηλού επιπέδου. Β) Οπτικός

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

Web Forms. Το Web Forms βρίσκεται στο µενού Οργάνωση λειτουργίας -> Βοηθητικές εργασίες -> Web Forms.

Web Forms. Το Web Forms βρίσκεται στο µενού Οργάνωση λειτουργίας -> Βοηθητικές εργασίες -> Web Forms. Web Forms Το module Web Forms του Atlantis δίνει την δυνατότητα σχεδιασµού εφαρµογών που µπορούν να λειτουργήσουν µέσω ενός web browser. Η επικοινωνία µε το Atlantis γίνεται µέσω του RWS (Roads Web Service).

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

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή

ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή ΕΡΓΑΣΤΗΡΙΟ 6: Συναρτήσεις και Αναδρομή Στο εργαστήριο αυτό θα μάθουμε για τη χρήση συναρτήσεων με σκοπό την κατασκευή αυτόνομων τμημάτων προγραμμάτων που υλοποιούν μία συγκεκριμένη διαδικασία, τα οποία

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

ΚΕΦΑΛΑΙΑ. 3.1.1 Name, Caption, Backcolor. 3.2.1 Load, Unload, Activate

ΚΕΦΑΛΑΙΑ. 3.1.1 Name, Caption, Backcolor. 3.2.1 Load, Unload, Activate Vellum Object Oriented Programming Visual Basic Certificate Πιστοποιητικό ανάπτυξης εφαρµογών αντικειµενοστραφούς προγραµµατισµού µε την γλώσσα Visual Basic Vellum Global Educational Services Σελίδα 1

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

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

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

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

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

Εκφώνηση Να δημιουργήσετε ένα πρόγραμμα το οποίο θα δέχεται δύο ακεραίους αριθμούς έστω α και β και θα υπολογίζει το α υψωμένο στην δύναμη του β (α β Εκφώνηση Να δημιουργήσετε ένα πρόγραμμα το οποίο θα δέχεται δύο ακεραίους αριθμούς έστω α και β και θα υπολογίζει το α υψωμένο στην δύναμη του β (α β ). Για παράδειγμα αν οι αριθμοί είναι το 2 και 4 το

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

public void printstatement() { System.out.println("Employee: " + name + " with salary: " + salary);

public void printstatement() { System.out.println(Employee:  + name +  with salary:  + salary); Κληρονομικότητα Η κληρονομικότητα (inheritance) αποτελεί έναν από τους χαρακτηριστικότερους μηχανισμούς των αντικειμενοστρεφών γλωσσών προγραμματισμού. Επιτρέπει την δημιουργία μιας νέας κλάσης απορροφώντας

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

Εισαγωγή στον Προγ/μό Η/Υ

Εισαγωγή στον Προγ/μό Η/Υ Εισαγωγή στον Προγ/μό Η/Υ Ενότητα 7 2ο μέρος: Επιπλέον έννοιες σχετικά με αντικείμενα Διδάσκων: Μιχάλης Τίτσιας Περιεχόμενα Τι μπορεί να περιέχει μια τάξη Μέθοδοι τάξης και σταθερές τάξης Πολυμορφισμός

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java III Το if-else statement Το if-else statement δουλεύει καλά όταν στο condition θέλουμε να περιγράψουμε μια επιλογή με δύο πιθανά ενδεχόμενα.

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

Οδηγίες Εργασίας 1 Facility-Game

Οδηγίες Εργασίας 1 Facility-Game ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ 2013-2014 Οδηγίες Εργασίας 1 Facility-Game Ανανεωμένος για την έκδοση v0.62 του FacilityGameProject Διδάσκων : Eπικ.Καθηγητής Παύλoς Εφραιμίδης Υπεύθυνος Φροντιστηρίου : Σωτήρης Γυφτόπουλος

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

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13 Περιεχόμενα Πρόλογος... 13 ΜΕΡΟΣ ΠΡΩΤΟ Κεφ. 1 Περί προγραμματισμού και γλωσσών προγραμματισμού Προγράμματα και Λειτουργικά Συστήματα... 17 Γλώσσες προγραμματισμού και εργαλεία ανάπτυξης προγραμμάτων...

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

Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου

Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου Προτεινόμενες εργασίες Προγραμματισμού Διαδικτύου Ιωάννης Γ. Τσούλος Εργασία Πρώτη - Αριθμομηχανή Με την χρήση του περιβάλλοντος AWT ή του SWING θα πρέπει να δημιουργηθεί αριθμομηχανή για την εκτέλεση

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

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

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

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

ΕΠΕΞΕΡΓΑΣΙΑ ΒΙΝΤΕΟ ΜΕ ΤΟ ΠΡΟΓΡΑΜΜΑ VSDC FREE VIDEO EDITOR

ΕΠΕΞΕΡΓΑΣΙΑ ΒΙΝΤΕΟ ΜΕ ΤΟ ΠΡΟΓΡΑΜΜΑ VSDC FREE VIDEO EDITOR ΕΠΕΞΕΡΓΑΣΙΑ ΒΙΝΤΕΟ ΜΕ ΤΟ ΠΡΟΓΡΑΜΜΑ VSDC FREE VIDEO EDITOR ΠΕΡΙΕΧΟΜΕΝΑ Σελίδα Πως ανοίγουμε αρχείο βίντεο ή εικόνα για επεξεργασία 1 Εφαρμογή εφφέ σε βίντεο ή σε εικόνα 2 Πως κόβεται ένα κομμάτι του βίντεο

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

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

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

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

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

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

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

Επεξεργασία πολλαπλών φύλλων εργασίας - Γραφημάτων Excel

Επεξεργασία πολλαπλών φύλλων εργασίας - Γραφημάτων Excel Επεξεργασία πολλαπλών φύλλων εργασίας - Γραφημάτων Excel 11.1. Πολλαπλά φύλλα εργασίας Στο προηγούμενο κεφάλαιο δημιουργήσαμε ένα φύλλο εργασίας με τον προϋπολογισμό δαπανών του προσωπικού που θα συμμετάσχει

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

Ενδεικτική περιγραφή μαθήματος

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

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

Εισαγωγή στη C# και. Σημειώσεις Σεμιναρίου Επιμέλεια: Βασίλης Κόλιας. το.net 4.0

Εισαγωγή στη C# και. Σημειώσεις Σεμιναρίου Επιμέλεια: Βασίλης Κόλιας. το.net 4.0 Εισαγωγή στη C# και Σημειώσεις Σεμιναρίου Επιμέλεια: Βασίλης Κόλιας το.net 4.0 2 Π ί ν α κ α ς Π ε ρ ι ε χ ο μ έ ν ω ν Πίνακας Περιεχομένων... 1 1. Εισαγωγή... 11 1.1. Γλώσσες και γλώσσες προγραμματισμού...

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

ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++

ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++ ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++ Α. ΠΡΙΝ ΤΗΝ ΕΓΚΑΤΑΣΤΑΣΗ Το πρόγραμμα BloodShed Dev-C++ είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης* κώδικα για γλώσσες

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

Δομές Δεδομένων (Data Structures)

Δομές Δεδομένων (Data Structures) Δομές Δεδομένων (Data Structures) Στοίβες Ουρές Στοίβες: Βασικές Έννοιες. Ουρές: Βασικές Έννοιες. Βασικές Λειτουργίες. Παραδείγματα. Στοίβες Δομή τύπου LIFO: Last In - First Out (τελευταία εισαγωγή πρώτη

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

Διάλεξη 17: Έλεγχος Λογισμικού

Διάλεξη 17: Έλεγχος Λογισμικού Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 17: Έλεγχος Λογισμικού (Κεφάλαιο 24.1-24.2, KNK-2ED) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 17-1 Μεγάλης

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

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση Αρης Ευθυμίου Ανακοινώσεις! Βαθμοί: 1ης εργαστηριακής άσκησης Βαθμός 0 χωρίς σχόλια δεν έχω πάρει την άσκηση! ελέγξτε μήπως δεν το στέλνετε στο σωστό

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

Joomla! with K2 - User Guide

Joomla! with K2 - User Guide Joomla! with K2 - User Guide τελευταία ανανέωση: 27/03/2014 από την ICAP WEB Solutions 1 Η κατασκευή της δυναμικής σας ιστοσελίδας έχει ολοκληρωθεί και μπορείτε πλέον να προχωρήσετε σε αλλαγές ή προσθήκες

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

Διάλεξη 6: Δείκτες και Πίνακες

Διάλεξη 6: Δείκτες και Πίνακες Τμήμα Πληροφορικής Πανεπιστήμιο Κύπρου ΕΠΛ132 Αρχές Προγραμματισμού II Διάλεξη 6: Δείκτες και Πίνακες (Κεφάλαιο 12, KNK-2ED) Δημήτρης Ζεϊναλιπούρ http://www.cs.ucy.ac.cy/courses/epl132 6-1 Περιεχόμενο

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

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

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

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

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

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

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

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Προχωρημένα Θέματα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Προχωρημένα Θέματα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανακατεύθυνση Εισόδου/Εξόδου Συνήθως η τυπική είσοδος ενός προγράμματος (stdin) προέρχεται

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

Κεφάλαιο 2.1-2.4: Εισαγωγή στην C: (Διαλέξεις 3-4)

Κεφάλαιο 2.1-2.4: Εισαγωγή στην C: (Διαλέξεις 3-4) Κεφάλαιο 2.1-2.4: Εισαγωγή στην C (Διαλέξεις 3-4) Περιεχόμενα Εισαγωγή στην C: Σύνταξη και Σημασιολογία σχόλια μεταβλητές και σταθερές τύποι δεδομένων Μετά αυτές τις δυο διαλέξεις θα μπορείτε να γράψετε

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

Δικτυακά Πολυμέσα Ι: 2 η Εργασία. Να δημιουργήσετε μια HTML σελίδα η οποία να περιέχει μία φόρμα που να μοιάζει με αυτή της παρακάτω εικόνας:

Δικτυακά Πολυμέσα Ι: 2 η Εργασία. Να δημιουργήσετε μια HTML σελίδα η οποία να περιέχει μία φόρμα που να μοιάζει με αυτή της παρακάτω εικόνας: 2 η ΕΡΓΑΣΙΑ: ΥΠΟΛΟΓΙΣΜΟΣ ΧΙΛΙΟΜΕΤΡΙΚΩΝ ΑΠΟΣΤΑΣΕΩΝ ΜΕ JAVASCRIPT Ημερομηνία Παράδοσης: Παρασκευή 15/1/2010 (Η εργασία θα γίνει σε ομάδες των 2 ατόμων!!) 1. Απαιτήσεις εργασίας Να δημιουργήσετε μια HTML

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

ΕΠΛ 012. JavaScripts

ΕΠΛ 012. JavaScripts ΕΠΛ 012 JavaScripts Γλώσσα JavaScript (JS) ηµιουργεί δυναµικές ιστοσελίδες και αλληλεπιδράσεις µε το χρήστη εν είναι Java, αλλά είναι αντικειµενοστραφής (απλό µοντέλο υποκειµένων) Objects, properties (τιµές

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Σύνθεση αντικειμένων Παράδειγμα: Τμήμα πανεπιστημίου

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Σύνθεση αντικειμένων Παράδειγμα: Τμήμα πανεπιστημίου ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Σύνθεση αντικειμένων Παράδειγμα: Τμήμα πανεπιστημίου Μεγάλο παράδειγμα Θέλουμε να δημιουργήσουμε ένα λογισμικό για ένα τμήμα πανεπιστημίου. Το τμήμα έχει 4

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

ΕΡΓΑΣΤΗΡΙΟ FRONT PAGE 3

ΕΡΓΑΣΤΗΡΙΟ FRONT PAGE 3 ΕΡΓΑΣΤΗΡΙΟ FRONT PAGE 3 Φόρµες Ένας τρόπος για να συλλέξετε πληροφορία από τους επισκέπτες του δικτυακού σας τόπου είναι οι φόρµες. Με τα εξειδικευµένα αυτά εργαλεία µπορείτε να κάνετε έρευνες ή τεστ,

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

API: Applications Programming Interface

API: Applications Programming Interface ÒØ Ñ ÒÓ ØÖ ÔÖÓ» Ñ ÒØ Ñ ÒÓ ØÖ ÔÖÓ Ö ÑÑ Ø Ñ ½ Ö Ø Ò Ô Ö Ø ÒØ Ñ ÒÛÒ ÒÒÓ ôòøóù ÔÖ Ñ Ø Ó ÑÓÙ Ì ÔÓ ÓÑ ÒÛÒ Ì µ (i) ÒÓÐÓØ ÑôÒ (ii)ôö Ü º Ð ØÖ Ò Ò ÖÛÔÓ ØÖ ÔÐ Ò Ø Ó Ó Ù Ø Ñ Ø ººº ½ºÈÖÛØ ÓÒØ Ø ÔÓ int double char

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

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

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Πίνακες Πίνακες (arrays) Πολύ συχνά είναι απαραίτητο το πρόγραμμα μας να χειριστεί

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

ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης

ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης ΕΓΚΑΤΑΣΤΑΣΗ & ΠΑΡΑΜΕΤΡΟΠΟΙΗΣΗ INTERNET INFORMATION SERVER (IIS) ΓΙΑ ΥΛΟΠΟΙΗΣΗ ΥΠΗΡΕΣΙΩΝ ΔΙΑΔΙΚΤΥΟΥ (WEB SERVICES) ΣΠΟΥΔΑΣΤΡΙΑ:Μπάρδα Μαρία ΕΙΣΗΓΗΤΗΣ: Τσιαντής

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

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα ΝΗΜΑΤΑ ΣΤΗ JAVA (1) Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα πρόγραµµα. Αιτία Η δυνατότητα αποµόνωσης (ή αυτονόµησης) κάποιων

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

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Α' Εξάμηνο ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εργαστήριο 9η εβδομάδα. Κοζάνη, 2 Δεκεμβρίου 2008. Δίνονται παραδείγματα που αποσαφηνίζουν και συμπληρώνουν όσα αναφέρθηκαν στο μάθημα σχετικά με τις δομές

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

Δομές δεδομένων (2) Αλγόριθμοι

Δομές δεδομένων (2) Αλγόριθμοι Δομές δεδομένων (2) Αλγόριθμοι Παράγωγοι τύποι (struct) σύνοψη προηγουμένων Πίνακες: πολλές μεταβλητές ίδιου τύπου Παράγωγοι τύποι ή Δομές (struct): ομαδοποίηση μεταβλητών διαφορετικού τύπου struct Student

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

Ξεκινώντας με το MIT Αρρ Inventor. 1 η Εργασία

Ξεκινώντας με το MIT Αρρ Inventor. 1 η Εργασία Ξεκινώντας με το MIT Αρρ Inventor 1 η Εργασία Απαιτήσεις 1. Σύνδεση στο Διαδίκτυο (διότι οι εφαρμογές δημιουργούνται online) 2. Εγκατεστημένος ο Browser Google Chrome 3. Υπαρκτός λογαριασμός Gmail 4. Κατεβάστε

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

Προγραμματισμό για ΗΜΥ

Προγραμματισμό για ΗΜΥ ΕΠΛ 34: Εισαγωγή στον Προγραμματισμό για ΗΜΥ Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy Κεφάλαιο 12 Πίνακες εικτών (Pointers Arrays) Θέματα ιάλεξης Στην ενότητα

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

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Ενότητα 14 Δυναμική διαχείριση μνήμης Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Στατική δέσμευση μνήμης Με τη δήλωση απλών μεταβλητών

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

Αντιγραφή με χρήση της γυάλινης επιφάνειας σάρωσης

Αντιγραφή με χρήση της γυάλινης επιφάνειας σάρωσης Γρήγορη αναφορά Αντιγραφή Δημιουργία αντιγράφων Γρήγορη δημιουργία αντιγράφου 3 Στον πίνακα ελέγχου του εκτυπωτή πατήστε το κουμπί αντίγραφο 4 Εάν τοποθετήσατε το έγγραφο στη γυάλινη επιφάνεια σάρωσης

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

ΛΥΚΕΙΟ ΣΟΛΕΑΣ Σχολική χρονιά 2008-2009

ΛΥΚΕΙΟ ΣΟΛΕΑΣ Σχολική χρονιά 2008-2009 ΛΥΚΕΙΟ ΣΟΛΕΑΣ Σχολική χρονιά 2008-2009 ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΙΟΥΝΙΟΥ 2009 ΜΑΘΗΜΑ: ΠΛΗΡΟΦΟΡΙΚΗ ΤΑΞΗ : Β ΗΜΕΡΟΜΗΝΙΑ: Τετάρτη, 3 Ιουνίου 2009 ΩΡΑ: 07:45 10:15 ΟΔΗΓΙΕΣ: Το εξεταστικό δοκίμιο αυτό αποτελείται

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

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

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

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