Συστήματα Επιχειρηματικής Ευφυίας. CPLEX και OPL: ένα λογισμικό επίλυσης προβλημάτων Γραμμικού Προγραμματισμού
|
|
- Νίκων Μακρή
- 7 χρόνια πριν
- Προβολές:
Transcript
1 Συστήματα Επιχειρηματικής Ευφυίας CPLEX και OPL: ένα λογισμικό επίλυσης προβλημάτων Γραμμικού Προγραμματισμού
2 Προβλήματα Γραμμικού Προγραμματισμού Πρόβλημα Γραμμικού Προγραμματισμού - ΓΠ (Linear Programming LP) λέγεται κάθε πρόβλημα μεγιστοποίησης ή ελαχιστοποίησης μιας (αντικειμενικής) συνάρτησης, με ταυτόχρονη ικανοποίηση κάποιων περιορισμών, όπου: Κάθε περιορισμός μπορεί να μοντελοποιηθεί ως γραμμική εξίσωση ή ανίσωση Η αντικειμενική συνάρτηση μπορεί να μοντελοποιηθεί ως γραμμικός συνδυασμός των μεταβλητών του προβλήματος. Πρόβλημα Ακέραιου Προγραμματισμού - ΑΠ (Integer Programming IP) λέγεται κάθε πρόβλημα ΓΠ όπου επιπλέον κάποιες ή όλες από τις μεταβλητές της λύσης πρέπει να λαμβάνουν οπωσδήποτε Ακέραιες τιμές. Πρόβλημα Δυαδικού Προγραμματισμού ΔΠ (Binary Programming BP) λέγεται κάθε πρόβλημα ΓΠ όπου κάποιες ή όλες από τις μεταβλητές του μοντέλου λαμβάνουν την τιμή 0 ή 1. Πρόβλημα Μεικτού Προγραμματισμού λέγεται κάθε πρόβλημα ΓΠ όπου είναι ταυτόχρονα ΑΠ και ΔΠ.
3 Πολυπλοκότητα προβλημάτων ΓΠ Κάθε πρόβλημα ΓΠ επιλύεται σε πολυωνυμικό χρόνο. Αντίθετα, τα προβλήματα Ακέραιου Προγραμματισμού και Δυαδικού Προγραμματισμού (γενικά) δεν επιλύονται σε πολυωνυμικό χρόνο. Με άλλα λόγια είναι NP-Complete (Non polynomial Complete). Χαλάρωση ενός προβλήματος Ακέραιου ή Δυαδικού Προγραμματισμού λέγεται η μέθοδος κατά την οποία επιτρέπουμε σε κάποιες Ακέραιες μεταβλητές (ή και Δυαδικές) να λαμβάνουν Πραγματικές τιμές. Η μέθοδος της χαλάρωσης, κάποιες φορές είναι ευεργετική, καθώς ένα πρόβλημα Ακέραιου ή Δυαδικού Προγραμματισμού, που πρακτικά δεν μπορεί να επιλυθεί, τελικά επιλύεται σε αποδεκτό χρόνο.
4 Γιατί CPLEX; (1) Πολλά προβλήματα που σχετίζονται με τα Συστήματα Επιχειρηματικής Ευφυΐας μοντελοποιούνται ως προβλήματα Γραμμικού (ή Ακέραιου, ή Δυαδικού ή Μεικτού) Προγραμματισμού. Κάποια από τα προβλήματα που διαπραγματεύεται η Υπολογιστική Νοημοσύνη, επίσης μοντελοποιούνται με τον παραπάνω τρόπο. (π.χ. School timetabling, University Course Timetabling, Nurse Rostering κ.ά. ) Αν και σε κάποιες «εύκολες» περιπτώσεις, τα προβλήματα ΓΠ μπορούν να επιλυθούν από τον άνθρωπο (π.χ. με γραφικό τρόπο αναπαράσταση των ανισοτήτων στο Καρτεσιανό επίπεδο), γενικά χρησιμοποιούνται εξειδικευμένα Λογισμικά (εργαλεία) για αυτόν τον σκοπό και ΗΥ.
5 Γιατί CPLEX; (2) Υπάρχουν δωρεάν Λογισμικά (π.χ. Glpk) αλλά και εμπορικά (π.χ. CPLEX, Gurobi) τα οποία είναι γενικά καλύτερα από τα δωρεάν, αλλά κοστίζουν μερικές χιλιάδες δολάρια. Στην συνέχεια θα μελετήσουμε τα βασικά σημεία χρήσης του CPLEX, διότι από σχετική εργασία της ερευνητικής μας ομάδας (Τασσόπουλος, Μπεληγιάννης) που είναι υπό δημοσίευση, προέκυψαν καλύτερα αποτελέσματα του CPLEX έναντι των Glpk και Gurobi, τουλάχιστον για το πρόβλημα school timetabling. Έτσι, επιβεβαιώνεται η «φήμη» του CPLEX ως ένα από τα πιο ισχυρά Λογισμικά επίλυσης αυτού του είδους των προβλημάτων. Επιπλέον η εκμάθηση του CPLEX είναι σχετικά εύκολη.
6 Το λογότυπο του CPLEX Κάνοντας κλικ στη συντόμευση του CPLEX (κάτω - αριστερά), στην επιφάνεια εργασίας, εμφανίζεται για λίγα δευτερόλεπτα η παρακάτω (δεξιά) εισαγωγική οθόνη (λογότυπο). Η συντόμευση του CPLEX στην επιφάνεια εργασίας Το λογότυπο του CPLEX.
7 Η διεπαφή (interface) του CPLEX Πάνω αριστερά: κατάλογος των projects και των αρχείων τους. Πάνω κέντρο-δεξιά: εμφανίζονται τα περιεχόμενα των αρχείων του project. Κάτω κέντρο-δεξιά: εμφανίζονται πληροφορίες που αφορούν στην διάρκεια εκτέλεσης και την τελική λύση.
8 Το interface μετά τη δημιουργία του project με όνομα xxx. Περισσότερες λεπτομέρειες για την δημιουργία project και το interface θα δοθούν στο προσεχές εργαστήριο.
9 Τα 2 αρχεία ενός project και το τμήμα.ops Αφού πρώτα δημιουργήσουμε ένα project για το πρόβλημα που επιχειρούμε να λύσουμε, δημιουργούνται 2 αρχεία: Name.mod και Name.dat. Name είναι το εκάστοτε όνομα του project. Name.mod: σε αυτό γράφουμε συνήθως μόνο το μοντέλο του προβλήματος, χρησιμοποιώντας ειδική γλώσσα (συντακτικό). Τα πραγματικά δεδομένα, συνήθως, δεν γράφονται εδώ. Γίνεται απλώς η δήλωση της δομής τους. Name.dat: εδώ γράφουμε τις τιμές των δεδομένων. Πρέπει να αντιστοιχούν στις δηλώσεις δεδομένων που έγιναν στο αρχείο Name.mod. Δημιουργείται επίσης ένα τμήμα πάνω στην επιφάνεια του interface, με όνομα Name.ops. Name.ops: περιέχει διάφορες επιλογές (options) και ρυθμίσεις, απαραίτητες για το τρέξιμο της εφαρμογής.
10 OPL: Optimization Programming Language Η γλώσσα OPL είναι μια γλώσσα μοντελοποίησης, την οποία καταλαβαίνει ο CPLEX προκειμένου να διαβάσει το μοντέλο του προβλήματος (αρχείο.mod) και τα δεδομένα (αρχείο.dat) Ο σκοπός της χρήσης της OPL είναι: η προτυποποίηση στην διατύπωση ενός συγκεκριμένου μοντέλου. Η ακρίβεια στην μαθηματική διατύπωση των μαθηματικών εκφράσεων. Η απλότητα και η συντομία στην γραφή πολυάριθμων ανισοτήτων και εξισώσεων με λίγες μόνο γραμμές κώδικα.
11 Η βασική δομή ενός μοντέλου OPL (1) Τα σχόλια αρχίζουν με /* και τελειώνουν σε οποιαδήποτε γραμμή με */ Επίσης, κάθε γραμμή που αρχίζει με // θεωρείται γραμμή σχολίων. Τα σχόλια αγνοούνται από τον CPLEX. Κάθε αρχείο.mod (στο οποίο περιγράφουμε το μοντέλο του προβλήματος) περιλαμβάνει τουλάχιστον 2 τμήματα: των δηλώσεων των μεταβλητών και της περιγραφής του μοντέλου. Όταν δηλώνεται μια μεταβλητή στο αρχείο.mod μπορούμε να της αποδώσουμε και τιμή. Αλλιώς, η τιμή μπορεί να αποδοθεί στο αρχείο.dat. Οι μεταβλητές απόφασης δηλώνονται με το πρόθεμα dvar (decision variable) Κάθε γραμμή, είτε στο.mod είτε στο.dat τελειώνει με ένα ;
12 Η βασική δομή ενός μοντέλου OPL (2) Παράδειγμα: /* This is an OPL model example. It is a very simple one */ //First there is the variable declaration part. dvar float+ Gas; //a positive real decision variable is //declared. Its name is Gas. dvar float+ Chloride; //another positive real decision //variable with name Chloride. //Variable declaration part end.
13 Η βασική δομή ενός μοντέλου OPL (3) maximize 40 * Gas + 50 * Chloride; subject to { //The objective function //The beginning of constraint part is declared ctmaxtotal: //The title of the first constraint. Gas + Chloride <= 50; ctmaxtotal2: //The title of the second constraint 3 * Gas + 4 * Chloride <= 180; ctmaxchloride: //The title of the third constraint Chloride <= 40; }//The title of a constraint is not obligatory but it is recommended //for reference purposes. The title is followed by the constraint //itself.
14 Κάποιοι βασικοί Τύποι δεδομένων της OPL Ακέραιοι (int X; ή int Y = 45; όπου X, Y παράμετροι ακέραιου τύπου) Στην OPL παρέχεται το υποσύνολο των ακεραίων maxint έως και maxint, όπου maxint ο μεγαλύτερος ακέραιος που μπορεί να αναπαρασταθεί. Πραγματικοί (float A; ή float B = 3.45; όπου Α, Β πραγματικές παράμετροι.) Συμβολοσειρές (string Name; ή string Name = John ;) Μπορούμε να δηλώσουμε ένα σύνολο από strings: {string} Names = { John, George, Natasha }
15 Βασικές δομές δεδομένων της OPL (1) Διάστημα (range): Ακέραια διαστήματα int lower = 10; int upper = 20; range X = lower.. 2*Upper; range Y = -lower.. 10; /*Ορίζονται δύο (μεταβλητές) διαστήματα X, Y, με ακέραιες τιμές οι οποίες μεταβάλλονται στα αντίστοιχα διαστήματα. */
16 Βασικές δομές δεδομένων της OPL (2) Πραγματικά διαστήματα range float X = ; /*Ορίζεται ένα διάστημα από 1 έως 100 dvar float x in X; /*Ορίζεται μια μεταβλητή απόφασης (decision variable-dvar) x πραγματικού τύπου η οποία παίρνει πραγματικές τιμές στο διάστημα [1.0, 100.0] */
17 Βασικές δομές δεδομένων της OPL (3) One-dimensional arrays (μονοδιάστατοι πίνακες) int a[1..4] = [10, 20, 30, 40]; /* Ορίζεται ένας πίνακας μιας διάστασης με 4 θέσεις για ακεραίους. Οι ακέραιοι (περιεχόμενο) δίνονται την στιγμή της δήλωσης. Θα μπορούσαν να δοθούν στο αρχείο.dat */ float b[0..10]; /*Ορίζεται πίνακας πραγματικών 11 θέσεων. Οι 11 πραγματικοί δεν δίνονται. Θα δοθούν στο αρχείο.dat */
18 Βασικές δομές δεδομένων της OPL (4) Multi-dimensional arrays (πολυδιάστατοι πίνακες) int NodesNo =...; //ορίζεται μια παράμετρος ακέραιου τύπου. //Η τιμή της δίνεται στο.dat ως : NodesNo = 4; int TrucksNo =...; //ορίζεται μια παράμετρος ακέραιου τύπου. //Η τιμή της δίνεται στο.dat ως : TrucksNo = 5; {int} C = asset(1..nodesno); /*ορίζεται ένα σύνολο ακεραίων, από το 0 έως το NodesNo. */ {int} W = asset(1..trucksno); /* ορίζεται ένα σύνολο ακεραίων, από το 1 έως το TrucksNo. */
19 Βασικές δομές δεδομένων της OPL (5) Multi-dimensional arrays (πολυδιάστατοι πίνακες) float TT[i in C][j in C] =...; /*ορίζεται ένας δυσδιάστατος πίνακας πραγματικών, με δείκτες i, j στα αντίστοιχα σύνολα. Οι τιμές του δίνονται στο.dat κατά γραμμές, ως: TT = [ [0, 1.2, 2.3, 1.1], [1.5, 0, 3.4, 1.3], [3.1, 1.2, 0, 1.2], [2.5, 6.7, 3.5, 0]]; */
20 Βασικές δομές δεδομένων της OPL (6) Tuples (νιάδες) tuple triple {int i; int j; int b;} /* ορίζεται μια νιάδα (tuple) με όνομα triple που στην πραγματικότητα είναι διατεταγμένη τριάδα, με μέλη τους ακεραίους i, j, b. */
21 Βασικές δομές δεδομένων της OPL (7) Σύνολα με στοιχεία νιάδες. setof(triple) Triples = {<i,j, b> i, j in C, b in W}; /* ορίζεται ένα σύνολο με όνομα Triples, όπου τα στοιχεία του είναι διατεταγμένες τριάδες τύπου triples. Εδώ ορίζεται και ο τύπος των μελών της τριάδας. */
22 Βασικές δομές δεδομένων της OPL (8) Slicing (μερική άθροιση, ή άθροισμα ως προς ένα μέλος της νιάδας) setof(int) II = {i <i,j,b> in Triples}; setof(int) JJ = {j <i,j,b> in Triples}; setof(int) BB = {b <i,j,b> in Triples}; /*ορίζονται 3 σύνολα ακεραίων (II, JJ και BB) με συγκεκριμένο τρόπο. Τα σύνολα αυτά είναι απαραίτητα για την διαδικασία slicing στα αθροίσματα (βλέπε επόμενες διαφάνειες). */
23 Μεταβλητές απόφασης (1) Πρώτος τρόπος {int} C = asset(1..nodesno); {int} W = asset(1..trucksno); dvar boolean X[i in C][j in C][b in W] ; Αναφερόμαστε στην μεταβλητή ως: Χ[i][j][b] /*Ορίζεται μια δυαδική (boolean) μεταβλητή απόφασης τριών διαστάσεων. Εναλλακτικά, μπορούμε να ορίσουμε την ίδια μεταβλητή απόφασης όπως παρακάτω */
24 Μεταβλητές απόφασης (2) Δεύτερος τρόπος tuple triple {int i; int j; int b;} setof(triple) Triples W}; = {<i,j, b> i, j in C, b in dvar boolean X[Triples]; Αναφερόμαστε στην μεταβλητή ως X[<i, j, b>}
25 Μερικά αθροίσματα με πολυδιάστατες μεταβλητές (1) Έστω η δυαδική μεταβλητή Χ[i][j][b] με τιμή 1 αν το φορτηγό b μεταβαίνει από τον κόμβο i στον j και τιμή 0 αλλιώς. Υποθέτουμε ότι θέλουμε να εξασφαλίσουμε με κάποιον περιορισμό ότι σε κάθε κόμβο j θα υπάρχει το πολύ ένας κόμβος i ώστε κάθε φορτηγό b να μεταβαίνει από τον i στον j. Ο κατάλληλος περιορισμός γράφεται: forall(b in W, j in C) sum(i in C)X[i][j][b] <= 1; //για κάθε φορτηγό b και για //κάθε κόμβο j //μερική άθροιση (μερικό //άθροισμα) ως προς i.
26 Μερικά αθροίσματα με πολυδιάστατες μεταβλητές (2) Ερωτήσεις Τι σημαίνουν οι περιορισμοί: forall(b in W, j in C) sum(i in C)X[i][j][b] == 1; Πώς θα μοντελοποιούσαμε την απαίτηση: από κάθε κόμβο i, κάθε φορτηγό εξέρχεται προς έναν ακριβώς κόμβο j και πως θα μοντελοποιούσαμε την απαίτηση: από κάθε κόμβο i, κάθε φορτηγό εξέρχεται το πολύ μια φορά προς κόμβο j; Να μοντελοποιηθεί η απαίτηση: αν ένα οποιοδήποτε φορτηγό εισέλθει στον κόμβο 4 τότε δεν θα εξέλθει.
27 Slicing (1) Αν αντί για την προηγούμενη αναπαράσταση της δυαδικής μεταβλητής Χ χρησιμοποιήσουμε την ανάλογη αναπαράσταση με τις νιάδες (δηλαδή την X[<i, j, b>] και θέλουμε να γράψουμε τον περιορισμό της προηγούμενης διαφάνειας, δηλαδή να κάνουμε μερική άθροιση ως προς ένα μέλος της διατεταγμένης τριάδας, τότε πρέπει να έχουμε ήδη δηλώσει ένα σύνολο: setof(int) II={i <i,j,b> in Triples}; και μετά να γράψουμε τον περιορισμό ως: forall(b in W) sum(<i,j,b>in Triples: i in II )X[<i,j,b>] <= 1;
28 Slicing (2) Είναι δυνατόν να προσθέσουμε επιπλέον περιορισμούς στην έκφραση forall ή / και στο sum ενός περιορισμού. forall(b in W : b!= 1) //για κάθε φορτηγό διαφορετικό από το 1 sum(<i,j,b>in Triples: i in II && ( j == 3 j >= 6))X[<i,j,b>] <= 1; //μερική άθροιση ως προς i, για j = 3 ή j >= 6 Ερώτηση Πώς ερμηνεύονται οι παραπάνω περιορισμοί;
29 Πολλαπλά αθροίσματα (1) Ερώτηση: Να μοντελοποιηθεί η απαίτηση: τα φορτηγά που εισέρχονται σε οποιονδήποτε κόμβο από οποιονδήποτε κόμβο είναι το πολύ 5. Απάντηση: forall(j in C) sum(i in C, b in W)X[i][j][b] <= 5;
30 Πολλαπλά αθροίσματα (2) Ερώτηση: Να μοντελοποιηθεί η απαίτηση: τα φορτηγά που εισέρχονται σε οποιονδήποτε κόμβο από οποιονδήποτε κόμβο είναι ακριβώς 5. Απάντηση: (a) forall(b in W, j in C) sum(i in C)X[i][j][b] <= 1; (b) forall(j in C) sum(i in C, b in W)X[i][j][b] == 5;
31 Πολλαπλά αθροίσματα (3) Ερώτηση: Στην απάντηση της προηγούμενης διαφάνειας, ποια είναι η σκοπιμότητα των περιορισμών (a); Να αιτιολογήσετε αν είναι απαραίτητοι ή όχι.
32 Το block της main Χρησιμοποιείται για να ελέγξει την ροή εκτέλεσης του CPLEX. Μπορεί να υπάρχει το πολύ ένα main block στο αρχείο.mod Ανεξάρτητα από το σημείο που αναγράφεται στο αρχείο.mod εκτελείται κατά προτεραιότητα. Οι ρυθμίσεις που ενδεχομένως υπάρχουν στην main υπερισχύουν των ρυθμίσεων του CPLEX που έχουν γίνει στο αρχείο.ops και αφορούν το περιβάλλον IDE. Η μορφή ενός main block είναι: main {. }
33 Παράδειγμα ενός main block main { thisoplmodel.generate(); if (cplex.solve()) { var obj=cplex.getobjvalue(); } } Η δήλωση thisoplmodel είναι μια ειδική μεταβλητή του script που αναφέρεται στο συγκεκριμένο instance (στιγμιότυπο)του μοντέλου. Η geneate() είναι μια μέθοδος η οποία δημιουργεί το στιγμιότυπο του μοντέλου. Η cplex είναι μια μεταβλητή του script που αναφέρεται εξ ορισμού στο CPLEX Optimizer instance. Η solve() καλεί έναν αλγόριθμο βελτιστοποίησης του CPLEX. Η gerobjvalue() αντλεί την τιμή της αντικειμενικής συνάρτησης μετά την επίλυση του μοντέλου.
34 Παράδειγμα script που καλεί ένα project main { var proj = new IloOplProject("../../../../../opl/mulprod"); var rc = proj.makerunconfiguration(); rc.oplmodel.generate(); if (rc.cplex.solve()) { writeln("obj = ", rc.cplex.getobjvalue()); } else { writeln("no solution"); } rc.end(); proj.end(); } Καλείται το project mulprod.prj Δημιουργείται το configuration Δημιουργείται το μοντέλο στην μεταβλητή rc. Επιχειρείται η επίλυση του μοντέλου. Κλείνει το μοντέλο και το project
35 Προ-επεξεργασία (Preprocessing) Η προ-επεξεργασία (preprocessing) επιτυγχάνεται με μια ή περισσότερες δομές execute { } που πρέπει να αναγράφονται στο αρχείο.mod πριν την δήλωση minimize ή maximize Η προ-επεξεργασία, αν υπάρχει, εκτελείται εξ ορισμού πριν την επίλυση του μοντέλου και σκοπό έχει την προετοιμασία των δεδομένων.
36 Μετά επεξεργασία (Post processing) (1) Η μετά-επεξεργασία (post processing) επιτυγχάνεται με μια ή περισσότερες δομές execute { } που πρέπει να αναγράφονται στο αρχείο.mod μετά το τμήμα δήλωσης των περιορισμών, δηλαδή μετά το subject to {.. } Ο σκοπός της χρήσης της μετά-επεξεργασίας είναι η εκτύπωση των αποτελεσμάτων και διάφορων πληροφοριών.
37 Μετά επεξεργασία (Post processing) (2) Προφανώς η μετά-επεξεργασία λαμβάνει χώρα μετά την επίλυση του μοντέλου. Η μετά-επεξεργασία δεν εκτελείται εξ ορισμού, αλλά αντίθετα χρειάζεται η εντολή thisoplmodel.postprocess(); για να ενεργοποιηθεί, η οποία αναγράφεται στην main {. }
38 Προγραμματισμός στην execute και την main Οι προγραμματιστικές εντολές που χρησιμοποιούνται στην execute και την main μοιάζουν πολύ με της γλώσσας C. Υπάρχει για παράδειγμα η δομή while { }, η δομή if( ) then {.} else {.}, η δομή for(var i in C){. }, η εντολή break, κ.ά.
39 Εκτύπωση στην οθόνη του IDE του CPLEX Επιτυγχάνεται γράφοντας σε execute block ή στην main την εντολή writeln(); Παράδειγμα: writeln( objective value is, obj); /*θα εκτυπώσει objective value is και στην συνέχεια θα εκτυπώσει την τιμή της μεταβλητής obj. Ακολούθως θα αλλάξει γραμμή. */
40 Χειρισμός αρχείων και εγγραφή σε αρχείο var fp = new IloOplOutputFile("Results.txt"); fp.writeln("this is a text"); fp.writeln("obj value is ", obj); fp.close(); Δημιουργείται ένας «δείκτης» fp προς ένα αρχείο εξόδου με όνομα Results.txt Γράφεται στο αρχείο το κείμενο: This is a text και αλλάζει γραμμή. Γράφεται στο αρχείο το κείμενο: Obj value is, στην συνέχεια γράφεται η τιμή της μεταβλητής obj και αλλάζει γραμμή. Κλείνει το αρχείο που δείχνει ο δείκτης fp, δηλαδή το Results.txt
41 Σας ευχαριστώ για την προσοχή σας
Μοντελοποίηση προβληµάτων
Σχεδιασµός Αλγορίθµων Ακέραιος προγραµµατισµός Αποδοτικοί Αλγόριθµοι Μη Αποδοτικοί Αλγόριθµοι Σχεδιασµός Αλγορίθµων Ακέραιος προγραµµατισµός Αποδοτικοί Αλγόριθµοι Μη Αποδοτικοί Αλγόριθµοι Θεωρία γράφων
Αντικειμενοστρεφής Προγραμματισμός
Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών Java
SÔntomec plhroforðec gia to glpsol (glpk)
SÔntomec plhroforðec gia to glpsol (glpk) gpol@di.uoa.gr Genikˆ gia to GLPK kai to glpsol Το GLPK (GNU Linear Programming Kit) είναι μια βιβλιοθήκη συναρτήσεων για τη γλώσσα C/C++ η οποία χρησιμοποιείται
TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ
Μάθημα 7 - Υποπρογράμματα Εργαστήριο 11 Ο TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ Βασικές Έννοιες: Υποπρόγραμμα, Ανάλυση προβλήματος, top down σχεδίαση, Συνάρτηση, Διαδικασία, Παράμετρος, Κλήση συνάρτησης, Μετάβαση
Γραµµικός Προγραµµατισµός (ΓΠ)
Γραµµικός Προγραµµατισµός (ΓΠ) Περίληψη Επίλυση δυσδιάστατων προβληµάτων Η µέθοδος simplex Τυπική µορφή Ακέραιος Προγραµµατισµός Προγραµµατισµός Παραγωγής Προϊόν Προϊόν 2 Παραγωγική Δυνατότητα Μηχ. 4 Μηχ.
Εισαγωγή στο Γραμμικό Προγραμματισμό
Τμήμα Μηχανικών Πληροφορικής ΤΕ 2016-2017 Εισαγωγή στο Γραμμικό Προγραμματισμό Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 15/10/2016 1 Παραδείγματα Που στοχεύει ο Γραμμικός Προγραμματισμός;
Πληροφοριακά Συστήματα Διοίκησης. Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού
Πληροφοριακά Συστήματα Διοίκησης Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού Σημασία μοντέλου Το μοντέλο δημιουργεί μια λογική δομή μέσω της οποίας αποκτούμε μια χρήσιμη άποψη
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 Αριθμητική στο δυαδικό σύστημα (γενικά) Συμπληρωματικά για δυαδικό σύστημα Η πρόσθεση στηρίζεται στους κανόνες: 0 + 0 = 0, 0 + 1 = 1, 1
Εισαγωγή στο Γραμμικό Προγραμματισμό
Τμήμα Μηχανικών Πληροφορικής ΤΕ 2017-2018 Εισαγωγή στο Γραμμικό Προγραμματισμό Φουτσιτζή Γεωργία-Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 15/10/2016 1 Περιεχόμενα Γραμμικός
ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Γ.Π.).) (LINEAR PROGRAMMING)
ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Γ.Π.).) (LINEAR PROGRAMMING) Δρ. Βασιλική Καζάνα Αναπλ. Καθηγήτρια ΤΕΙ Καβάλας, Τμήμα Δασοπονίας & Διαχείρισης Φυσικού Περιβάλλοντος Δράμας Εργαστήριο Δασικής Διαχειριστικής
ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python
ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής
// MATHIMA 2, // s.boot; s.makewindow.boot; // boot server!
// ------ MATHIMA 2, 07.03.12 ------ // s.boot; s.makewindow.boot; // boot server! /* Αυτά θα τα δούμε αργότερα, απλώς είπα να τα συμπεριλάβω από τώρα: Server.local.options.blockSize = 16; Server.local.options.sampleRate
Γραμμικός Προγραμματισμός και Βελτιστοποίηση (Εργαστήριο 2)
Τμήμα Μηχανικών Πληροφορικής Γραμμικός Προγραμματισμός και Βελτιστοποίηση (Εργαστήριο 2) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Μάρτιος 2015 Δρ. Δημήτρης Βαρσάμης Γραμμικός Προγραμματισμός (E 1) Μάρτιος
FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017
FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2017 Μ4. Συναρτήσεις, Υπορουτίνες, Ενότητες - Ασκήσεις Γεώργιος Παπαλάμπρου Επικ. Καθηγητής ΕΜΠ Εργαστήριο Ναυτικής Μηχανολογίας george.papalambrou@lme.ntua.gr
ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor
ΕισαγωγήστουςΗ/Υ PHP Hypertext Preprocessor ΤιείναιηPHP; PHP είναιµία server-based scripting language σχεδιασµένη ειδικά για το web. Σε µία html σελίδα µπορούµε να ενσωµατώσουµε php κώδικα που εκτελείται
Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript
Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β.1 Τύποι Δεδομένων Όλες οι γλώσσες προγραμματισμού (πρέπει να) υποστηρίζουν πέντε (5) πρωταρχικούς τύπους δεδομένων: char (character) int (integer)
ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ
ii ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ 1. Εισαγωγή - Βασικές έννοιες....1 1.1 Εσωτερική παράσταση δεδομένων....2 1.1.1 Παράσταση θέσης....3 1.1.2 Μετατροπές μεταξύ συστημάτων διαφορετικών βάσεων....5 1.1.3 Οι αριθμητικές
Εφαρμογές Επιχειρησιακής Έρευνας. Δρ. Γεώργιος Κ.Δ. Σαχαρίδης
Εφαρμογές Επιχειρησιακής Έρευνας Δρ. Γεώργιος Κ.Δ. Σαχαρίδης 1 Outline Introduction to mathematical programming Introduction to scheduling Flow shop optimization Scheduling of crude oil Decomposition techniques
Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος
Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος 2012-13 Κων/νος Φλώρος Απλοί τύποι δεδομένων Οι τύποι δεδομένων προσδιορίζουν τον τρόπο παράστασης των
Α. unsigned int Β. double. Γ. int. unsigned char x = 1; x = x + x ; x = x * x ; x = x ^ x ; printf("%u\n", x); Β. unsigned char
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εξετάσεις Β Περιόδου 2015 (8/9/2015) ΟΝΟΜΑΤΕΠΩΝΥΜΟ:................................................................................ Α.Μ.:...............................................
Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)
Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL )Βασικά στοιχεία Αναγνωριστικά (Identifiers) Τα αναγνωριστικά είναι ονόματα με τα οποία μπορούμε να αναφερόμαστε σε αποθηκευμένες
ΗΥ-150. Προγραμματισμός
ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει
Ακέραιος Γραμμικός Προγραμματισμός
Τμήμα Μηχανικών Πληροφορικής ΤΕ 2017-2018 Ακέραιος Γραμμικός Προγραμματισμός Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 12/01/2017 1 Ακέραιος Γραμμικός Προγραμματισμός Όταν για
Ακέραιος Γραμμικός Προγραμματισμός
Τμήμα Μηχανικών Πληροφορικής ΤΕ 2016-2017 Ακέραιος Γραμμικός Προγραμματισμός Γκόγκος Χρήστος ΤΕΙ Ηπείρου Επιχειρησιακή Έρευνα τελευταία ενημέρωση: 12/01/2017 1 Ακέραιος Γραμμικός Προγραμματισμός Όταν για
ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΚΕΦΑΛΑΙΟ 1
ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ ΚΕΦΑΛΑΙΟ 1 1 Βελτιστοποίηση Στην προσπάθεια αντιμετώπισης και επίλυσης των προβλημάτων που προκύπτουν στην πράξη, αναπτύσσουμε μαθηματικά μοντέλα,
Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python
Εισαγωγή στην Επιστήμη Υπολογιστών Εισαγωγή στην Python Python scripts Ένα πρόγραμμα στην Python (συχνά αποκαλείται script) αποτελείται από μία ακολουθία ορισμών και εντολών. H ακολουθία των ορισμών και
ΗΥ-150. Προγραμματισμός
ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει
Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Αριθμητική Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Δεύτερο Πρόγραμμα 1 / * Second Simple Program : add 2 numbers * / 2
Pascal, απλοί τύποι, τελεστές και εκφράσεις
Pascal, απλοί τύποι, τελεστές και εκφράσεις 15 Νοεμβρίου 2011 1 Γενικά Στην standard Pascal ορίζονται τέσσερις βασικοί τύποι μεταβλητών: integer: Παριστάνει ακέραιους αριθμούς από το -32768 μέχρι και το
Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών
Κεφάλαιο 7: Υποπρογράμματα Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Ορισμός Αφαίρεση με χρήση υποπρογραμμάτων (subprogram abstraction) είναι η αντιστοίχιση ενός συνόλου εισόδων σε ένα σύνολο εξόδων
Case 10: Ανάλυση Νεκρού Σημείου (Break Even Analysis) με περιορισμούς ΣΕΝΑΡΙΟ
Case 10: Ανάλυση Νεκρού Σημείου (Break Even Analysis) με περιορισμούς ΣΕΝΑΡΙΟ Η «OutBoard Motors Co» παράγει τέσσερα διαφορετικά είδη εξωλέμβιων (προϊόντα 1 4) Ο γενικός διευθυντής κ. Σχοινάς, ενδιαφέρεται
Εισαγωγή στην πληροφορική
Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Εισαγωγή στην πληροφορική Βασίλειος Βεσκούκης Δρ. Ηλεκτρολόγος Μηχανικός & Μηχανικός Υπολογιστών ΕΜΠ v.vescoukis@cs.ntua.gr Παραδείγματα
Υπολογισμός - Εντολές Επανάληψης
Προγραμματισμός Η/Υ Ι Υπολογισμός - Εντολές Επανάληψης ΕΛΕΥΘΕΡΙΟΣ ΚΟΣΜΑΣ ΕΑΡΙΝΟ ΕΞΑΜΗΝΟ 2018-2019 ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε. 1 Περίληψη Σήμερα... θα συνεχίσουμε τη συζήτησή μας για τα βασικά στοιχεία
Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 3: Προγραμματισμός σε JAVA I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Στοιχειώδης Προγραμματισμός - Προγραμματισμός με Συνθήκες - Προγραμματισμός με Βρόγχους
Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις
Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Μεταβλητές- Τύποι- Τελεστές
Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Μεταβλητές- Τύποι- Τελεστές Μεταβλητές 2 Δήλωση μεταβλητών Η δήλωση (declaration) πληροφορεί το μεταγλωττιστή για το όνομα και
Κεφάλαιο 7: Υπορουτίνες
Κεφάλαιο 7: Υπορουτίνες Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Ορισμός Αφαίρεση με χρήση υπορουτινών (subroutine abstraction) είναι η αντιστοίχιση ενός συνόλου εισόδων σε ένα σύνολο εξόδων που μπορεί
Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) 133 244 355 a= b= c= 3 read(d,e) 166 277 3888
ΕΡΩΤΗΣΕΙΣ 1. Να αναφέρετε μερικά από τα ιδιαίτερα χαρακτηριστικά της Pascal. 2. Ποιο είναι το αλφάβητο της Pascal; 3. Ποια είναι τα ονόματα-ταυτότητες και σε τι χρησιμεύουν; 4. Σε τι χρησιμεύει το συντακτικό
Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης
Εργαστήριο 6 Εντολές Επανάληψης Η δομή Επιλογής στη PASCAL H δομή Επανάληψης στη PASCAL. Ρεύμα Εισόδου / Εξόδου.. Ρεύμα Εισόδου / Εξόδου. To πρόγραμμα γραφικών gnuplot. Γραφικά στη PASCAL. Σκοπός 6.1 ΕΠΙΔΙΩΞΗ
ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β.
ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β. Καβακλή Χειμερινό Εξάμηνο 2001 1 Σύνολο χαρακτήρων της Pascal Για
Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή
Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή Δημιουργία Νέου αρχείου Από το μενού προγραμμάτων ανοίγετε το DEV C++ Επιλέγετε File-> New-> Source File (συντόμευση πληκτρολογίου Ctrl+N)
A2. Να γράψετε για κάθε περίπτωση τον αριθμό της πρότασης και δίπλα το γράμμα που δίνει τη σωστή επιλογή.
ΜΑΘΗΜΑ / ΤΑΞΗ : ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ/Γ' ΕΠΑ.Λ. ΗΜΕΡΟΜΗΝΙΑ: 17-1-2016 ΕΠΙΜΕΛΕΙΑ ΔΙΑΓΩΝΙΣΜΑΤΟΣ: Ι.ΜΙΧΑΛΕΑΚΟΣ-Χ.ΠΑΠΠΑ-Α.ΚΑΤΡΑΚΗ ΘΕΜΑ Α Α1. Να χαρακτηρίσετε τις προτάσεις που ακολουθούν, γράφοντας δίπλα
3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις
3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα
ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL
8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to
Computing. Νοέμβριος Έκδοση 1.0
Computing Νοέμβριος 2017 Έκδοση 1.0 Ενότητα Computing Αυτή η ενότητα παραθέτει τις βασικές έννοιες και δεξιότητες που σχετίζονται με την ικανότητα χρήσης υπολογιστικής σκέψης (computational thinking) και
Pascal. 15 Νοεμβρίου 2011
Pascal 15 Νοεμβρίου 011 1 Procedures σε Pascal Στην Pascal μπορούμε να ορίσουμε διαδικασίες (procedures). Αυτές είναι ομάδες εντολών οι οποίες έχουν ένα όνομα. Γράφοντας το όνομα μιας διαδικασίας μπορούμε
Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java
Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java Δρ. Απόστολος Γκάμας Λέκτορας (407/80) gkamas@uop.gr Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου Διαφάνεια 1 Εισαγωγή
Γραφικά υπολογιστών Εργαστήριο 4 Εισαγωγή στις λίστες
Γραφικά υπολογιστών Εργαστήριο 4 Εισαγωγή στις λίστες Σκοπός της 3ης άσκησης είναι να μάθουμε να φτιάχνουμε και να προσπελαύνουμε λίστες, να δούμε τι διαφορά έχουν από τα tuples και επίσης πώς μπορούμε
ΑΚΕΡΑΙΟΣ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
ΑΚΕΡΑΙΟΣ ΓΡΑΜΜΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ολοκληρωμένη μαθηματική τεχνική βελτιστοποίησης Ευρύτατο φάσμα εφαρμογών Εισαγωγή ακέραιων/λογικών/βοηθητικών μεταβλητών Δυνατότητα γραμμικοποίησης με 0-1 μεταβλητές
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το αντικείμενο input
Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:
Εργαστήριο Java Διδάσκουσα: Πρέντζα Ανδριάνα aprentza@unipi.gr Εργαστηριακοί Συνεργάτες: Γεωργιοπούλου Ρούλα Λύβας Χρήστος roulageorio@ssl-unipi.gr clyvas@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών
Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2017-2018 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)
ΠΩΣ ΝΑ ΟΡΙΣΕΤΕ ΚΑΙ ΝΑ ΕΠΙΛΥΣΕΤΕ ΕΝΑ ΠΡΟΓΡΑΜΜΑ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΤΟΝ SOLVER ΤΟΥ EXCEL
ΠΩΣ ΝΑ ΟΡΙΣΕΤΕ ΚΑΙ ΝΑ ΕΠΙΛΥΣΕΤΕ ΕΝΑ ΠΡΟΓΡΑΜΜΑ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΜΕ ΤΟΝ SOLVER ΤΟΥ EXCEL 1. Στο Tools menu, click Solver. 2. Εάν η επιλογή Solver δεν είναι διαθέσιµη στο Tools menu, πρέπει να το
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων
Ο ΗΓΙΕΣ ΓΙΑ ΤΟ ΠΡΟΓΡΑΜΜΑ LINDO ΚΑΙ ΤΗΝ ΕΠΙΛΥΣΗ ΠΡΟΒΛΗΜΑΤΩΝ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
Ο ΗΓΙΕΣ ΓΙΑ ΤΟ ΠΡΟΓΡΑΜΜΑ LINDO ΚΑΙ ΤΗΝ ΕΠΙΛΥΣΗ ΠΡΟΒΛΗΜΑΤΩΝ ΓΡΑΜΜΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Το LINDO (Linear Interactive and Discrete Optimizer) είναι ένα πολύ γνωστό λογισµικό για την επίλυση προβληµάτων γραµµικού,
Υπολογιστικά & Διακριτά Μαθηματικά
Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 5: Αναδρομικές σχέσεις - Υπολογισμός Αθροισμάτων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για
Λογισµικό (Software SW) Γλώσσες
Λογισµικό (Software SW) Γλώσσες Προγραµµατισµού Οι γενιές των γλωσσών προγραµµατισµού Προβλήµατα που επιλύονται σε ένα περιβάλλον στο οποίο ο άνθρωπος πρέπει να προσαρµόζεται στα χαρακτηριστικά της µηχανής
Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13
Σχολικό Βιβλίο - Κεφάλαιο 7 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕ PASCAL ΠΑΡΟΥΣΙΑΣΗ 13 ΙΣΤΟΡΙΚΑ Παρουσιάστηκε το 1970 από το Niklaus Wirth Προγενέστερη γλώσσα ήταν η Algol 60 Είναι δομημένη γλώσσα προγραμματισμού υψηλού
Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος Θέμα 1 Δίνονται τα παρακάτω τμήματα αλγορίθμου Α. βαλίτσα Αληθής εισιτήριο Αληθής ταξίδι βαλίτσα και εισιτήριο Τι τιμή θα έχει η λογική μεταβλητή
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ 032 2 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ Ενδιάμεση Εξέταση Ημερομηνία:08/03/10 Διάρκεια: 13:30 15:00 Διδάσκων: Παύλος Αντωνίου Ονοματεπώνυμο: Αριθμός Ταυτότητας: Η εξέταση
Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών: Εργαστηριακή Άσκηση
Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών: Εργαστηριακή Άσκηση 2011-2012 Γιάννης Γαροφαλάκης, Καθηγητής Αθανάσιος Ν.Νικολακόπουλος, Υποψήφιος Διδάκτορας 28 Μαρτίου 2012 Περίληψη Σκοπός της παρούσας
Συστήματα Επιχειρηματικής Ευφυίας. Το πρόβλημα Nurse rostering Ενδεικτική επίλυση με αλγόριθμο Variable Neighborhood Search (VNS)
Συστήματα Επιχειρηματικής Ευφυίας Το πρόβλημα Nurse rostering Ενδεικτική επίλυση με αλγόριθμο Variable Neighborhood Search (VNS) Έβδομη Διάλεξη Περιεχόμενα (1) Συνοπτική παρουσίαση του προβλήματος Nurse
Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL)
Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) Pascal- Εισαγωγή Η έννοια του προγράμματος Η επίλυση ενός προβλήματος με τον υπολογιστή περιλαμβάνει, όπως έχει ήδη αναφερθεί, τρία εξίσου
Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής
Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2 Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής Α2. Ο αλγόριθμος αποτελείται από ένα πεπερασμένο σύνολο εντολών Α3. Ο αλγόριθμος
Λογικός τύπος Τελεστές σύγκρισης Λογικοί τελεστές Εντολές επιλογής Εμβέλεια Μαθηματικές συναρτήσεις Μιγαδικός τύπος ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ
ΔΕΥΤΕΡΗ ΔΙΑΛΕΞΗ Λογικός τύπος ( ) Ο τύπος είναι κατάλληλoς για την αναπαράσταση ποσοτήτων που μπορούν να πάρουν δύο μόνο τιμές (π.χ. ναι/όχι, αληθές/ψευδές, ). Τιμές ή Δήλωση Εκχώρηση Ισοδυναμία με ακέραιους
Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός 1 Κατακερματισμός Τι αποθηκεύουμε στους κάδους; Στα παραδείγματα δείχνουμε μόνο την τιμή του πεδίου κατακερματισμού Την ίδια την εγγραφή (ως τρόπος οργάνωσης αρχείου) μέγεθος
Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΟ ΚΕΝΤΡΟ Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού Μάθημα 2ο Aντώνης Σπυρόπουλος v2_061015 Οροι που
Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Κατακερματισμός Τι αποθηκεύουμε στους κάδους; Στα παραδείγματα δείχνουμε μόνο την τιμή του πεδίου κατακερματισμού Την ίδια την εγγραφή
FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016
FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 M7 Δομές δεδομένων: Πίνακες Δρ. Γεώργιος Παπαλάμπρου Επικ. Καθηγητής ΕΜΠ Εργαστήριο Ναυτικής Μηχανολογίας george.papalambrou@lme.ntua.gr ΕΜΠ/ΣΝΜΜ
Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client
ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις
Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )
Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ. 25 48) Τι είναι αλγόριθμος; Γ ΛΥΚΕΙΟΥ Αλγόριθμος είναι μία πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρονικό διάστημα,
Ενότητα 1: «Εισαγωγή στην Αλγοριθμική και τον Προγραμματισμό. Απλές ασκήσεις με γλώσσα Pascal»
Ενισχυτική διδασκαλία διδακτικές ενότητες αλγοριθμικής και εισαγωγής στον προγραμματισμό Ενότητα 1: «Εισαγωγή στην Αλγοριθμική και τον Προγραμματισμό. Απλές ασκήσεις με γλώσσα Pascal» διδάσκων: χρήστος
Πιο συγκεκριμένα, η χρήση του MATLAB προσφέρει τα ακόλουθα πλεονεκτήματα.
i Π Ρ Ο Λ Ο Γ Ο Σ Το βιβλίο αυτό αποτελεί μια εισαγωγή στα βασικά προβλήματα των αριθμητικών μεθόδων της υπολογιστικής γραμμικής άλγεβρας (computational linear algebra) και της αριθμητικής ανάλυσης (numerical
2. β. Συνθήκη ή επιλογή. 4. δ. Υποπρόγραμμα. 5. ε. ιαδικασία εισόδου ή εξόδου
ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ ΠΑΝΕΛΛHNIΕΣ ΕΞΕΤΑΣΕΙΣ HMEΡΗΣΙΩΝ ΚΑΙ ΕΣΠΕΡΙΝΩΝ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α A ) ΚΑΙ ΜΑΘΗΜΑΤΩΝ ΕΙ ΙΚΟΤΗΤΑΣ ΕΠΑΓΓΕΛΜΑΤΙΚΩΝ ΛΥΚΕΙΩΝ (ΟΜΑ Α Β ) ΣΑΒΒΑΤΟ 28 ΜΑΪΟΥ 2011 ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΟΜΗΜΕΝΟΣ
Γ7.5 Αλγόριθμοι Αναζήτησης. Γ Λυκείου Κατεύθυνσης
Γ7.5 Αλγόριθμοι Αναζήτησης Γ Λυκείου Κατεύθυνσης Εισαγωγή Αλγόριθμος αναζήτησης θεωρείται ένας αλγόριθμος, ο οποίος προσπαθεί να εντοπίσει ένα στοιχείο με συγκεκριμένες ιδιότητες, μέσα σε μία συλλογή από
Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Συναρτήσεις Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Συναρτήσεις Ως τώρα γράφαμε όλα τα προγράμματα μας μέσα στην main..1
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων
ΕΠΑΛ ΧΡΥΣΟΥΠΟΛΗΣ Γ Πληροφορική- 2015-2016 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων 1 Εισαγωγή Η εντολή Στο 4 ο κεφάλαιο γνωρίσαµε την δοµή πολλαπλής επιλογής στην οποία
ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ. Κεφάλαιο 3 Μορφοποίηση Προβλημάτων Ακέραιου Προγραμματισμού
ΑΚΕΡΑΙΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ & ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Κεφάλαιο 3 Μορφοποίηση Προβλημάτων Ακέραιου Προγραμματισμού 1 Σχέση γραμμικού και ακέραιου προγραμματισμού Ενα πρόβλημα ακέραιου προγραμματισμού είναι
Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr
Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην
Επιχειρησιακή Έρευνα I
Επιχειρησιακή Έρευνα I Operations/Operational Research (OR) Κωστής Μαμάσης Παρασκευή 09:00 12:00 Σημειώσεις των Α. Platis, K. Mamasis Περιεχόμενα EE 1&2 Εισαγωγή Μαθηματικός Προγραμματισμός - Γραμμικός
Ενότητα 5: «Εισαγωγή στον Προγραμματισμό. Απλές ασκήσεις με γλώσσα C»
Ενισχυτική διδασκαλία διδακτικές ενότητες αλγοριθμικής και εισαγωγής στον προγραμματισμό Ενότητα 5: «Εισαγωγή στον Προγραμματισμό. Απλές ασκήσεις με γλώσσα C» διδάσκων: χρήστος σκουρλάς, cskourlas@teiath.gr
Επιχειρησιακή Έρευνα I
Επιχειρησιακή Έρευνα I Κωστής Μαμάσης Παρασκευή 09:00 12:00 Σημειώσεις των Α. Platis, K. Mamasis Περιεχόμενα 1. Εισαγωγή 2. Γραμμικός Προγραμματισμός 1. Μοντελοποίηση 2. Μέθοδος Simplex 1. Αλγόριθμός Simplex
Προβλήματα, αλγόριθμοι, ψευδοκώδικας
Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι
ΑΦAΙΡΕΤΙΚΟΣ (ή ΑΦΗΡΗΜΕΝΟΣ) ΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ (ΑΤΔ) (Abstract Data Type-ADT) - σύνολο δεδομένων (data, objects) - σύνολο πράξεων στα δεδομένα
Τύπος Δεδομένων: ΑΦAΙΡΕΤΙΚΟΣ (ή ΑΦΗΡΗΜΕΝΟΣ) ΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ (ΑΤΔ) (Abstract Data Type-ADT) - σύνολο δεδομένων (data, objects) - σύνολο πράξεων στα δεδομένα - Ένας ΑΤΔ είναι ένα μαθηματικό μοντέλο (οντότητα)
Βελτιστοποίηση κατανομής πόρων συντήρησης οδοστρωμάτων Πανεπιστήμιο Πατρών - Πολυτεχνική Σχολή Τμήμα Πολιτικών Μηχανικών
Βελτιστοποίηση κατανομής πόρων συντήρησης οδοστρωμάτων Πανεπιστήμιο Πατρών - Πολυτεχνική Σχολή Τμήμα Πολιτικών Μηχανικών Πάτρα 17 - Μαΐου - 2017 Παναγιώτης Τσίκας Σκοπός του προβλήματος Σκοπός του προβλήματος,
4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for)
4. ΒΡΟΧΟΙ ΕΠΑΝΑΛΗΨΗΣ (Α' μέρος: for) 4.1 Μετρητές Ένας μετρητής (counter) είναι μία μεταβλητή η οποία ξεκινά με μία αρχική τιμή και αυξάνεται κατά ένα κάθε φορά που εκτελείται. Ο αλγόριθμος για έναν μετρητή
Διάλεξη 2η: Αλγόριθμοι και Προγράμματα
Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Αλγόριθμοι και Προγράμματα
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ 1. Ποιες από τις παρακάτω εντολές είναι σωστές; α) if A + B
ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL
ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ PASCAL ΓΕΝΙΚΗ ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ Program Ονομα_προγραμματος; «πρόγραμμα» Πρόγραμμα 1 Program Lesson1_Program1; Write('Hello World!!!'); {σχόλια} Επεξήγηση Προγράμματος Program Lesson1_Program1;
Γιάννης Σαμωνάκης. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP)
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP) Γιάννης Σαμωνάκης 1 Περιεχόμενα Τι είναι η PHP Που μπορεί να χρησιμοποιηθεί
Σχεδιασμός επέκτασης του συστήματος ηλεκτροπαραγωγής με τη χρήση Πολυκριτηριακού Γραμμικού Προγραμματισμού
3ο Πανελλήνιο Επιστημονικό Συνέδριο Χημικής Μηχανικής Αθήνα,, IούνιοςI 200 Σχεδιασμός επέκτασης του συστήματος ηλεκτροπαραγωγής με τη χρήση Πολυκριτηριακού Γραμμικού Προγραμματισμού Γιώργος Μαυρωτάς Δανάη
2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων
2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει
ΚΕΦΑΛΑΙΟ 10 ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ (ή εντολές Ελέγχου και Επιλογής ή εντολές Επιλογής και Απόφασης)
ΚΕΦΑΛΑΙΟ 10 ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ (ή εντολές Ελέγχου και Επιλογής ή εντολές Επιλογής και Απόφασης) Τι είναι οι εντολές Ελέγχου και Επιλογής στην Pascal; Ποιες είναι οι εντολές Ελέγχου και Επιλογής στην Pascal;
Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2018-2019 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)
Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών
Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Ενότητα 7: Υπορουτίνες Καθ. Γιάννης Γαροφαλάκης Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ και Πληροφορικής Ορισμός Αφαίρεση με χρήση υπορουτινών (subroutine abstraction)
Ανάλυση αλγορίθμων. Χρόνος εκτέλεσης: Αναμενόμενη περίπτωση. - απαιτεί γνώση της κατανομής εισόδου
Ανάλυση αλγορίθμων Παράμετροι απόδοσης ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι πόροι, π.χ. μνήμη, επικοινωνία (π.χ. σε κατανεμημένα συστήματα) Προσπάθεια υλοποίησης Ανάλυση της απόδοσης Θεωρητική
Προγραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16
Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.
ΤΡΙΤΗ ΔΙΑΛΕΞΗ Αναφορά (1/2) Μπορούμε να ορίσουμε μια άλλη, ισοδύναμη αλλά ίσως πιο σύντομη, ονομασία για ποσότητα (μεταβλητή, σταθερή, συνάρτηση, κλπ.): Σύνταξη τύπος όνομαα; τύπος όνομαβ{όνομαα}; όνομαβ
11/23/2014. Στόχοι. Λογισμικό Υπολογιστή
ονάδα Δικτύων και Επικοινωνιών ΗΥ Τομέας Πληροφορικής, αθηματικών και Στατιστικής ΓΕΩΠΟΙΚΟ ΠΑΕΠΙΣΤΗΙΟ ΑΘΗΩ Εισαγωγή στην Επιστήμη των ΗΥ άθημα-4 url: http://openeclass.aua.gr (AOA0) Λογισμικό Υπολογιστή
ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΗΣ
Το αναλυτικό πρόγραμμα στο οποίο βασίζεται η εξέταση είναι το αναλυτικό πρόγραμμα του Μαθήματος Κατεύθυνσης Πληροφορική Επιστήμη Η.Υ της Γ Ενιαίου Λυκείου Γενικός Σκοπός Το μάθημα κατεύθυνσης της στη Γ'