ΕΠΛ Φροντιστήριο 3
|
|
- Ἁνανίας Ράγκος
- 6 χρόνια πριν
- Προβολές:
Transcript
1 ΕΠΛ Φροντιστήριο 3
2 Ας δημιουργήσουμε τη δική μας Βιβλιοθήκη μεθόδων για το σχηματισμό κύκλων διαφόρων μορφών CircleDefs
3 public class CircleDefs void line_circle (double x, double y, double r, double density) void line_circle_with_gaps (double x, double y, double r, double density, double [] gaps) void radial_circle (double x, double y, double r, double density) void radial_circle_with_gaps (double x, double y, double r, double density, double [] gaps) void filled_circle (double x, double y, double r, double density) void filled_circle_with_gaps (double x, double y, double r, double density, double [] gaps)
4 public class CircleDefs void spider_web (double x, double y, double r, double density) void rainbow_circle (double x, double y, double r, double sa) void pie_chart (double x, double y, double r, double [] angles) void pie_chart_with_legend (double x, double y, double r, double [] angles, String [] ls) void multi_ring_circle (double x, double y, double r, int n) void dandelion (double x, double y, double r, double sa) void dots (int N, double r)
5 import java.awt.color; public class CircleDefs{ /* Βοηθητικές Μέθοδοι */ /* Η get_col επιστρέφει ένα τυχαίο χρώμα */ public static Color get_col(){ int r = (int) (Math.random() * 256.0); int g = (int) (Math.random() * 256.0); int b = (int) (Math.random() * 256.0); return new Color(r,g,b); /* Η included_in_gap ελέγχει κατά πόσο το angle περιλαμβάνεται σε κάποιο από τα διαστήματα (sectors) του angs που πρέπει να είναι κενά */ public static boolean included_in_gap(double angle, double [] angs){ for (int i= 0; i < angs.length - 1; i= i+2) if (angle >= angs[i] && angle <= angs[i+1]) return true; return false;
6 public static void line_circle (double x, double y, double r, double density){ double angle = 0.0; double x1 = x + r; double y1 = y; double x2, y2; while (angle <= 360.0){ x2 = r * Math.cos(Math.toRadians(angle)) + x; y2 = r * Math.sin(Math.toRadians(angle)) + y; StdDraw.line(x1, y1, x2, y2); x1 = x2; y1 = y2; angle = angle + density; Σημείωση: Ο κύκλος κλείνει επειδή η γωνία (angle) αρχίζει από την τιμή 0.0 και τελειώνει με την τιμή με προσαυξήσεις density, θεωρώντας ότι το είναι πολλαπλάσιο του density
7 public class Polygon { /* Αξιοποιώντας την line_circle για το σχηματισμό κανονικών πολυγώνων */ public static void draw_polygon (double sides, double x, double y, double r){ double density = / sides; CircleDefs.line_circle(x,y,r,density); public static void main (String [] args){ StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.BLACK); StdDraw.setPenColor(Color.WHITE); StdDraw.setPenRadius(0.005); draw_polygon(3.0, 40.0, 30.0, 30.0); /* τρίγωνο */ StdDraw.setPenRadius(0.002); draw_polygon(8.0, 75.0, 75.0, 20.0); /* οκτάγωνο */ StdDraw.setPenRadius(0.001); draw_polygon(360.0, 25.0, 80.0, 10.0); /* πολύγωνο με 360 πλευρές κύκλος δηλαδή */
8
9 r (x, y)
10 StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.setPenRadius(0.005); StdDraw.clear(Color.BLACK); StdDraw.setPenColor(Color.WHITE); /* Ισοδύναμες εντολές για το τρίγωνο και το οκτάγωνο */ CircleDefs.line_circle(40.0, 30.0, 30.0, 120.0); /* τρίγωνο */ CircleDefs.line_circle(75.0, 75.0, 20.0, 45.0); /* οκτάγωνο */ /* Τι σχηματίζεται με την πιο κάτω εντολή; */ CircleDefs.line_circle(25.0, 80.0, 10.0, 28.0);
11
12 /* Για να μην υπάρχει το κενό όταν το 360 δεν διαιρείται ακριβώς με την προσαύξηση κάνουμε μια μικρή τροποποίηση στον ορισμό της line_circle */ public static void line_circle (double x, double y, double r, double density){ double angle = 0.0; double x1 = x + r; double y1 = y; double x2, y2; while (angle <= density){ x2 = r * Math.cos(Math.toRadians(angle)) + x; y2 = r * Math.sin(Math.toRadians(angle)) + y; StdDraw.line(x1, y1, x2, y2); x1 = x2; y1 = y2; angle = angle + density; Σημείωση: Ο κύκλος τώρα κλείνει για κάθε περίπτωση. Όσες κλάσεις/μέθοδοι χρησιμοποιούν την line_circle (της CircleDefs) κληρονομούν το βελτιωμένο ορισμό, χωρίς οι ίδιες να πρέπει να μεταγλωττιστούν εκ νέου!
13 /* Συνεχίζοντας με τους ορισμούς των μεθόδων της CircleDefs */ public static void line_circle_with_gaps (double x, double y, double r, double density, double [] gaps){ double angle = 0.0; double x1 = x + r; double y1 = y; double x2, y2; while (angle <= 360.0){ /* Προσοχή: το angle περιορίζεται μέχρι το 360 */ x2 = r * Math.cos(Math.toRadians(angle)) + x; y2 = r * Math.sin(Math.toRadians(angle)) + y; if (!included_in_gap(angle, gaps)) StdDraw.line(x1, y1, x2, y2); x1 = x2; y1 = y2; angle = angle + density;
14
15 StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.BLACK); StdDraw.setPenColor(Color.WHITE); double gaps [] = {0.0, 10.0, 45.0, 55.0, 90.0, 100.0, 135.0, 145.0, 180.0, 190.0, 225.0, 235.0, 270.0, 280.0, 315.0, 325.0; double gs [] = {0.0, 20.0, 95.0, 125.0, 355.0, 360.0; double gss [] = {0.0, 90.0, 180.0, 270.0; StdDraw.setPenRadius(0.007); CircleDefs.line_circle_with_gaps(40.0, 30.0, 15.0, 1.0, gs); CircleDefs.line_circle_with_gaps(75.0, 75.0, 20.0, 1.0, gaps); CircleDefs.line_circle_with_gaps(25.0, 80.0, 10.0, 1.0, gss); Σημείωση: Για να λειτουργήσει ορθά η μέθοδος: (α) η ακολουθία των γωνιών που δίνεται στον πίνακα όρισμα, πρέπει να είναι ζυγού μεγέθους, και (β) στην κάθε δυάδα γωνιών (α1, α2) η α1 < α2, και α Σε περίπτωση λάθους, η βοηθητική μέθοδος included_in_gap αποτρέπει τον πρόωρο τερματισμό του προγράμματος, αλλά ο κύκλος δεν θα έχει τα ορθά κενά.
16
17
18 public static void radial_circle (double x, double y, double r, double density){ double angle = 0.0; double x2, y2; while (angle <= 360.0){ x2 = r * Math.cos(Math.toRadians(angle)) + x; y2 = r * Math.sin(Math.toRadians(angle)) + y; StdDraw.line(x, y, x2, y2); angle = angle + density; public static void filled_circle (double x, double y, double r, double density){ double eps = density, rad = eps; while (rad <= r){ line_circle(x, y, rad, density * 2.0); rad = rad + eps;
19 StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.BLACK); StdDraw.setPenColor(Color.WHITE); StdDraw.setPenRadius(0.007); CircleDefs.radial_circle(40.0, 30.0, 15.0, 30.0); CircleDefs.radial_circle(75.0, 75.0, 20.0, 15.0); CircleDefs.radial_circle(25.0, 80.0, 10.0, 90.0); CircleDefs.radial_circle(80.0, 40.0, 10.0, 1.0);
20
21 StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.BLACK); StdDraw.setPenColor(Color.WHITE); StdDraw.setPenRadius(0.005); CircleDefs.filled_circle(40.0, 30.0, 15.0, 1.5); CircleDefs.filled_circle(75.0, 75.0, 20.0, 5.0); CircleDefs.filled_circle(25.0, 80.0, 10.0, 0.5); CircleDefs.filled_circle(80.0, 40.0, 10.0, 1.0);
22
23 Ας συγκρίνουμε τις υπολογιστικές απαιτήσεις των δύο μεθόδων, radial_circle και filled_circle, θεωρώντας ότι η βασική λειτουργία είναι η StdDraw.line: /* Στα σχόλια αναφέρεται ο αριθμός κλήσεων της StdDraw.line */ StdDraw.clear(Color.BLACK); StdDraw.setPenColor(Color.YELLOW); CircleDefs.radial_circle(30.0, 80.0, 10.0, 1.0); /* 360 */ StdDraw.setPenColor(Color.GREEN); CircleDefs.filled_circle(60.0, 80.0, 10.0, 1.0); /* 1800 */ StdDraw.setPenColor(Color.RED); CircleDefs.filled_circle(60.0, 50.0, 10.0, 0.5); /* 7200 */ StdDraw.setPenColor(Color.YELLOW); CircleDefs.filled_circle(60.0, 20.0, 10.0, 0.25);/* */ Σημείωση: Χρειάζονται 80 φορές περισσότερες κλήσεις της StdDraw.line από την CircleDefs.filled_circle για να έχει συγκρίσιμη συμπεριφορά με την CircleDefs.radial_circle. Αυτό διαφαίνεται ξεκάθαρα από το χρόνο εκτέλεσης των σχετικών κλήσεων των δύο μεθόδων.
24
25 public static void spider_web (double x, double y, double r, double density){ filled_circle(x,y,r,density/2.0); radial_circle(x,y,r,density);
26 import java.awt.color; public class Spider { public static void main (String [] args){ StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.BLACK); StdDraw.setPenColor(Color.WHITE); StdDraw.setPenRadius(0.005); CircleDefs.spider_web(40.0, 30.0, 30.0, 20.0); StdDraw.setPenRadius(0.002); CircleDefs.spider_web(75.0, 75.0, 20.0, 5.0); StdDraw.setPenRadius(0.001); CircleDefs.spider_web(25.0, 80.0, 10.0, 4.0);
27
28 public static void multi_ring_circle(double x, double y, double r, int n){ double rs = r/n; double rad = r, sec = 0.0; Color c = get_col(); StdDraw.setPenColor(c); while (rad > 0.0){ if (sec > rs) { sec = 0.0; c = get_col(); StdDraw.setPenColor(c); line_circle(x,y,rad,0.5); rad = rad - 0.1; sec = sec + 0.1;
29 import java.awt.color; public class MultiRing { public static void main (String [] args){ StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.WHITE); CircleDefs.multi_ring_circle(40.0, 30.0, 30.0, 20); CircleDefs.multi_ring_circle(75.0, 75.0, 20.0, 5); CircleDefs.multi_ring_circle(25.0, 80.0, 10.0, 4);
30
31 public static void rainbow_circle (double x, double y, double r, double sa){ double angle = 0.0, sec_a = 0.0; double x2, y2; Color c = get_col(); StdDraw.setPenColor(c); while (angle <= 360.0){ x2 = r * Math.cos(Math.toRadians(angle)) + x; y2 = r * Math.sin(Math.toRadians(angle)) + y; if (sec_a > sa) { sec_a = 0.0; c = get_col(); StdDraw.setPenColor(c); StdDraw.line(x, y, x2, y2); angle = angle + 0.5; sec_a = sec_a + 0.5;
32 import java.awt.color; public class Rainbow { public static void main (String [] args){ StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.WHITE); CircleDefs.rainbow_circle(40.0, 30.0, 30.0, 20.0); CircleDefs.rainbow_circle(75.0, 75.0, 20.0, 5.0); CircleDefs.rainbow_circle(25.0, 80.0, 10.0, 4.0);
33
34 public static void filled_circle_with_gaps(double x, double y, double r, double density, double [] gaps){ double eps = density, rad = eps; while (rad <= r){ line_circle_with_gaps(x,y,rad, density * 2.0, gaps); rad = rad + eps;
35 import java.awt.color; public class Dans{ public static void main(string[] args){ int N = Integer.parseInt(args[0]); double angs [] = {0.0, 10.0, 45.0, 55.0, 90.0, 100.0, 135.0, 145.0, 180.0, 190.0, 225.0, 235.0, 270.0, 280.0, 315.0, 325.0; Color cs [] = {Color.GREEN, Color.CYAN, Color.RED, Color.BLACK, Color.ORANGE, Color.YELLOW; StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); while (true){ StdDraw.clear(Color.GRAY); for (int i = 0; i <= N; i++){ double x = Math.random() * 50.0; double y = Math.random() * 50.0; double r = Math.random() * 15; int c = (int) (Math.random() * 6.0); StdDraw.setPenColor(cs[c]); CircleDefs.filled_circle_with_gaps(x,y,r, 0.5, angs); StdDraw.show(50);
36
37
38
39 public static void radial_circle_with_gaps (double x, double y, double r, double density, double [] angs){ double angle = 0.0; double x2, y2; while (angle <= 360.0){ x2 = r * Math.cos(Math.toRadians(angle)) + x; y2 = r * Math.sin(Math.toRadians(angle)) + y; if (!included_in_gap(angle, angs)) StdDraw.line(x, y, x2, y2); angle = angle + density; Ας τρέξουμε το ίδιο πρόγραμμα όπως και προηγουμένως (κλάση Dan) αλλά τώρα να καλείται η CircleDefs.radial_circle_with_gaps(..) με τα ίδια ορίσματα
40
41
42 public static void dandelion (double x, double y, double r, double sa){ double angle = 0.0, sec_a = 0.0; double gaps [] = {0.0, 10.0, 45.0, 55.0, 90.0, 100.0, 135.0, 145.0, 180.0, 190.0, 225.0, 235.0, 270.0, 280.0, 315.0, 325.0; double x2, y2; Color c = get_col(); StdDraw.setPenColor(c); while (angle <= 360.0){ x2 = r * Math.cos(Math.toRadians(angle)) + x; y2 = r * Math.sin(Math.toRadians(angle)) + y; if (sec_a > sa) { sec_a = 0.0; c = get_col(); StdDraw.setPenColor(c); if (!included_in_gap(angle, gaps)) StdDraw.line(x, y, x2, y2); angle = angle + 0.5; sec_a = sec_a + 0.5;
43 StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.BLACK); CircleDefs.dandelion(50.0, 50.0, 30.0, 15.0);
44
45 StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.BLACK); CircleDefs.dandelion(50.0, 50.0, 30.0, 45.0);
46
47 import java.awt.color; public class Moving_Dan{ public static void main(string[] args){ StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); while (true) { StdDraw.setPenColor(Color.BLACK); StdDraw.clear(Color.BLACK); CircleDefs.dandelion(50.0, 50.0, 30.0, 15.0); StdDraw.setPenColor(Color.BLACK); StdDraw.filledCircle(50.0, 50.0, 7.0); StdDraw.setPenColor(Color.YELLOW); StdDraw.filledCircle(50.0, 50.0, 4.0); StdDraw.show(50);
48
49 public static void pie_chart (double x, double y, double r, double angs[]){ double angle = 0.0, sec_a = 0.0; for (int i = 0; i < angs.length ; i++) angs[i] = angs[i] * 3.6; double x2, y2; Color c = get_col(); StdDraw.setPenColor(c); int i = 0; while (angle <= && i < angs.length){ x2 = r * Math.cos(Math.toRadians(angle)) + x; y2 = r * Math.sin(Math.toRadians(angle)) + y; if (sec_a > angs[i]) { sec_a = 0.0; c = get_col(); StdDraw.setPenColor(c); i++; StdDraw.line(x, y, x2, y2); angle = angle + 0.5; sec_a = sec_a + 0.5;
50 StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.BLACK); double pie[] = {20.0, 30.0, 10.0, 10.0, 15.0, 5.0, 10.0; CircleDefs.pie_chart(50.0, 50.0, 20.0,pie);
51
52 public static void pie_chart_with_legend (double x, double y, double r, double angs[], String ls[]){ double angle = 0.0, sec_a = 0.0; for (int i = 0; i < angs.length ; i++) angs[i] = angs[i] * 3.6; double x2, y2; double px = x + 1.5*r, py = y * r; Color c = get_col(); StdDraw.setPenColor(c); StdDraw.text(px, py, ls[0]); py = py - 5; int i = 0; while (angle <= && i < angs.length){ x2 = r * Math.cos(Math.toRadians(angle)) + x; y2 = r * Math.sin(Math.toRadians(angle)) + y; if (sec_a > angs[i]) { sec_a = 0.0; c = get_col(); StdDraw.setPenColor(c); i++; StdDraw.text(px, py, ls[i]); py = py -5; StdDraw.line(x, y, x2, y2); angle = angle + 0.5; sec_a = sec_a + 0.5;
53 StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.clear(Color.BLACK); double pie[] = {20.0, 30.0, 10.0, 10.0, 15.0, 5.0, 10.0; String legend[] = {"Item 1", "Item 2", "Item 3", "Item 4", "Item 5", "Item 6", "Item 7"; CircleDefs.pie_chart_with_legend(50.0, 50.0, 20.0,pie, legend);
54
55
56 public static void dots (int N, double r){ for (int i = 1; i <= N; i++){ Color c = get_col(); double x = Math.random() * 100.0; double y = Math.random() * 100.0; double rad = Math.random() * r; StdDraw.setPenColor(c); StdDraw.filledCircle(x,y,rad); StdDraw.setXscale(0.0, 100.0); StdDraw.setYscale(0.0, 100.0); StdDraw.setPenColor(Color.BLACK); CircleDefs.dots(300, 2.0);
57
58 Ως εξάσκηση ορίστε μεθόδους για τη δημιουργία των ακόλουθων σχημάτων αξιοποιώντας τις Βιβλιοθήκες StdDraw και CircleDefs
59
60
61
62
63
64
65
66
67
68
69
70
71
72
ΕΠΛ 131 Φροντιστήριο 2
ΕΠΛ 131 Φροντιστήριο 2 Όπως και για το έμβλημα του Πανεπιστημίου Κύπρου Από πού θα αντλήσουμε τα βασικά δομικά στοιχεία για τη λύση μας; Από τη Βιβλιοθήκη StdDraw, και επίσης θα κατασκευάσουμε και δικές
Διαβάστε περισσότεραI (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.
I (JAVA) Ονοματεπώνυμο: Α. Μ.: + ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην. + 1 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 2/3) 2 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 3/3)
Διαβάστε περισσότεραI (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.
I (JAVA) Ονοματεπώνυμο: Α. Μ.: + ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην. + 1 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 2/3) 2 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 3/3)
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 6/12/07
Πρώτοι αριθμοί ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 6/12/07 Ένας ακέραιος μεγαλύτερος του 1 είναι πρώτος αν έχει ακριβώς δύο διαιρέτες (τη μονάδα και τον εαυτό του). Πρόβλημα: έλεγχος
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το
Διαβάστε περισσότεραΣχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας
ΕΡΓΑΣΙΑ 2 Σχηματίζοντας Γραφικές Παραστάσεις για Ημίτονο και Συνημίτονο και Ελέγχοντας Περιορισμούς σε Συστάδες Καρτών Τόμπολας Εισαγωγή Ημερομηνία Ανάρτησης: 16/02/2017 Ημερομηνία Παράδοσης: 06/03/2017,
Διαβάστε περισσότεραΔοκιμή και Αποσφαλμάτωση Testing and Debugging
Δοκιμή και Αποσφαλμάτωση Testing and Debugging XVI-1 Ο μεταγλωττιστής εντοπίζει τα συντακτικά λάθη ενός προγράμματος. Δεν είναι όμως σε θέση να εντοπίσει λάθη στη λογική του προγράμματος. δεδομένα πρόγραμμα
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το αντικείμενο input
Διαβάστε περισσότεραΕΠΛ131 Αρχές Προγραμματισμού
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ131 Αρχές Προγραμματισμού Ακαδημαϊκό Έτος 2016/17 Χειμερινό Εξάμηνο ΕΝΔΙΑΜΕΣΗ ΕΞΕΤΑΣΗ ΗΜΕΡΟΜΗΝΙΑ: 29 Οκτωβρίου 2016 ΔΙΑΡΚΕΙΑ: 10:00πμ 12:30μμ ΑΙΘΟΥΣΕΣ: Κτήριο
Διαβάστε περισσότεραΚατασκευαστές. Μέθοδοι Κατασκευής (Constructors).
Κατασκευαστές Μέθοδοι Κατασκευής (Constructors). Οι κατασκευαστές (constructors) είναι μέθοδοι που εκτελούνται όταν κατασκευάζεται ένα αντικείμενο. Μια τάξη μπορεί να έχει αρκετούς κατασκευαστές, οι οποίοι
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα ως ορίσματα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αντικείμενα ως ορίσματα Αντικείμενα ως ορίσματα Μπορούμε να περνάμε αντικείμενα ως ορίσματα σε μία μέθοδο όπως οποιαδήποτε άλλη μεταβλητή Οποιαδήποτε κλάση
Διαβάστε περισσότεραΕΠΛ131 Αρχές Προγραμματισμού
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ131 Αρχές Προγραμματισμού Ακαδημαϊκό Έτος 2016/17 Εαρινό Εξάμηνο ΕΝΔΙΑΜΕΣΗ ΕΞΕΤΑΣΗ ΗΜΕΡΟΜΗΝΙΑ: 15 Μαρτίου 2017 ΔΙΑΡΚΕΙΑ: 4:00μμ 6:30μμ ΑΙΘΟΥΣΕΣ: Κτήριο ΧΩΔ01,
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας Στην άσκηση αυτή θα υλοποιήσετε μια κλάση Geometric η οποία διαχειρίζεται μια γεωμετρική ακολουθία ακεραίων
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Στην άσκηση αυτή θα υλοποιήσετε μια κλάση RandomVector η οποία διαχειρίζεται ένα τυχαίο διάνυσμα ακεραίων το οποίο μπορεί να έχει οποιοδήποτε
Διαβάστε περισσότεραΔομές ελέγχου ροής προγράμματος
Δομές ελέγχου ροής προγράμματος Υπάρχουν δύο είδη δομών ελέγχου ροής (control flow): Οι δομές επιλογής και Οι δομές επανάληψης Δομές ελέγχου ροής προγράμματος Είδος δομής Δομές επιλογής Δομή ελέγχου ροής
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07
Ακαδ έτος 2007-2008 ΠΛΗΡΟΦΟΡΙΚΗ Ι Φερεντίνος 22/11/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με ΑΜ σε 3, 7, 8 & 9 22/11/07 Παράδειγμα με if/else if και user input: import javautil*; public class Grades public
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται και τυπώνει τη θέση του.
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται και τυπώνει τη θέση του.
Διαβάστε περισσότεραΟντοκεντρικός Προγραμματισμός
Οντοκεντρικός Προγραμματισμός Ενότητα 2: Η ΓΛΩΣΣΑ JAVA Σύγκριση JAVA-C ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής ΣΥΓΚΡΙΣΗ JAVA - C ΤΥΠΟΙ
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Αναφορές Μαθήματα από το lab Υπενθύμιση: Η άσκηση ζητούσε να υλοποιήσετε μία κλάση vector που να διαχειρίζεται διανύσματα οποιουδήποτε
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργία Κλάσεων και Αντικειμένων
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργία Κλάσεων και Αντικειμένων Κλάση Μια κλάση είναι μία αφηρημένη περιγραφή αντικειμένων με κοινά χαρακτηριστικά και κοινή συμπεριφορά. Ένα καλούπι/πρότυπο
Διαβάστε περισσότεραpublic class ArrayStack implements Stack {
public class ArrayStack implements Stack { private static final int DEF_STACK_SIZE=2; //Array of objects private Object[] S; private int index ; // index, top, last, position // Returns the last item of
Διαβάστε περισσότεραΤο πρόγραμμα 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 υποστηρίζει
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Μαθήματα από τα εργαστήρια
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Μαθήματα από τα εργαστήρια ΕΡΓΑΣΤΗΡΙΟ 1 Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το αντικείμενο
Διαβάστε περισσότεραΕισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών
Εισαγωγή στη γλώσσα προγραμματισμού JAVA Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Το πρώτο φλιτζάνι Java Λίστα με τα απαραίτητα Το πρώτο μου πρόγραμμα(hello World) Συνεχίζοντας
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 Αριθμητική στο δυαδικό σύστημα (γενικά) Συμπληρωματικά για δυαδικό σύστημα Η πρόσθεση στηρίζεται στους κανόνες: 0 + 0 = 0, 0 + 1 = 1, 1
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας Ένα ιστόγραμμα τιμών μετράει για ένα σύνολο από τιμές πόσες φορές εμφανίστηκε η κάθε τιμή. Για παράδειγμα
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Υπάρχουσες κλάσεις και αντικείμενα στην Java Strings Wrapper Classes Δομές
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Υπάρχουσες κλάσεις και αντικείμενα στην Java Strings Wrapper Classes Δομές ΚΛΑΣΕΙΣ ΚΑΙ ΑΝΤΙΚΕΙΜΕΝΑ Κλάση Μια κλάση είναι μία αφηρημένη περιγραφή αντικειμένων
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Μνήμης Αντικείμενα ως ορίσματα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Στοίβα και Σωρός Μνήμης Αντικείμενα ως ορίσματα ΑΝΑΦΟΡΕΣ new Όπως είδαμε για να δημιουργήσουμε ένα αντικείμενο χρειάζεται να καλέσουμε τη new. Για
Διαβάστε περισσότερα2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων
2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει
Διαβάστε περισσότεραΑντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων
Αντικείµενα ηµιουργία και χρησιµοποίηση αντικειµένων ηµιουργία αντικειµένων Για να δηµιουργήσω ένα νέο αντικείµενο χρησιµοποιώ τον τελεστή new µε τοόνοµατηςκλάσηςαπότηνοποίαθέλωναδηµιουργήσωένααντικείµενο,
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται πάνω σε μία ευθεία πάντα
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται πάνω σε μία ευθεία πάντα
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα ως ορίσματα Εισαγωγή στις αναφορές
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αντικείμενα ως ορίσματα Εισαγωγή στις αναφορές Αντικείμενα ως ορίσματα Μπορούμε να περνάμε αντικείμενα ως ορίσματα σε μία μέθοδο όπως οποιαδήποτε άλλη μεταβλητή
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ
Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ Κων. Κόκκινος Μεταβλητές-1 Οι μεταβλητές αποτελούν θέσεις μνήμης στις οποίες αποθηκεύονται τιμές αντίστοιχες
Διαβάστε περισσότεραΑντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις Γαβαλάς Δαμιανός
Διαβάστε περισσότεραΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Στοιχειώδεις Δοµές Δεδοµένων Δοµικά Στοιχεία και Πίνακες Κεφάλαιο 3 (3.1 και 3.2) Ε. Μαρκάκης Επικ. Καθηγητής
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Στοιχειώδεις Δοµές Δεδοµένων Δοµικά Στοιχεία και Πίνακες Κεφάλαιο 3 (3.1 και 3.2) Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Δοµικά στοιχεία Πίνακες Το κόσκινο του Ερατοσθένη Αντιγραφή πινάκων
Διαβάστε περισσότεραΑντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η
Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις 2 Ανατομία ενός προγράμματος
Διαβάστε περισσότεραΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΕΙΣ ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ιανουάριος 2007 Οι απαντήσεις να είναι καθαρογραμμένες με ευδιάκριτους όλους του χαρακτήρες.
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΕΙΣ ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Ιανουάριος 2007 Οι απαντήσεις να είναι καθαρογραμμένες με ευδιάκριτους όλους του χαρακτήρες. Θέμα 1. α) Δημιουργήστε μια κλάση αντικειμένων Tetragono η οποία
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΔΙΚΕΣ ΜΑΣ ΚΛΑΣΕΙΣ ΚΑΙ ΑΝΤΙΚΕΙΜΕΝΑ Κλάση Μια κλάση είναι μία αφηρημένη περιγραφή αντικειμένων με
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Αντικείμενα ως ορίσματα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Αντικείμενα ως ορίσματα Η μνήμη του υπολογιστή Η κύρια μνήμη (main memory - RAM) του υπολογιστή κρατάει τα δεδομένα για την εκτέλεση των προγραμμάτων.
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Είσοδος Χρησιμοποιούμε την κλάση Scanner της Java import java.util.scanner; Αρχικοποιείται με το ρεύμα εισόδου: Scanner in = new Scanner(System.in);
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 Κατασκευαστές (Constructors) Ειδικός τύπος μεθόδων, οι οποίες: - είναι public και έχουν το ίδιο όνομα με αυτό της κλάσης - χρησιμοποιούνται για να αρχικοποιήσουν κάποιες
Διαβάστε περισσότεραΒασικά της γλώσσας JAVA
17 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Υπερφόρτωση Αντικείμενα σαν ορίσματα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Υπερφόρτωση Αντικείμενα σαν ορίσματα ΥΠΕΡΦΟΡΤΩΣΗ H κλάση Car Μια κλάση που κρατάει την θέση ενός αυτοκινήτου. Μέθοδος move(): μετακινεί το αυτοκίνητο κατά μία
Διαβάστε περισσότεραΑντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές
Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές τύπων, δημιουργία τυχαίων αριθμών, λήψη εισόδου από χρήστη Λογικά λάθη public class ShowLogicErrors
Διαβάστε περισσότεραΕισαγωγή στον Προγ/μό Η/Υ
Εισαγωγή στον Προγ/μό Η/Υ Ενότητα 7 2ο μέρος: Επιπλέον έννοιες σχετικά με αντικείμενα Διδάσκων: Μιχάλης Τίτσιας Περιεχόμενα Τι μπορεί να περιέχει μια τάξη Μέθοδοι τάξης και σταθερές τάξης Πολυμορφισμός
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα μέσα σε αντικείμενα Αντικείμενα ως επιστρεφόμενες τιμές Αντικείμενα με πίνακες
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αντικείμενα μέσα σε αντικείμενα Αντικείμενα ως επιστρεφόμενες τιμές Αντικείμενα με πίνακες ANTIKEIMENA MEΣΑ ΣΕ ΑΝΤΙΚΕΙΜΕΝΑ Αντικείμενα μέσα σε αντικείμενα Εκτός
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008 - Παράδειγμα με switch (το οποίο δείχνει επίσης πότε σε μια άσκηση χρησιμοποιούμε user-input και System.out.println() για έξοδο και πότε χρησιμοποιούμε είσοδο σε μέθοδο
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Constructors Υπερφόρτωση Αντικείμενα ως παράμετροι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Constructors Υπερφόρτωση Αντικείμενα ως παράμετροι Μαθήματα από το lab Boolean μεταβλητές: Συνήθως τα ονόματα που δίνουμε στις boolean μεταβλητές περιγράφουν
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java III Ισότητα Strings class StringTest public static void main(string args[]) String x1 = "java"; String y1 = "java"; System.out.println("1.
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 13/12/07
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 13/12/07 Ένα απλό παράδειγμα μιας κλάσης εφαρμογής με δύο μεθόδους (κλήση μεθόδου μέσα στην ίδια κλάση): import java.util.*; public class Example
Διαβάστε περισσότεραMεταβλητές (variables) και Σταθερές (constants)
Mεταβλητές (variables) και Σταθερές (constants) Οι μεταβλητές είναι οι θέσεις μνήμης στις οποίες ένα πρόγραμμα τοποθετεί τα δεδομένα του κατά τη διάρκεια της λειτουργίας του. θα μάθουμε: πως δηλώνουμε
Διαβάστε περισσότεραΑντικειµενοστρεφής Προγραµµατισµός
16 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εξαιρέσεις Εξαιρέσεις Στα προγράμματα μας θα πρέπει να μπορούμε να χειριστούμε περιπτώσεις που το πρόγραμμα δεν εξελίσσεται όπως το είχαμε προβλέψει Π.χ., κάνουμε
Διαβάστε περισσότεραCSD Univ. of Crete Φθινόπωρο Άσκηση 1 Εκφώνηση
Άσκηση 1 Εκφώνηση Αναπτύξτε ένα πρόγραμμα σε Java σύμφωνα με το οποίο το σύστημα θα προσθέτει τους αριθμούς 12.0 και 24.0 και θα δίνει στην κύρια έξοδο το αποτέλεσμα της άθροισης Να χρησιμοποιήσετε αντί
Διαβάστε περισσότεραΤμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, :00-10:00 π.μ.
Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Ακαδημαϊκό Έτος 2018-19, Χειμερινό Εξάμηνο 1 η Ενδιάμεση
Διαβάστε περισσότερα2.1 Αντικειµενοστρεφής προγραµµατισµός
2.1 Αντικειµενοστρεφής προγραµµατισµός Στον αντικειµενοστρεφή προγραµµατισµό (object oriented programming, OOP) ένα πρόγραµµα υπολογιστή είναι ένα σύνολο αλληλεπιδρώντων αντικειµένων. Μπορεί να ειπωθεί
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός Διάλεξη 4 : CLASSES
Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 4 : CLASSES Κων. Κόκκινος Αντικειμενοστραφής Προγραμματισμός Η ιδέα του αντικειμενοστραφούς προγραμματισμού Αυτόνομες οντότητες Στιγμιότυπα οντοτήτων Παράδειγμα
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Constructors
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Constructors Μαθήματα από το lab Ένα πρόγραμμα αποτελείται από διάφορες κλάσεις και αντικείμενα αυτών των κλάσεων. Μία από τις κλάσεις
Διαβάστε περισσότεραΕισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Ακαδημαϊκό έτος 2010/2011 Επιμέλεια Ξενοφών Βασιλάκος Περιεχόμενα Φροντιστηρίου A. Πρωταρχικοί τύποι B. Είσοδος/ Έξοδος C. Πράξεις 2 Δήλωση / Αρχικοποίηση / Εκχώρηση A. Πρωταρχικοί
Διαβάστε περισσότεραΑντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές τύπων, δημιουργία τυχαίων αριθμών, λήψη εισόδου από χρήστη Γαβαλάς Δαμιανός dgavalas@aegean.gr Λογικά
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Constructors, equals, tostring
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Constructors, equals, tostring Constructors (Δημιουργοί) O Constructor είναι μια «μέθοδος» η οποία καλείται όταν δημιουργούμε το αντικείμενο
Διαβάστε περισσότερα9:00-10:00 π.μ. (60 λεπτά) Παρασκευή, 14 Οκτωβρίου, 2016
Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Ακαδημαϊκό Έτος 2016-17, Χειμερινό Εξάμηνο 1 η Ενδιάμεση
Διαβάστε περισσότεραHelloWorld. Παύλος Εφραιμίδης. Java Το πρόγραμμα HelloWorld 1
HelloWorld Παύλος Εφραιμίδης Java Το πρόγραμμα HelloWorld 1 Το πρόγραμμα HelloWorld.java Σχόλια στη Java /** * The HelloWorld class */ class HelloWorld { public static void main(string[] args) { System.out.println("Hello
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Έλεγχος ισότητας για Strings: Διαβάζουμε το String option και θέλουμε ένα loop να συνεχίσει
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Έλεγχος ισότητας String Interning Αποαναφοροποίηση - dereferencing
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Έλεγχος ισότητας String Interning Αποαναφοροποίηση - dereferencing ΕΛΕΓΧΟΣ ΙΣΟΤΗΤΑΣ Έλεγχος ισότητας Έχουμε πει ότι όταν ελέγχουμε ισότητα μεταξύ αντικειμένων
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργία Κλάσεων και Αντικειμένων Tοπικές μεταβλητές To αντικείμενο this Accessor, Mutator μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργία Κλάσεων και Αντικειμένων Tοπικές μεταβλητές To αντικείμενο this Accessor, Mutator μέθοδοι Ορισμός κλάσης και αντικειμένων Μία κλάση Κ ορίζεται από
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Αναφορές-Παράμετροι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Στοίβα και Σωρός Αναφορές-Παράμετροι new Όπως είδαμε για να δημιουργήσουμε ένα αντικείμενο χρειάζεται να καλέσουμε τη new. Για τον πίνακα είπαμε ότι
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Βρόγχοι Το if-then Statement Στην Java το if-then statement έχει το εξής συντακτικό Η παρένθεση είναι απαραίτητη if (condition) if-code block
Διαβάστε περισσότεραΜία Μελέτη Περίπτωσης: Διήθηση
Μία Μελέτη Περίπτωσης: Διήθηση Ι-1 Μία Μελέτη Περίπτωσης: Διήθηση Μία Μελέτη Περίπτωσης: Διήθηση Διήθηση. Ρίψη υγρού πάνω σε κάποιο πορώδες υλικό Θα φτάσει το υγρό στον πυθμένα; Εφαρμογές. [ χημεία, γεωλογία,
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Σύνθεση αντικειμένων Παράδειγμα: Τμήμα πανεπιστημίου
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Σύνθεση αντικειμένων Παράδειγμα: Τμήμα πανεπιστημίου Μεγάλο παράδειγμα Θέλουμε να δημιουργήσουμε ένα λογισμικό για ένα τμήμα πανεπιστημίου. Το τμήμα έχει 4
Διαβάστε περισσότεραΔιάλεξη 20: Αναδρομή (Recursion) Διδάσκων: Παναγιώτης Ανδρέου
1 Διάλεξη 20: Αναδρομή (Recursion) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: -Η έννοια της αναδρομής - Μη-αναδρομικός / Αναδρομικός Ορισμός Συναρτήσεων - Παραδείγματα Ανάδρομης - Αφαίρεση
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές)
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές) Βρείτε τα λάθη Στο πρόγραμμα στην επόμενη διαφάνεια υπάρχουν διάφορα λάθη Ποια είναι? public abstract
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 10/1/08
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 10/1/08 Συνέχεια Αναδρομής (recursion): Ο αλγόριθμος του Ευκλείδη για τον Μέγιστο Κοινό Διαιρέτη (ΜΚΔ) με αναδρομή: p, αν q=0 (βασική περίπτωση)
Διαβάστε περισσότεραΟντοκεντρικός Προγραμματισμός
Οντοκεντρικός Προγραμματισμός Ενότητα 2: Η ΓΛΩΣΣΑ JAVA Βασικά Δομικά Στοιχεία ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής ΔΟΜΙΚΑ ΣΤΟΙΧΕΙΑ ΔΟΜΙΚΑ
Διαβάστε περισσότεραΕΡΓΑΣΙΑ 4 - Αντικειμενοστραφής Υλοποίηση του Συστήματος Κατανομής Θέσεων σε Προγράμματα Σπουδών
ΕΡΓΑΣΙΑ 4 - Αντικειμενοστραφής Υλοποίηση του Συστήματος Κατανομής Θέσεων σε Προγράμματα Σπουδών Ημερομηνία Ανάθεσης: 16/11/2017 Ημερομηνία Παράδοσης: 30/11/2017 (14 ημέρες) Τελευταία Ώρα Παράδοσης: 9:00
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές)
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές) Κληρονομικότητα Employee name hiringdate getname gethiringdate Οι παράγωγες κλάσεις κληρονομούν τα πεδία
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Σύνθεση αντικειμένων
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Σύνθεση αντικειμένων Μεγάλο παράδειγμα Θέλουμε να δημιουργήσουμε ένα λογισμικό για ένα τμήμα πανεπιστημίου. Το τμήμα έχει 4 φοιτητές οπού ο καθένας έχει ένα
Διαβάστε περισσότεραΔοµές Δεδοµένων. 3η Διάλεξη Στοιχειώδεις Δοµές Δεδοµένων: Πίνακες. Ε. Μαρκάκης
Δοµές Δεδοµένων 3η Διάλεξη Στοιχειώδεις Δοµές Δεδοµένων: Πίνακες Ε. Μαρκάκης Αλλαγή αίθουσας Τις Παρασκευές 1-3, το µάθηµα θα γίνεται στη Δ23 Δοµές Δεδοµένων 03-2 Περίληψη Σύνοψη 1 ου κεφαλαίου Δοµικά
Διαβάστε περισσότεραΕΠΛ131 Αρχές Προγραμματισμού Ι
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ131 Αρχές Προγραμματισμού Ι Ακαδημαϊκό Έτος 2015/16 Εαρινό Εξάμηνο ΤΕΛΙΚΗ ΕΞΕΤΑΣΗ ΕΞΑΜΗΝΟΥ ΗΜΕΡΟΜΗΝΙΑ: 9 Μαΐου 2016 ΔΙΑΡΚΕΙΑ: 8:30πμ 11:00μμ ΑΙΘΟΥΣΑ: Κτήριο ΘΕΕ,
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός μνήμης Αντικείμενα παράμετροι String Interning
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Στοίβα και Σωρός μνήμης Αντικείμενα παράμετροι String Interning Αποθήκευση αντικειμένων Οι θέσεις μνήμης των αντικειμένων κρατάνε μια διεύθυνση στο
Διαβάστε περισσότεραΣυλλογές, Στοίβες και Ουρές
Συλλογές, Στοίβες και Ουρές Σε πολλές εφαρμογές μας αρκεί η αναπαράσταση ενός δυναμικού συνόλου με μια δομή δεδομένων η οποία δεν υποστηρίζει την αναζήτηση οποιουδήποτε στοιχείου. Συλλογή (bag) : Επιστρέφει
Διαβάστε περισσότεραΓράφημα. Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα: Σύνολο κορυφών (vertex set) Σύνολο ακμών (edge set) 4 5 πλήθος κορυφών πλήθος ακμών
Γράφημα Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα: Σύνολο κορυφών (vertex set) Σύνολο ακμών (edge set) 1 2 3 4 5 πλήθος κορυφών πλήθος ακμών Γράφημα Συνδυαστικό αντικείμενο που αποτελείται από
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Αναφορές-Παράμετροι String Interning
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Στοίβα και Σωρός Αναφορές-Παράμετροι String Interning new Όπως είδαμε για να δημιουργήσουμε ένα αντικείμενο χρειάζεται να καλέσουμε τη new. Για τον
Διαβάστε περισσότεραΤι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;
Εισαγωγή Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; 1. Σελίδα μαθήματος Εγγραφή Ο κάθε φοιτητής πρέπει να κάνει εγγραφή στη σελίδα του μαθήματος στην πλατφόρμα e-class
Διαβάστε περισσότεραΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές)
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές) Κληρονομικότητα Employee name hiringdate getname gethiringdate Οι παράγωγες κλάσεις κληρονομούν τα πεδία
Διαβάστε περισσότεραpublic class ArrayQueue implements Queue {
public class ArrayQueue implements Queue { // ΠΡΟΣΟΧΗ 2 δείκτες τώρα: // Ο ένας (index/last),ίδιος με πριν, δείχνει την θέση του νέου στοιχείου. // Ο άλλος (front) ΠΑΝΤΑ δείχνει την θέση του 1ου στοιχείου
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 4/3/2008
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 4/3/2008 Εκτέλεση μεθόδου του αντικειμένου μιας κλάσης: 1) Δημιουργία αντικειμένου (στιγμιότυπου) της κλάσης: = new ( ); 2) Κλήση μεθόδου της κλάσης (στην
Διαβάστε περισσότεραΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός. Περισσότερα για τις Κλάσεις, τα Αντικείμενα και τις Μεθόδους
ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός Παναγιώτης Σφέτσος sfetsos@it.teithe.gr Περισσότερα για τις Κλάσεις, τα Αντικείμενα και τις Μεθόδους Σύνοψη των βασικών λειτουργιών
Διαβάστε περισσότεραΔιάλεξη 15: Αναδρομή (Recursion) Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 15: Αναδρομή (Recursion) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Η έννοια της αναδρομής Μη αναδρομικός / Αναδρομικός Ορισμός Συναρτήσεων Παραδείγματα Ανάδρομης Αφαίρεση της Αναδρομής
Διαβάστε περισσότεραΕΡΓΑΣΙΑ 2. Κατασκευάζοντας Ημερολόγια. Ημερομηνία Ανάρτησης: 23/02/2018 Ημερομηνία Παράδοσης: 13/03/2018, 09:00
ΕΡΓΑΣΙΑ 2 Κατασκευάζοντας Ημερολόγια Ημερομηνία Ανάρτησης: 23/02/2018 Ημερομηνία Παράδοσης: 13/03/2018, 09:00 Εισαγωγή Σκοπός της παρούσας άσκησης είναι η απόκτηση εμπειρίας στη χρήση πινάκων (πολλαπλών
Διαβάστε περισσότεραΤύποι Δεδομένων και Απλές Δομές Δεδομένων. Παύλος Εφραιμίδης V1.0 ( )
Τύποι Δεδομένων και Απλές Δομές Δεδομένων Παύλος Εφραιμίδης V1.0 (2014-01-13) Απλές Δομές Δεδομένων Στην ενότητα αυτή θα γνωρίσουμε ορισμένες απλές Δομές Δεδομένων και θα τις χρησιμοποιήσουμε για την αποδοτική
Διαβάστε περισσότεραΕισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.
Εισαγωγή στη JAVA Σύντομο Ιστορικό Η Java και το διαδίκτυο Το πρώτο απλό πρόγραμμα σε JAVA Μεταβλητές και σταθερές Παραστάσεις και εντολές Οι βασικοί τύποι δεδομένων στη Java Οι βασικοί Τελεστές στη Java
Διαβάστε περισσότεραΕαρινό. Ύλη εργαστηρίου, Ασκήσεις Java
Εξάμηνο Μάθημα Τίτλος 2017 2018 Εαρινό Αντικειμενοστραφής Προγραμματισμός Ι Ύλη εργαστηρίου, Ασκήσεις Java Ημερομηνία Εργαστήριο 5 ο Α. Ύλη εργαστηρίου 5.1 Έννοιες αντικειμενοστραφούς προγραμματισμού,
Διαβάστε περισσότεραΔιάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 3: Προγραμματισμός σε JAVA I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Στοιχειώδης Προγραμματισμός - Προγραμματισμός με Συνθήκες - Προγραμματισμός με Βρόγχους
Διαβάστε περισσότεραΑναδρομή (Recursion) Η Δίδυμη Αδελφή της Επανάληψης. Διαφάνειες από τους Robert Sedgewick και Kevin Wayne Ι-1
Αναδρομή (Recursion) Η Δίδυμη Αδελφή της Επανάληψης Ι-1 Αναδρομή Τι είναι η αναδρομή; Όταν μία συνάρτηση καλεί τον εαυτό της άμεσα ή έμμεσα. Γιατί να μάθουμε αναδρομή; Νέος τρόπος σκέψης. Ισχυρό παράδειγμα
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος
ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος Μιχάλης Δρακόπουλος Σχολή Θετικών επιστημών Τμήμα Μαθηματικών ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (Java) Ενότητα 3 ΕΛΕΓΧΟΣ ΡΟΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ Ι. Ελεγκτές συνθηκών ή περιπτώσεων:
Διαβάστε περισσότεραΕΠΛ131 Είσοδος και Έξοδος (Input and Output)
Είσοδος και Έξοδος (Input and Output) Είσοδος και Έξοδος Μονάδες Εισόδου Πληκτρολόγιο Ποντίκι Σκληρός Διαδίκτυο Ψηφιακή κάμερα Μικρόφωνο δίσκος Μονάδες Εξόδου Οθόνη Ηχεία Σκληρός δίσκος Διαδίκτυο Εκτυπωτής
Διαβάστε περισσότεραAPI: Applications Programming Interface
ÒØ Ñ ÒÓ ØÖ ÔÖÓ» Ñ ÒØ Ñ ÒÓ ØÖ ÔÖÓ Ö ÑÑ Ø Ñ ½ Ö Ø Ò Ô Ö Ø ÒØ Ñ ÒÛÒ ÒÒÓ ôòøóù ÔÖ Ñ Ø Ó ÑÓÙ Ì ÔÓ ÓÑ ÒÛÒ Ì µ (i) ÒÓÐÓØ ÑôÒ (ii)ôö Ü º Ð ØÖ Ò Ò ÖÛÔÓ ØÖ ÔÐ Ò Ø Ó Ó Ù Ø Ñ Ø ººº ½ºÈÖÛØ ÓÒØ Ø ÔÓ int double char
Διαβάστε περισσότερα