Τελευταία μηνύματα

#71
Γ΄ Λυκείου / Πληροφορική XP
Τελευταίο μήνυμα από AlexandrosP - 30 Μαρ 2026, 02:22:21 ΠΜ
Καλησπέρα, νέος σχετικά στο φόρουμ και ελπίζω να μην υπάρχει θέμα που ανεβάζω εδώ το post 
Αφορά την εφαρμογή Πληροφορικη ΧP την οποία δημιούργησα με στόχο να υποστηρίξει τους μαθητές της Γ' Λυκείου στην προετοιμασία τους στο μάθημα της Πληροφορικής.

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

Παράλληλα, ενσωματώνει στοιχεία παιχνιδοποίησης, όπως σύστημα XP, επίπεδα, achievements, προσωπικό προφίλ και πίνακα κατάταξης, ώστε να ενισχύεται το ενδιαφέρον και η συστηματική ενασχόληση των μαθητών.

Η εφαρμογή μπορεί να χρησιμοποιηθεί είτε online, μέσω σύνδεσης με Google account, είτε offline, ώστε να υπάρχει ευελιξία ανάλογα με τις ανάγκες του κάθε μαθητή.

Στόχος είναι να εμπλουτίζεται συνεχώς με νέο υλικό και επιπλέον ασκήσεις.
Οποιοδήποτε σχόλιο, παρατήρηση ή πρόταση θα ήταν ιδιαίτερα χρήσιμα.

Σύνδεσμος εφαρμογής:
https://play.google.com/store/apps/details?id=com.alexandros.glwssaapp

#72
Γ΄ Λυκείου / Απ: Εκσφαλμάτωση - Υποπρογράμμ...
Τελευταίο μήνυμα από alkisg - 29 Μαρ 2026, 09:41:24 ΜΜ
Παράθεση από: pgrontas στις 29 Μαρ 2026, 12:22:33 ΜΜ... αν ο πηγαίος κώδικας περιέχει πληροφορία που θα μπορέσει να βοηθήσει κάποιον προσεκτικό αναγνώστη του να εντοπίσει το λάθος, τότε είναι συντακτικό (δηλαδή μπορεί να εντοπιστεί πριν την εκτέλεση).

Παναγιώτη έτσι όμως κάποιος μαθητής θα μπορούσε να πει ότι το παρακάτω είναι συντακτικό, αφού το εντοπίζει πριν την εκτέλεση:
x <- 0
y <- 1/x

Νομίζω καλύτερα να τα λέμε "σφάλματα μεταγλώττισης" και "σφάλματα χρόνου εκτέλεσης". Δηλαδή αν το μήνυμα λάθους θα το βγάλει το IDE ή το τελικό .exe. Πατώντας το κουμπί "build" ή πατώντας το κουμπί "execute". Εντελώς ξεκάθαρος διαχωρισμός.

Τα "λεκτικά, συντακτικά, σημασιολογικά" είναι υποκατηγορίες του "μεταγλώττισης". Ας μην προμοτάρουμε το "συντακτικά" ώστε να καλύπτει και τις τρεις κατηγορίες.

Γκρι ζώνη θα μπορούσαν να θεωρηθούν οι "συμβουλές" που δίνουν κάποιοι έξυπνοι compilers, όπου εμφανίζεται ένα warning "εδώ μάλλον έχεις άπειρο loop" ή "εδώ βλέπω μη αρχικοποιημένη μεταβλητή" (static code analysis, linting κλπ).
Αλλά καταρχάς αυτά δεν αναφέρονται στο διδακτικό πακέτο και μπορούμε να μην τα αναφέρουμε ούτε εμείς,
και κατά δεύτερο, πάλι μπορούμε να τα κατατάξουμε στην παραπάνω ομαδοποίηση.
Εμποδίστηκε η εκτέλεση του προγράμματος; Ε, άρα είναι σφάλμα μεταγλώττισης.
Ξεκίνησε να εκτελείται το πρόγραμμα και σταμάτησε απότομα, πριν ολοκληρωθεί; Ε, άρα είναι σφάλμα χρόνου εκτέλεσης.

