Skip to content

Commit 2768d65

Browse files
committed
Getting ready for the new year.
1 parent 1927697 commit 2768d65

File tree

3 files changed

+16
-159
lines changed

3 files changed

+16
-159
lines changed

Diff for: README.md

+16-159
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44

55
* Διαλέξεις: Δευτέρα και Παρασκευή 09:00-11:00 @ Αμφιθέατρο
66
* Ώρες Γραφείου:
7-
* Δευτέρα 11:00-13:00 @ Α40
8-
* Παρασκευή 11:00-13:00 @ Α3
9-
* Πρόσθεσε το πρόγραμμα του μαθήματος στο google calendar [εδώ](https://calendar.google.com/calendar/u/3?cid=Y182MTg0NDNiZDA4YWJiOGJkOWI0MjZiNWEwZWZmZmUzMjQ2NGYyM2M1NmFmODJiMDZiMTFhZjY1YWE0MDI5NDAwQGdyb3VwLmNhbGVuZGFyLmdvb2dsZS5jb20)
7+
* Δευτέρα 11:00-12:00 @ Α40
8+
* Παρασκευή 11:00-12:00 @ Α3
9+
* Πρόσθεσε το πρόγραμμα του μαθήματος στο google calendar [εδώ TBD](TBD)
1010

1111
## Συμμετοχή
1212

@@ -15,25 +15,15 @@
1515
* Λογαριασμό Gmail - άνοιξε [εδώ](https://accounts.google.com/SignUp) αν δεν έχεις ήδη.
1616
* Λογαριασμό GitHub - άνοιξε [εδώ](https://github.com/join) αν δεν έχεις ήδη.
1717

18-
Στην συνέχεια συμπλήρωσε τα στοιχεία σου σε αυτήν την [φόρμα](https://forms.gle/q8hvrpJ6pK22cx3i9) - απαιτεί λογαριασμό Gmail.
18+
Στην συνέχεια συμπλήρωσε τα στοιχεία σου σε αυτήν την [φόρμα TBD](TBD) - απαιτεί λογαριασμό Gmail.
1919

2020
## Επικοινωνία
2121

22-
Ερωτήσεις για διαδικαστικά, το μάθημα και τις ασκήσεις αποκλειστικά στο [Piazza](https://piazza.com/uoa.gr/fall2023/197af) - απαιτεί di.uoa.gr email. Δεν έχεις ακόμα di.uoa.gr email; Βεβαιώσου ότι συμπλήρωσες την φόρμα στην Συμμετοχή παραπάνω και θα σου στείλουμε πρόσκληση
22+
Ερωτήσεις για διαδικαστικά, το μάθημα και τις ασκήσεις αποκλειστικά στο [Piazza TBD](TBD) - απαιτεί di.uoa.gr email. Δεν έχεις ακόμα di.uoa.gr email; Βεβαιώσου ότι συμπλήρωσες την φόρμα στην Συμμετοχή παραπάνω και θα σου στείλουμε πρόσκληση
2323

2424
### Φυλλάδια Εργαστηρίων
2525

26-
* [Φυλλάδιο 1](/resources/lab01.pdf)
27-
* [Φυλλάδιο 2](/resources/lab02.pdf)
28-
* [Φυλλάδιο 3](/resources/lab03.pdf)
29-
* [Φυλλάδιο 4](/resources/lab04.pdf)
30-
* [Φυλλάδιο 5](/resources/lab05.pdf)
31-
* [Φυλλάδιο 6](/resources/lab06.pdf)
32-
* [Φυλλάδιο 7](/resources/lab07.pdf)
33-
* [Φυλλάδιο 8](/resources/lab08.pdf)
34-
* [Φυλλάδιο 9](/resources/lab09.pdf)
35-
* [Φυλλάδιο 10](/resources/lab10.pdf)
36-
* [Φυλλάδιο 11](/resources/lab11.pdf)
26+
TBD
3727

3828
* [Ενδεικτικές λύσεις για εργαστήρια](https://github.com/dimskomex/ip-labs-solutions) - ευχαριστούμε πολύ [@dimskomex](https://github.com/dimskomex)!
3929

@@ -44,64 +34,19 @@
4434

4535
| Ημερομηνία | Περιεχόμενο Μαθήματος | Αρχείο |
4636
| --- | --- | --- |
47-
| 02/10 | Διάλεξη 0: Καλημέρα Κόσμε! | [pdf](/resources/lec00.pdf) |
48-
| 06/10 | Διάλεξη 1: Γραμμή Εντολών, Πρόγραμματα και Μεταγλώττιση | [pdf](/resources/lec01.pdf) |
49-
| 13/10 | Διάλεξη 2: Συναρτήσεις και Version Control | [pdf](/resources/lec02.pdf) |
50-
| 18/10 | Διάλεξη 3: Μνήμη και Μεταβλητές | [pdf](/resources/lec03.pdf) |
51-
| 20/10 | Διάλεξη 4: Τελεστές | [pdf](/resources/lec04.pdf) |
52-
| 23/10 | Διάλεξη 5: Εντολές και Ροή Ελέγχου | [pdf](/resources/lec05.pdf) |
53-
| 27/10 | Διάλεξη 6: Επίλυση Προβλημάτων | [pdf](/resources/lec06.pdf) |
54-
| 30/10 | Διάλεξη 7: Δομές Ελέγχου #2 | [pdf](/resources/lec07.pdf) |
55-
| 03/11 | Διάλεξη 8: Πίνακες | [pdf](/resources/lec08.pdf) |
56-
| 06/11 | Διάλεξη 9: Δείκτες | [pdf](/resources/lec09.pdf) |
57-
| 10/11 | Διάλεξη 10: Πίνακες και Δείκτες | [pdf](/resources/lec10.pdf) |
58-
| 13/11 | Διάλεξη 11: Δεδομένα Εισόδου | [pdf](/resources/lec11.pdf) |
59-
| 13/11 | Guest Lecture on Collatz | [pdf](/resources/optimizing-collatz-sequence-finding.pdf) |
60-
| 13/11 | Guest Lecture on Forums Q&A | [pdf](/resources/forums.pdf) |
61-
| 20/11 | Διάλεξη 12: Μνήμη | [pdf](/resources/lec12.pdf) |
62-
| 22/11 | Διάλεξη 13: Επίλυση Προβλημάτων | |
63-
| 24/11 | Διάλεξη 14: Πολυπλοκότητα και Προεπεξεργαστής | [pdf](/resources/lec14.pdf) |
64-
| 27/11 | Διάλεξη 15: Εμβέλεια, Μνήμη και Συμβολοσειρές | [pdf](/resources/lec15.pdf) |
65-
| 01/12 | Διάλεξη 16: Δεδομένα Εισόδου #2 - Αρχεία | [pdf](/resources/lec16.pdf) |
66-
| 04/12 | Διάλεξη 17: Δυαδική Αναζήτηση και Ταξινόμηση | [pdf](/resources/lec17.pdf) |
67-
| 08/12 | Διάλεξη 18: Ταξινόμηση #2 | [pdf](/resources/lec18.pdf) |
68-
| 11/12 | Διάλεξη 19: Δομές | [pdf](/resources/lec19.pdf) |
69-
| 15/12 | Διάλεξη 20: Προχωρημένες Δομές | [pdf](/resources/lec20.pdf) |
70-
| 18/12 | Διάλεξη 21: Λίστες | [pdf](/resources/lec21.pdf) |
71-
| 22/12 | Διάλεξη 22: Δέντρα | [pdf](/resources/lec22.pdf) |
72-
| 08/01 | Διάλεξη 23: Προχωρημένα Θέματα | [pdf](/resources/lec23.pdf) |
73-
37+
| TBD | Διάλεξη 0: Καλημέρα Κόσμε! | |
7438

7539
## Εργασίες
7640

77-
1. [Εργασία 0](/resources/hw0.pdf). Προθεσμία: 08/11/2023, 23:59.
78-
1. [Εργασία 1](/resources/hw1.pdf). Προθεσμία: 06/12/2023, 23:59.
79-
1. [Εργασία 2](/resources/hw2.pdf). Προθεσμία: 14/01/2024, 23:59.
80-
1. [Εργασία 3](/resources/hw3.pdf). Προθεσμία: 13/02/2024, 23:59.
81-
82-
83-
* [uoabot](https://cgi.di.uoa.gr/~uoabot/) - ευχαριστούμε πολύ [@George-RG](https://github.com/George-RG/)!
84-
* Εντυπωσιακό [visualization της σειράς collatz](https://github.com/georomporas/collatz_visualization/) - ευχαριστούμε πολύ [@georomporas](https://github.com/georomporas/)!
85-
86-
![Collatz Visualization](https://user-images.githubusercontent.com/146763073/280543572-848a46c0-a145-45ab-bbbd-7014794465ae.png)
87-
41+
TBD
8842

8943
## Τμήματα Εργαστηρίων
9044

91-
Γραφτείτε στο τμήμα εργαστηρίου που ταιριάζει στο πρόγραμμά σας μέσω [eclass](https://eclass.uoa.gr/modules/group/index.php?course=DI631&urlview=1) - απαιτεί di.uoa.gr email. Δεν έχεις ακόμα di.uoa.gr email; Βεβαιώσου ότι συμπλήρωσες την φόρμα στην Συμμετοχή παραπάνω και θα προσπαθήσουμε να σε συμπεριλάβουμε στην λίστα.
92-
93-
Το εργαστήριο είναι *υποχρεωτικό* για τους πρωτοετείς. Το ακόλουθο πρόγραμμα θα ξεκινήσει την Δευτέρα 09/10/2023:
45+
Γραφτείτε στο τμήμα εργαστηρίου που ταιριάζει στο πρόγραμμά σας μέσω [eclass TBD](TBD) - απαιτεί di.uoa.gr email. Δεν έχεις ακόμα di.uoa.gr email; Βεβαιώσου ότι συμπλήρωσες την φόρμα στην Συμμετοχή παραπάνω και θα προσπαθήσουμε να σε συμπεριλάβουμε στην λίστα.
9446

95-
1. Δευτέρα 13:00-15:00 @ Εργαστήριο Windows PC1, υπεύθυνος: Μίλτος Κυριακάκος, βοηθοί: Έλενα Φίλη, Γιώργος Νικολαΐδης, Νιόβη Κουμπαράκη, Γεώργιος-Αλέξανδρος Κώστας
96-
1. Δευτέρα 15:00-17:00 @ Εργαστήριο Windows PC1, υπεύθυνος: Μίλτος Κυριακάκος, βοηθοί: Δημήτρης Σκόνδρας-Μέξης, Ζωή Κουκουβέ
97-
1. Δευτέρα 17:00-19:00 @ Εργαστήριο Windows PC1, υπεύθυνός: Γιάννης Χαμόδρακας, βοηθοί: Δημήτρης-Στέφανος Πορίχης, Παύλος Νταής
98-
1. Τετάρτη 15:00-17:00 @ Εργαστήριο Windows PC1, υπεύθυνη: Άννα Καββαδά, βοηθοί: Γιώργος Νικολάου, Ευάγγελος Αργυρόπουλος
99-
1. Τετάρτη 17:00-19:00 @ Εργαστήριο Windows PC1, υπεύθυνος: Γιάννης Χαμόδρακας, βοηθοί: Ηλίας Κωνσταντινίδης, Κωνσταντίνος Λεοντιάδης
100-
1. Παρασκευή 13:00-15:00 @ Εργαστήριο Windows PC1, υπεύθυνος: Νίκος Περδικοπάνης, βοηθοί: Νικόλαος Δάλκος, Απόστολος-Παναγιώτης Γραμματόπουλος, Βαγγέλης Κόκκινος, Αθανασία Κανελλοπούλου
101-
1. Παρασκευή 15:00-17:00 @ Εργαστήριο Windows PC1, υπεύθυνος: Στέφανος Σταματης, βοηθοί: Κωνσταντίνος Χούσος, Αναστάσιος-Φαίδων Σεϊτανίδης, Ιωάννης Ξηρός, Ζήσιμος Βακράς, Ιωάννης Βογιατζής, Γεώργιος-Αλέξανδρος Κώστας
102-
1. Παρασκευή 17:00-19:00 @ Εργαστήριο Windows PC1, υπεύθυνος: Νίκος Περδικοπάνης, βοηθοί: Βύρων-Γεώργιος Ανεμογιάννης
103-
1. Τμήμα Β+: Τρίτη 18:00-20:00 @ Εργαστήριο Linux, υπεύθυνος: Δημήτρης Βερλέκης, βοηθοί: Κωνσταντίνος Κορδολαίμης, Κυριακή Καραπλιού
47+
Το εργαστήριο είναι *υποχρεωτικό* για τους πρωτοετείς. Το ακόλουθο πρόγραμμα θα ξεκινήσει την TBD:
10448

49+
TBD
10550

10651
## Συγγράμματα
10752

@@ -115,7 +60,7 @@
11560

11661
## Άλλοι Σύνδεσμοι
11762

118-
* [Unix Tutorial από τον καθηγητή Παναγιώτη Σταματόπουλο](/resources/Unix.pdf)
63+
* [Unix Tutorial από τον καθηγητή Παναγιώτη Σταματόπουλο](/assets/pdf/Unix.pdf)
11964
* [Οδηγίες εγκατάστασης VS Code από τον καθηγητή Κώστα Χατζηκοκολάκη](https://k08.chatzi.org/vscode/)
12065
* [Οδηγός Σπουδών για το μάθημα](https://www.di.uoa.gr/studies/undergraduate/courses/k04)
12166

@@ -143,107 +88,19 @@
14388

14489
### Μεταπτυχιακοί Συνεργάτες
14590

146-
* Άννα Καββαδά (cs2210009)
147-
* Δημήτρης Βερλέκης (cs22200007)
91+
TBD
14892

14993
### Προπτυχιακοί Συνεργάτες
15094

151-
* Βύρων-Γεώργιος Ανεμογιάννης (sdi2000008)
152-
* Ζήσιμος Βακράς (sdi2200014)
153-
* Ιωάννης Ξηρός (sdi2200122)
154-
* Ιωάννης Βογιατζής (sdi2200021)
155-
* Γεώργιος-Αλέξανδρος Κώστας (sdi2100080)
156-
* Ευάγγελος Αργυρόπουλος (sdi2200010)
157-
* Κωνσταντίνος Λεοντιάδης (sdi2100085)
158-
* Βαγγέλης Κόκκινος (sdi2000084)
159-
* Κωνσταντίνος Χούσος (sdi2000215)
160-
* Γεώργιος Νικολάου (sdi2000154)
161-
* Ελένη Φίλη (sdi2100203)
162-
* Αναστάσιος-Φαίδων Σεϊτανίδης (sdi2000179)
163-
* Νικόλαος-Παναγιώτης Δάλκος (sdi2000043)
164-
* Κωνσταντίνος Κορδολαίμης (sdi2000091)
165-
* Δημήτρης Σκόνδρας-Μέξης (sdi2200161)
166-
* Νιόβη Κουμπαράκη (sdi2100072)
167-
* Απόστολος-Παναγιώτης Γραμματόπουλος (sdi2000041)
168-
* Ζωή Κουκουβέ (sdi2000097)
169-
* Γεώργιος Νικολαΐδης (sdi2100118)
170-
* Αθανασία Κανελλοπούλου (sdi2000065)
171-
* Ηλίας Κωνσταντινίδης (sdi2000109)
172-
* Δημήτρης-Στέφανος Πορίχης (sdi2100159)
173-
* Παύλος Νταής (sdi2100122)
174-
* Κυριακή Καραπλιού (sdi2000069)
95+
TBD
17596

17697
## Προηγούμενα Έτη
17798

178-
* [2023](./past/2023/README.md)
99+
* [2023](/past/2023/README.md)
179100
* [Προηγούμενα έτη](https://cgi.di.uoa.gr/~ip/)
180-
* [Σημειώσεις](/resources/K04.pdf) από τον καθηγητή [Παναγιώτη Σταματόπουλο](https://cgi.di.uoa.gr/~takis/)
101+
* [Σημειώσεις](/assets/pdf/K04.pdf) από τον καθηγητή [Παναγιώτη Σταματόπουλο](https://cgi.di.uoa.gr/~takis/)
181102

182103

183104
### Ευχαριστίες
184105

185106
Θερμές ευχαριστίες στον [Παναγιώτη Σταματόπουλο](https://cgi.di.uoa.gr/~takis/) και τον [Στέφανο Σταμάτη](https://telekpa.uoa.gr/personalrec.php?lang=el&rid=7474) χωρίς τους οποίους το μάθημα θα ήταν αδύνατο να στηθεί.
186-
187-
188-
## Βιβλιοθήκη Προγραμμάτων
189-
190-
1. Hello World (printf)
191-
192-
```c
193-
/* File: helloworld.c */
194-
#include <stdio.h>
195-
int main() {
196-
printf("Hello world\n");
197-
return 0;
198-
}
199-
```
200-
201-
2. Υπολογισμός βαθμολογίας (argc, argv)
202-
203-
```c
204-
#include <stdio.h>
205-
#include <stdlib.h>
206-
207-
// Compute grades using the class formula
208-
int grade(int final_exam, int homework, int lab) {
209-
return final_exam * 50 / 100 + homework * 30 / 100 + lab * 20 / 100;
210-
}
211-
212-
int main(int argc, char **argv) {
213-
if (argc != 4) {
214-
printf("Program needs to be called as `./prog final_exam homework lab`\n");
215-
return 1;
216-
}
217-
int final_exam = atoi(argv[1]);
218-
int homework = atoi(argv[2]);
219-
int lab = atoi(argv[3]);
220-
printf("Grade: %d\n", grade(final_exam, homework, lab));
221-
return 0;
222-
}
223-
```
224-
3. Παραγοντικό/Factorial (αναδρομή/recursion)
225-
226-
```c
227-
#include <stdio.h>
228-
#include <stdlib.h>
229-
230-
// Compute the factorial of a number using the recursive
231-
// formula.
232-
int factorial(int number) {
233-
if (number == 0) {
234-
return 1;
235-
} else {
236-
return number * factorial(number - 1);
237-
}
238-
}
239-
240-
int main(int argc, char **argv) {
241-
if (argc != 2) {
242-
printf("Program needs to be called as `./prog number`\n");
243-
return 1;
244-
}
245-
int number = atoi(argv[1]);
246-
printf("%d! = %d\n", number, factorial(number));
247-
return 0;
248-
}
249-
```

Diff for: assets/pdf/K04.pdf

406 KB
Binary file not shown.

Diff for: assets/pdf/Unix.pdf

201 KB
Binary file not shown.

0 commit comments

Comments
 (0)