Έτσι το x <- 1/0 μπορεί να είναι είτε μεταγλώττισης είτε εκτέλεσης ανάλογα τον compiler, αν αποφασίσει να κάνει την πράξη κατά την μεταγλώττιση ή κατά την εκτέλεση. Συντακτικό δεν πρέπει να το πούμε ποτέ, είναι λάθος ορολογία, δεν παραβιάζεται κανένας συντακτικός κανόνας.

Άλλο παράδειγμα, τα άπειρα loop δεν είναι ούτε μεταγλώττισης ούτε εκτέλεσης αφού δεν υπάρχει κανένα μήνυμα σφάλματος ούτε από τον compiler ούτε από το .exe.
Μπορεί να είναι λογικά λάθη, μπορεί και να μην είναι αν π.χ. προγραμματίζω ένα ATM και δεν θέλω να τερματίζει ποτέ. Οπότε αν ο compiler ήταν έξυπνος και μου είχε βγάλει warning, θα επιλέξω να το αγνοήσω.

Αν ποτέ πάμε σε επαγγελματική γλώσσα προγραμματισμού και θέλουμε να διδάξουμε και τα warnings, τότε ένα warning μεταγλώττισης μπορεί ταυτόχρονα να είναι και warning/error χρόνου εκτέλεσης αλλά και λογικό λάθος, και τα τρία μαζί.
#73
Γ΄ Λυκείου / Απ: Εκσφαλμάτωση - Υποπρογράμμ...
Τελευταίο μήνυμα από petrosp13 - 29 Μαρ 2026, 06:48:56 ΜΜ
Κι αν σχεδιάσουμε έναν μεταγλωττιστή που δεν ελέγχει την αντιστοιχία των τύπων των παραμέτρων;

:D :D :D
#74
Γ΄ Λυκείου / Απ: Εκσφαλμάτωση - Υποπρογράμμ...
Τελευταίο μήνυμα από George Eco - 29 Μαρ 2026, 03:40:50 ΜΜ
Αν οι πραγματικές παράμετροι είναι άλλου τύπου από τις τυπικές, είναι συντακτικό.

Αν είναι ίδιος ο τύπος, τότε τό πρόβλημα μεταφέρεται στο όταν λαμβάνουν τιμή αυτές.
Αν Χ ακέραια και σε μία εντολή ΔΙΑΒΑΣΕ Χ αντί για ακέραιο βάλεις ένα όνομα σαν το 'ΜΕΝΕΛΑΟΣ' τότε είναι σφάλμα κατά την εκτέλεση, που οδηγεί σε αντικανονικό τερματισμό.  Άρα το πρόβλημα ΠΡΟΗΓΕΙΤΑΙ της διαδικασίας.

Οπότε είναι συντακτικό στα πλαίσια του μαθήματος.

 
#75
Γ΄ Λυκείου / Απ: Εκσφαλμάτωση - Υποπρογράμμ...
Τελευταίο μήνυμα από pgrontas - 29 Μαρ 2026, 12:22:33 ΜΜ
Παράθεση από: gpapargi στις 29 Μαρ 2026, 09:55:11 ΠΜΚανονικά (αν ξεφύγουμε από το πλαίσιο του μαθήματος) είναι σημασιολογικό λάθος. Στο μάθημα όμως, οτιδήποτε συμβεί κατά τη μετάφραση θεωρείται συντακτικό σφάλμα. Άρα στο πλαίσιο του μαθήματος είναι συντακτικό.
Σωστά. Το συγκεκριμένο πρόβλημα μας έχει απασχολήσει εξαιρετικά στο Στέκι και προτείνω στον @lala να ανατρέξει στις σχετικές συζητήσεις.

Προσωπικά έχω καταλήξει στο ότι ακόμα και στις κανονικές γλώσσες τα όρια μεταξύ σύνταξης και σημασιολογίας είναι αρκετά δισδιάκριτα και ευμετάβλητα ανάλογα με την γλώσσα.
Στα πλαίσια του μαθήματος, η συμβουλή που δίνω στους μαθητές μου είναι ότι αν ο πηγαίος κώδικας περιέχει πληροφορία που θα μπορέσει να βοηθήσει κάποιον προσεκτικό αναγνώστη του να εντοπίσει το λάθος, τότε είναι συντακτικό (δηλαδή μπορεί να εντοπιστεί πριν την εκτέλεση).
#76
Γ΄ Λυκείου / Απ: Εκσφαλμάτωση - Υποπρογράμμ...
Τελευταίο μήνυμα από gpapargi - 29 Μαρ 2026, 09:55:11 ΠΜ
Κανονικά (αν ξεφύγουμε από το πλαίσιο του μαθήματος) είναι σημασιολογικό λάθος. Στο μάθημα όμως, οτιδήποτε συμβεί κατά τη μετάφραση θεωρείται συντακτικό σφάλμα. Άρα στο πλαίσιο του μαθήματος είναι συντακτικό.

Μπορείς να κάνεις μια δοκιμή στο Διερμηνευτή. Θα δεις ότι δε θα ξεκινήσει να το τρέχει το πρόγραμμα αλλά θα το πιάσει κατά τον έλεγχο. Αφού δεν έχει ξεκινήσει η εκτέλεση του προγράμματος δεν μπορεί να είναι λάθος κατά την εκτέλεση.

Εξαίρεση είναι αν πας να βάλεις ακέραιους σε πραγματικές μεταβλητές που θα τρέξει κανονικά.
#77
Γ΄ Λυκείου / Απ: Εκσφαλμάτωση - Υποπρογράμμ...
Τελευταίο μήνυμα από evry - 29 Μαρ 2026, 09:46:16 ΠΜ
Ισχύει ότι τα "βοηθήματα" δεν είναι τα επίσημα εγχειρίδια του μαθήματος και τα χρησιμοποιείτε με δική σας ευθύνη.
#78
Πήρες λάθος βοήθημα  :)
#79
Γ΄ Λυκείου / Απ: Εκσφαλμάτωση - Υποπρογράμμ...
Τελευταίο μήνυμα από Kost_kp - 29 Μαρ 2026, 01:57:46 ΠΜ
Σε βοήθημα πάντως που έχω, λέει ότι διαφορετικός Τύπος σε πραγματικές τυπικές είναι κατά την εκτέλεση ενώ διαφορετικό πλήθος μεταβλητών σε πραγματικές - τυπικές είναι συντακτικό. Τι να ισχύει τελικά;
#80
Linux / Απ: Πως να κλείνετε "το intern...
Τελευταίο μήνυμα από gidarakos - 28 Μαρ 2026, 05:08:25 ΜΜ
Δούλεψαν και σε μένα οι καινούργιες εντολές του Άλκη: https://alkisg.mysch.gr/steki/index.php?topic=7955.msg101255#msg101255

Για την ιστορία, οι δικές μου τροποποιημένες εντολές δούλευαν αλλά είχαν διαφορετική αποτύπωση στο routing table:
Κώδικας: Bash
root@pc01:~# ip r
default via 10.x.y.1 dev enp0s25 
10.x.y.0/24 dev enp0s25 proto kernel scope link src 10.x.y.39

root@pc01:~# sudo ip r replace default via $IP
root@pc01:~# ip r
default via 10.x.y.39 dev enp0s25 
10.x.y.0/24 dev enp0s25 proto kernel scope link src 10.x.y.39 

root@pc01:~# sudo ip r replace default via ${IP%.*}.1
root@pc01:~# ip r
default via 10.x.y.1 dev enp0s25 
10.x.y.0/24 dev enp0s25 proto kernel scope link src 10.x.y.39