Διαγωνίσματα για τη χρονιά 2013-2014

Ξεκίνησε από nikolasmer, 11 Σεπ 2013, 02:46:33 ΜΜ

« προηγούμενο - επόμενο »

nikolasmer

Μαζεύω ότι ψυχικά αποθέματα μου έχουν απομείνει και παραθέτω 2 διαγωνίσματα με σχεδόν ίδιο θέμα Α. Το ενα έχει μέχρι δομή ακολουθίας και το δεύτερο περιέχει και δομή επιλογής.

Θα ήθελα τις σκέψεις και τις παρατηρήσεις σας ως πρός τα θέματα.
Μερεντίτης Νικόλαος
Πληροφορικός

magic_technology

Ωραία διαγωνίσματα ευχαριστούμε..... Μήπως θα μπορούσατε να αναρτήσετε και τις απαντήσεις τους;

nikolasmer

#2
Άλλα 2 διαγωνίσματα μέχρι και τις δομές επανάληψης.
Το Θέμα Α είναι σχεδόν παρόμοιο και στα δυο διαγωνίσματα.
Το Θέμα Β είναι ίδιο και στα δυο μόνο που το Β2 ερώτημα στο ενα έχει όσο και στο άλλο έχει μέχρις_ότου σαν κεντρική δομή επανάληψης.
Τα θέματα Γ και Δ στο 1ο βγήκαν αρκετά μεγάλα και δύσκολα (αν σκεφτεί κάποιος οτι η εκφώνηση δεν είναι και τόσο ξεκάθαρη στη διατύπωσή της).
Ιδέες πήρα από τις πανελλήνιες εξετάσεις, από τον ΟΕΦΕ και το Στέκι όσον αφορά τα ερωτήματα των θεμάτων.
Βγήκαν πιο δύσκολα απ'οσο σκεφτόμουν αρχικά στην επίλυσή τους.
Για ενδεικτικές λύσεις θα πρέπει όποιος θέλει να περιμένει λίγο διάστημα.
Και πάλι θα ήθελα να ζητήσω τις παρατηρήσεις σας και τις ενστάσεις σας, τον σχολιασμό σας ως προς τα θέματα.
Ευχαριστώ.

Μια λύση για το Α5 από το διαγώνισμα 1ο παρατίθεται παρακάτω. Χρησιμοποίησα τον Διερμηνευτή της γλώσσας.
Μερεντίτης Νικόλαος
Πληροφορικός

ikariofil

Ωραία διαγωνίσματα και τα 2
Σου έχω στείλει pm για το Α5 του πρώτου διαγωνίσματος

magic_technology

Μπράβο σας για τα διαγωνίσματα, έχουν πολύ καλό επίπεδο.
Θα ήθελα να ζητήσω την βοήθεια σας στο επαναληπτικό διαγώνισμα της δομής επιλογής στο Α5 θέμα. Μπορείτε σας παρακαλώ να μου εξηγήσετε πως γίνετε αυτή η απλοποίηση;;;;;

Α5. Έστω ότι τα Χ, Υ, Ζ και W παίρνουν αριθμητικές τιμές. Να ξαναγράψετε το παρακάτω τμήμα κώδικα χωρίς τη χρήση λογικών τελεστών και με τις λιγότερες δυνατές λογικές εκφράσεις

Αν ( Χ < Υ και όχι Υ < Ζ και Χ ≠ W) και ( Υ > W ή Υ = W) τότε
  Εμφάνισε "TROLL"
Τέλος_αν

Εγώ ακολουθώ τη παρακάτω λογική και δεν μου βγαίνει......

( Χ < Υ και όχι Υ < Ζ και Χ ≠ W) και ( Υ > W ή Υ = W)
            ↕
( Χ < Υ και  Υ > Ζ και Χ ≠ W) και ( Υ > = W)
            ↕
( Χ < Υ Ή ΟΧΙ  Υ > Ζ Ή ΟΧΙ Χ ≠ W) και ( Υ > = W)
            ↕
( Χ < Υ Ή Υ < Ζ Ή Χ = W) και ( Υ > = W)

Παρακάτω; Μπορεί κάποιος να με βοηθήσει;

ntzios kostas

Στο Α5 υπάρχει θέμα. Οι δύο αλγοριθμοι που παρουσιάζεις δεν ειναι ισοδύναμοι πχ για μαθητές=0. Επίσης κάτι δεν πάει καλά με το κ και το σ που μηδενίζονται μέσα στην επανάληψη. Να σκεφτείς ότι το σ δεν αυξάνεται πουθενα κατά β.

Η άποψη μου είναι ότι δεν γίνεται αυτό με μία επανάληψη λόγω της περίπτωσης μαθητές =0
Το μάθημα Ανάπτυξη Εφαρμογών δεν έχει σαν στόχο την εκμάθηση κάποιου συγκεκριμένου προγραμματιστικού περιβάλλοντος ούτε την καλλιέργεια προγραμματιστικών δεξιοτήτων από τη μεριά των μαθητών. Δεν αποσκοπεί στη λεπτομερειακή εξέταση της δομής, του ρεπερτορίου και των συντακτικων κανόνων κάποιας γλώσσας...

nikolasmer

Παράθεση από: magic_technology στις 07 Νοε 2013, 09:07:08 ΜΜ
Μπράβο σας για τα διαγωνίσματα, έχουν πολύ καλό επίπεδο.
Θα ήθελα να ζητήσω την βοήθεια σας στο επαναληπτικό διαγώνισμα της δομής επιλογής στο Α5 θέμα. Μπορείτε σας παρακαλώ να μου εξηγήσετε πως γίνετε αυτή η απλοποίηση;;;;;

Α5. Έστω ότι τα Χ, Υ, Ζ και W παίρνουν αριθμητικές τιμές. Να ξαναγράψετε το παρακάτω τμήμα κώδικα χωρίς τη χρήση λογικών τελεστών και με τις λιγότερες δυνατές λογικές εκφράσεις

Αν ( Χ < Υ και όχι Υ < Ζ και Χ ≠ W) και ( Υ > W ή Υ = W) τότε
  Εμφάνισε "TROLL"
Τέλος_αν

Εγώ ακολουθώ τη παρακάτω λογική και δεν μου βγαίνει......

( Χ < Υ και όχι Υ < Ζ και Χ ≠ W) και ( Υ > W ή Υ = W)
            ↕
( Χ < Υ και  Υ > Ζ και Χ ≠ W) και ( Υ > = W)
            ↕
( Χ < Υ Ή ΟΧΙ  Υ > Ζ Ή ΟΧΙ Χ ≠ W) και ( Υ > = W)
            ↕
( Χ < Υ Ή Υ < Ζ Ή Χ = W) και ( Υ > = W)

Παρακάτω; Μπορεί κάποιος να με βοηθήσει;
Εννοούσα οτι μπορούν να χρησιμοποιηθούν, αν απαιτηθεί, εμφωλευμένες δομές επιλογής, αλλά να καταργήσουμε τελείως τους λογικούς τελεστές και, οχι ή. Είχε μπει ενα παρόμοιο θέμα σε πανελλήνιες επαναληπτικές του 2012 νομίζω. Ρίξε μια ματιά.
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

#7
Για τη λύση που παραθέτω στο Α5 , έχει δίκαιο ο κύριος Ντζιός. Δεν έχω αυξήσει τον αθροιστή των βαθμολογιών μέσα στην επανάληψη καθόλου. Και επίσης για το μαθητές = 0 ούτε καν το σκέφτηκα  και γι' αυτό διάβασα το όνομα του μαθητή μια φορά εκτός επανάληψης. Μπορεί να μη γίνεται τελικά με μια επανάληψη.
Νομίζω οτι τελικά γίνεται.
Παραθέτω μια καινούρια λύση για το Α5. Την έτρεξα με Διερμηνευτή και δουλέυει.
Το καινούριο αρχείο επισυνάπτεται, ενώ το παλιό, σε προηγούμενο post παραπάνω, είναι άκυρο.

Παραθέτω τον κώδικα για τα θέματα Γ και Δ στο πρώτο διαγώνισμα, με το παιχνίδι με τα ζάρια και με τις αγελάδες.
Επίσης παραθέτω τον κώδικα για το θέμα Γ από το δεύτερο διαγώνισμα με τα ξενοδοχεία και τον κώδικα από το θέμα Δ με τη Μετεωρολογική Υπηρεσία πάλι από το δεύτερο διαγώνισμα.
Αν για κάποιο λόγο υπάρχει διαφωνία ή κάποια παρατήρηση, εδώ είμαι να αλλάξω τον κώδικα.
Ο αλγόριθμος του θέματος Γ και το πρόγραμμα του θέματος Δ έγιναν με τη βοήθεια του Διερμηνευτή της Γλώσσας.
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

Παραθέτω τον κώδικα για τα θέματα Γ και Δ στο πρώτο διαγώνισμα, με το παιχνίδι με τα ζάρια και με τις αγελάδες.
Επίσης παραθέτω τον κώδικα για το θέμα Γ από το δεύτερο διαγώνισμα με τα ξενοδοχεία και τον κώδικα από το θέμα Δ με τη Μετεωρολογική Υπηρεσία πάλι από το δεύτερο διαγώνισμα.
Αν για κάποιο λόγο υπάρχει διαφωνία ή κάποια παρατήρηση, εδώ είμαι να αλλάξω τον κώδικα.
Όλα τα θέματα λύθηκαν με τη βοήθεια του Διερμηνευτή της Γλώσσας.
Μερεντίτης Νικόλαος
Πληροφορικός

ntzios kostas

Σωστή είναι, απλά η συνθήκη  αν μαθητης<>0 δεν χρειάζεται πλέον, έτσι όπως την λύνεις.

Δεν μπορω όμως να καταλάβω το νόημα αυτής της άσκησης, από τη στιγμή που η απάντηση είναι τόσο μπερδεμένη που χρειαζεται διερμηνευτής για να την καταλάβεις.
Το μάθημα Ανάπτυξη Εφαρμογών δεν έχει σαν στόχο την εκμάθηση κάποιου συγκεκριμένου προγραμματιστικού περιβάλλοντος ούτε την καλλιέργεια προγραμματιστικών δεξιοτήτων από τη μεριά των μαθητών. Δεν αποσκοπεί στη λεπτομερειακή εξέταση της δομής, του ρεπερτορίου και των συντακτικων κανόνων κάποιας γλώσσας...

nikolasmer

Παράθεση από: ntzios kostas στις 08 Νοε 2013, 09:42:12 ΜΜ
Δεν μπορω όμως να καταλάβω το νόημα αυτής της άσκησης, από τη στιγμή που η απάντηση είναι τόσο μπερδεμένη που χρειαζεται διερμηνευτής για να την καταλάβεις.
Ναι έχετε δίκαιο. Η επίλυσή της είναι αρκετά σύνθετη.
Είχα κάποτε την τιμή να γνωρίσω έναν αξιολογότατο συνάδελφο ο οποίος οποιαδήποτε άσκηση και αν έβαζε στους μαθητές του, αφού την έλυναν σωστά τους έλεγε : " Ωραία. Τώρα προσπάθησε να την λύσεις με λιγότερες εντολές" ή "Τώρα λύσε την με μια επανάληψη". Παρατήρησα πως η μέθοδός του είχε αντίκρυσμα και οι μαθητές του καταλάβαιναν καλύτερα οποιαδήποτε δομή, πως λειτουργούσε, γιατί τη χρειαζόμαστε και πως μπορούμε να την βελτιώσουμε. Είδα οτι οι μαθητές του με το να ταλαιπωρούν τον κώδικα αρκετά έβγαιναν κερδισμένοι. Αυτό ήθελα να πετύχω και γω με αυτό το ερώτημα.

Παράθεση από: ntzios kostas στις 08 Νοε 2013, 09:42:12 ΜΜ
Σωστή είναι, απλά η συνθήκη  αν μαθητης<>0 δεν χρειάζεται πλέον, έτσι όπως την λύνεις.
Αυτό είναι απόλυτα σωστό.
Ευχαριστώ πάρα πολύ για τις παρατηρήσεις σας κύριε Ντζιε. 
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

Οι λύσεις από τα 2 παραπάνω διαγωνίσματα  :)
Ελπίζω να πήγαν όλα καλά.  ;)
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

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

Το Θέμα Β ΙΙ (σχετικά με το αποτέλεσμά του) είναι ενα αστείο και μόνο. Τίποτα περισσότερο. Το έβγαλα για να ελαφρύνω την κατάσταση.
Το Θέμα Ε είναι μπόνους και δεν απαιτεί λύση στο τρίωρο. Μπιχτή είναι περισσότερο.

Λύσεις στο προσεχές διάστημα.
Ευχαριστώ

Μερεντίτης Νικόλαος
Πληροφορικός

ikariofil


apoldem

Αρκετά ανεβασμένο ως σύνολο, ακόμη και για 3 ώρες, είναι νομίζω πολλά!
# Το Α6 παραείναι δύσκολο για 4 μόρια μόνο (εκτός αν το κάνατε στην τάξη και θα πρέπει απλώς να το θυμηθούν). Το ρήμα "δημιουργεί" στην εκφώνηση καλύτερα να γίνει "γεμίζει" ή κάτι τέτοιο, αφού ο πίνακας υποτίθεται έχει ήδη δημιουργηθεί. Είναι πολύ δυνατό πάντως.
# Το Β βατό και διασκεδαστικό.
# Το Γ πολύ έξυπνο. Μια διευκρίνηση χρειάζεται στον υπολογισμό του μέσου όρου (υποέρωτημα 3.ι). "..των θερμοκρασιών που έχουν παρατηρηθεί" δεν σημαίνει τίποτα, αφού και αυτές που είναι στον πίνακα Θ[60], αλλά και οι ημερήσιες θερμοκρασίες, όλες έχουν παρατηρηθεί. Θέλεις τον μέσο όρο του Θ[60], ή τον μέσο όρο όλων των ημερήσιων θερμοκρασιών; Αν κρίνω από τα 4 μόρια, μάλλον το πρώτο.
# Το Δ, πολύ πολύ έξυπνο και δυνατό (από μόνο του το θέμα πλησιάζει την μία ώρα μέχρι να γραφεί στο καθαρό)

bagelis

Ωραίο ανεβασμένο διαγώνισμα για καλούς - πολύ καλούς. Οι άλλοι καλό είναι να διαλέξουν κάτι πιο απλό... :):):)

Μία απορία: ΘΕΜΑ Α. Α1. γράφει: α > 0 = Ψευδής
έχω την εντύπωση ότι αυτό δεν υποστηρίζεται από τη γλώσσα. Τι λέτε;

apoldem

Δεν βλέπω γιατί να μην υποστηρίζεται. Κανονική λογική έκφραση είναι.
Αυτό που παρατηρώ είναι ότι στην ΓΛΩΣΣΑ δεν δουλεύει σωστά η μετατροπή από μαθηματική έκφραση σε λογική. Ή καλύτερα, δουλεύει, αλλά μόνο την πρώτη φορά ή όταν προηγείται το λογικό ΟΧΙ. Για παράδειγμα το
α ← 2 < 5 = ΑΛΗΘΗΣ = (1 < 2) = ΟΧΙ 2 < 1

περνάει κανονικά, ενώ το ίδιο χωρίς την δεύτερη παρένθεση
α ← 2 < 5 = ΑΛΗΘΗΣ = 1 < 2 = ΟΧΙ 2 < 1

δεν περνάει. Κολλάει στην σύγκριση ΑΛΗΘΗΣ = 1. Είναι θέμα του parser ή της σειράς των κανόνων. Κανονικά και η δεύτερη γραμμή είναι σωστή

itt

Παράθεση από: apoldem στις 13 Ιαν 2014, 01:01:40 ΜΜ
Δεν βλέπω γιατί να μην υποστηρίζεται. Κανονική λογική έκφραση είναι.
Αυτό που παρατηρώ είναι ότι στην ΓΛΩΣΣΑ δεν δουλεύει σωστά η μετατροπή από μαθηματική έκφραση σε λογική. Ή καλύτερα, δουλεύει, αλλά μόνο την πρώτη φορά ή όταν προηγείται το λογικό ΟΧΙ. Για παράδειγμα το
α ← 2 < 5 = ΑΛΗΘΗΣ = (1 < 2) = ΟΧΙ 2 < 1

περνάει κανονικά, ενώ το ίδιο χωρίς την δεύτερη παρένθεση
α ← 2 < 5 = ΑΛΗΘΗΣ = 1 < 2 = ΟΧΙ 2 < 1

δεν περνάει. Κολλάει στην σύγκριση ΑΛΗΘΗΣ = 1. Είναι θέμα του parser ή της σειράς των κανόνων. Κανονικά και η δεύτερη γραμμή είναι σωστή

Βασικά δεν καταλαβαίνω τι εννοείς "κανονικά". Εφόσον η γλώσσα ( ie , το βίβλιο του ΑΕΠΠ) δεν ορίζει πουθενά implicit conversion από αριθμητικό τύπο σε λογικό, "κανονικό" είναι  ότι μια έκφραση της μορφής ΑΛΗΘΗΣ = 1 δεν έχει νόημα στα πλαίσια του ΑΕΠΠ.

bagelis

Επιμένοντας, δεν νομίζω ότι είναι στο πνεύμα του σχολικού τέτοιες εκφράσεις....  Συντακτικά δεν μπορώ να το υποστηρίξω γιατί δεν υπάρχει κάπου επίσημο συντακτικό της γλώσσας μας. Αν όμως ήθελαν οι συγγραφείς κάτι τέτοιο δεν θα έπρεπε να υπήρχε προτεραιότητα μεταξύ των τελεστών σύγκρισης ή μία αναφορά στο ότι η προτεραιότητα είναι από αριστερά προς τα δεξιά;

apoldem

Σε καμιά περίπτωση το προηγούμενο σχόλιο μου δεν είχε σκοπό να μειώσει τον διερμηνευτή της ΓΛΩΣΣΑ. Το πρόγραμμα είναι εντυπωσιακά καλό και ξεπερνά κατά πολύ τον σκοπό για τον οποίο υπάρχει (της απλής εκμάθησης). Δεν είναι όμως κακό να βλέπουμε και τα όριά του. Ακόμη και τα μεγάλα ονόματα των compilers της java και της C, έχουν όρια (και μάλιστα παρόμοια με την ΓΛΩΣΣΑ).
Για την λογική έκφραση, το ΑΛΗΘΗΣ = 1 πράγματι δεν έχει νόημα στην ΑΕΠΠ. Εμείς όμως δεν ζητάμε αυτό αλλά το «ΑΛΗΘΗΣ = 1 < 2», το οποίο έχει νόημα. Η ΓΛΩΣΣΑ αν το γράψουμε ως
α <- 1 < 2 = ΑΛΗΘΗΣ

τότε το περνάει. Αν το γράψουμε ανάποδα
α <- ΑΛΗΘΗΣ = 1 < 2

τότε νομίζει ότι πάμε να συγκρίνουμε το ΑΛΗΘΗΣ με το 1. Αν υποχρεώσουμε τον parser να υπολογίσει πρώτα την παρένθεση, τότε το δέχεται κανονικά.
α <- ΑΛΗΘΗΣ = (1 < 2)
\
Επίσης το δέχεται χωρίς λάθος αν προηγείται το ΟΧΙ!!!
α <- ΑΛΗΘΗΣ = ΟΧΙ 1 > 2

Επαναλαμβάνω, δεν σημαίνει τίποτα για την αξιοπιστία της ΓΛΩΣΣΑ. Είναι για να 'χουμε να ασχολούμαστε κι εμείς οι πληροφορικοί. Φυσικά από θεωρητικής πλευράς οι εκφράσεις «ΑΛΗΘΗΣ = 1 < 2» και «1 < 2 = ΑΛΗΘΗΣ» είναι και οι δύο σωστές και ισοδύναμες, άσχετα με το τι κάνει η ΓΛΩΣΣΑ.
--
bagelis έχεις απόλυτο δίκιο. Οι εκφράσεις που έγραψα στο προηγούμενο post  δεν έχουν καμία σχέση με το πνεύμα των εξετάσεων ούτε και προσφέρουν τίποτα στον μαθητή. Κουβέντα να γίνεται...

alkisg

@apoldem: δεν είναι θέμα αδυναμίας του Διερμηνευτή, επίτηδες έχει υλοποιηθεί έτσι με βάση την προτεραιότητα των τελεστών.
Άλλο παράδειγμα:
Κώδικας: ΓΛΩΣΣΑ
ΠΡΟΓΡΑΜΜΑ Δοκιμή
ΑΡΧΗ
  ΓΡΑΨΕ 1 = 1 = ΑΛΗΘΗΣ  ! Αποδεκτό
  ΓΡΑΨΕ ΑΛΗΘΗΣ = 1 = 1  ! Συντακτικό λάθος
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ


Διαβάζουμε από αριστερά προς τα δεξιά την πρώτη εντολή:
"Το 1 είναι ίσο με 1, αληθές. Και το αποτέλεσμα της σύγκρισης, ΑΛΗΘΗΣ, είναι ίσο με ΑΛΗΘΗΣ". Μια χαρά σωστή συντακτικά έκφραση.
Διαβάζουμε από αριστερά προς τα δεξιά την δεύτερη εντολή:
"Το ΑΛΗΘΗΣ είναι ίσο με 1... ωπ, δεν γίνεται, δεν υπάρχει σύγκριση".

Άρα όλα καλά με το Διερμηνευτή, μια χαρά συμπεριφέρεται, τα παραδείγματα είναι που έχουν συντακτικά λάθη.

Σχετική σελίδα της βοήθειας: https://alkisg.mysch.gr/ΓΛΩΣΣΑ/Τελεστές/

itt

ΠαράθεσηΓια την λογική έκφραση, το ΑΛΗΘΗΣ = 1 πράγματι δεν έχει νόημα στην ΑΕΠΠ. Εμείς όμως δεν ζητάμε αυτό αλλά το «ΑΛΗΘΗΣ = 1 < 2», το οποίο έχει νόημα.

Γιατί να έχει νόημα, αφού οι λογικοί τελεστές είναι left associative;

Το ΑΛΗΘΗΣ = 1 < 2 είναι σαν να έχεις γράψει  (AΛΗΘΗΣ = 1 ) < 2 το οποίο δεν έχει νόημα στην Γλώσσα.

ΠαράθεσηΦυσικά από θεωρητικής πλευράς οι εκφράσεις «ΑΛΗΘΗΣ = 1 < 2» και «1 < 2 = ΑΛΗΘΗΣ» είναι και οι δύο σωστές και ισοδύναμες, άσχετα με το τι κάνει η ΓΛΩΣΣΑ.

Δεν ξέρω τι εννοείς με το "από θεωρητικής πλευρἀς". Aπό θεωρητική (και από πρακτικής;) πλευράς, εξαρτάται. Εξάρταται όπως είδες από το κατα πόσον ορίζεται implicit conversion από ακέραιο σε λογικό τύπο και από το precedence των τελεστών.

Πρακτικά στην C++ ας πούμε, η έκφραση

auto expr = true == 1 < 2;


γίνεται compiled κανονικά (με -Wall καταφέρνεις να πάρεις ένα warning: suggest parentheses around comparison in operand of '==' [-Wparentheses] )

αλλά στην Haskell δεν γίνεται compiled.


apoldem

Ειλικρινά ζητώ συγνώμη για το αρχικό σχόλιο. Φάνηκε σαν να ήθελα να κατηγορήσω την ΓΛΩΣΣΑ, πράγμα πέρα για πέρα λάθος. Χρησιμοποιώ την ΓΛΩΣΣΑ και το Epoptes καθημερινά και είναι και τα δύο εξαιρετικά προγράμματα! Το σφάλμα είναι αποκλειστικά δικό μου.
Το θέμα ξεκίνησε σαν καλαμπούρι για τις λογικές εκφράσεις. Δεν έχει ούτε εκπαιδευτική ούτε καμία άλλη σημασία. Ούτε και ο τρόπος που γράφω τις λογικές εκφράσεις στα σχόλιά μου, υπονοεί ότι αυτός είναι ο προτεινόμενος τρόπος (χωρίς δηλαδή παρενθέσεις). Προσωπικά δεν θα διακινδύνευα να γράψω καμία τέτοια έκφραση χωρίς παρενθέσεις ακόμη και στον πιο έξυπνο compiler του κόσμου. Επαναλαμβάνω, ένα καλαμπούρι ήταν.
Νομίζω δίνεται στους διάφορους compilers μαγικές ικανότητες που δεν τις έχουν. Η σύγκριση «λογική_έκφραση=λογική_τιμή» είναι ίδια με το «λογική_τιμή=λογική_έκφραση», επειδή η ισότητα είναι αντιμεταθετική στα μαθηματικά και στην κοινή λογική. Το ότι η μία αναγνωρίζεται και η άλλη όχι δεν σημαίνει τίποτα. Είναι και οι δύο σωστές. Οι "μεγάλες" γλώσσες C και Java (και πιθανόν και άλλες), χτίζουν συντακτικό δέντρο για την λογική έκφραση και έτσι πιάνουν και κάποιες πιο ιδιαίτερες περιπτώσεις. Ακόμη και το συντακτικό δέντρο κάνει λάθη σε περιπτώσεις αμφισημίας (ανάλογα με τον τρόπο που χτίζεται). Γι' αυτό υπάρχουν οι παρενθέσεις.
Ζητώ και πάλι συγνώμη. Δεν ήθελα να θίξω κανέναν και ειδικά τον συγγραφέα της ΓΛΩΣΣΑ στον οποίο τρέφω απεριόριστη εκτίμηση.

alkisg

Μην ανησυχείς καθόλου δεν θίχτηκε κανείς, ενημερωτικά τα γράφω!
Και ο Διερμηνευτής χτίζει συντακτικό δέντρο και για τις εκφράσεις και για τις εντολές. Αναγκαστικά, για να υλοποιηθεί σωστά η ΓΛΩΣΣΑ, ορίστηκε πρώτα η γραμματική της και μετά υλοποιήθηκε κανονικά με λεκτικό και συντακτικό αναλυτή και εσωτερικές δεντρικές αναπαραστάσεις και όλα τα σχετικά.

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

itt

Παράθεση από: apoldem στις 14 Ιαν 2014, 03:37:32 ΜΜ
Νομίζω δίνεται στους διάφορους compilers μαγικές ικανότητες που δεν τις έχουν.

Σε ποιες αναφέρεσαι; Δεν βλέπω τι το μαγικό έχει ειπωθεί.

Παράθεση από: apoldem στις 14 Ιαν 2014, 03:37:32 ΜΜ
Η σύγκριση «λογική_έκφραση=λογική_τιμή» είναι ίδια με το «λογική_τιμή=λογική_έκφραση», επειδή η ισότητα είναι αντιμεταθετική στα μαθηματικά και στην κοινή λογική.

Σαφώς και είναι η ίδια,το 1 στο "ΑΛΗΘΗΣ = 1" όμως δεν είναι ούτε λογική έκφραση ούτε λογική τιμή.

Παράθεση από: apoldem στις 14 Ιαν 2014, 03:37:32 ΜΜ
Το ότι η μία αναγνωρίζεται και η άλλη όχι δεν σημαίνει τίποτα. Είναι και οι δύο σωστές. Οι "μεγάλες" γλώσσες C και Java (και πιθανόν και άλλες), χτίζουν συντακτικό δέντρο για την λογική έκφραση και έτσι πιάνουν και κάποιες πιο ιδιαίτερες περιπτώσεις. Ακόμη και το συντακτικό δέντρο κάνει λάθη σε περιπτώσεις αμφισημίας (ανάλογα με τον τρόπο που χτίζεται). Γι' αυτό υπάρχουν οι παρενθέσεις.

Σημαινεί ότι πολύ απλά η Haskell δεν επιτρέπει κανένα implicit conversion σε αντίθεση με  την C και την  Java. Αν και δεν είμαι σίγουρος αν αναφέρεσαι στο conversion του τύπου. Πάντως σαφώς και παίζει ρόλο σε αυτό που συζητάμε.

nikolasmer

#25
Παραθέτω αποσπασματικά μερικές από τις λύσεις σε ορισμένα θέματα του παραπάνω 3ου διαγωνίσματος.
Στο Α1 παραθέτω την λύση όπως την είχα στο μυαλό μου εξαρχής. Ορισμένοι μου έβγαλαν το Α1β με διαφορετικό τρόπο με μια εντολή εκχώρισης τιμής. Όλες οι λύσεις που παράγουν το ίδιο αποτάλεσμα φυσικά είναι αποδεκτές.
Στο Θέμα Γ παραθέτω μια δικιά μου λύση και πάλι όπως την είχα εγώ στο μυαλό μου όταν έβγαζα το θέμα. Αν υπάρχει κάποια ασάφεια ή λάθος στον κώδικα ας ειδιποιήσει κάποιος για να αλαχθεί ο κώδικας. Επίσης αν κάποιος έχει άλλη λύση θα είναι πολύ ωραίο να τη μοιραστεί.
Ο κώδικας είναι εξ΄ολοκλήρου γραμμένος στον Διερμηνευτή της ΓΛΩΣΣΑΣ.
Ευχαριστώ όλους για τις παρατηρήσεις. Στις επόμενες ημέρες και οι υπόλοιπες ΕΝΔΕΙΚΤΙΚΕΣ λύσεις.

p.s. Αυτό που με εντυπωσίασε στις λύσεις είναι του Α6 όπου και περίμενα μια λύση με 9-10 επαναλήψεις και η οποία είχα την εντύπωση οτι ήταν μοναδική και όντως δύσκολη, παρόμοια με ενα θέμα πανελληνίων των τελευταίων ετών. Αλλά με μια επανάληψη που θα γίνει 20 φορές πετυχαίνει κάποιος το ίδιο αποτέλεσμα "περνώντας" τον ίδιο πίνακα δυο φορές. Ούτε καν με πήγε εκεί το μυαλό. :D
 
ΔΙΟΡΘΩΣΗ: Και φυσικά υπήρχε λάθος στην αρχική έκδοση της λύσης του θέματος Γ. Οπότε ανέβασα μια καινούρια.
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

Οι υπόλοιπες λύσεις του παραπάνω 3ου διαγωνίσματος.
Στο Α4 εχω την εντύπωση πως και η δεύτερη λύση που παραθέτω στον κώδικα, είναι σωστή.
Στο Α6 το οποίο θεωρούσα δύσκολο, παραθέτω 3 λύσεις στον κώδικα. Η πρώτη είναι αυτή που είχα εγώ στο μυαλό μου και οι άλλες 2 είναι από μαθητές. Πολύ όμορφες και οι δυο.
Τέλος υπάρχει μια ενδεικτική λύση του Θέματος Δ.
Ελπίζω να μην έχω κάνει καμία πατάτα και πάλι.

Θα ακολουθήσουν όλες οι ενδεικτικές λύσεις του διαγωνίσματος σε ενα αρχείο word.
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

#27
Καλησπέρα σε όλους.
Πιο κάτω επισυνάπτεται το έγγραφο που έχει συγκεντρωμένες όλες τις απαντήσεις του 3ου διαγωνίσματος.
Επιπλέον σε ορισμένους μαθητές μου άλλαξα το Θέμα Γ και Δ με κάτι πιο εύκολο όπως επίσης και στη θέση του ερωτήματος Α6 μπήκε ενα δεύτερο ερώτημα θεωρίας Α5 β) για να ελαφρυνθεί λίγο η όλη κατάσταση. Τα υπόλοιπα παρέμειναν ίδια.
Ολόκληρο το (πιο εύκολο) θέμα (με τις αλλαγές που ανέφερα) επισυνάπτεται και αυτό παρακάτω όπως επίσης και οι λύσεις του μαζί με τον κώδικα του θέματος Δ στο Διερμηνευτή.
Αν και πάλι υπάρχουν προβλήματα και αβλεψίες στον κώδικα θα ήθελα τις παρατηρήσεις σας.
Ευχαριστώ όλους.

@edit:(6-3-2014)
Κοιτώντας τις λύσεις που ανέβασα είδα μια πατάτα από τις πολλές που κάνω. Στο ερώτημα Α1. α) ανέβασα σαν λύση, την εκφώνηση της άσκησης. :-[
Οπότε η απάντησή της είναι ο εξής κώδικας:
Διάβασε α
Αν α > 0 τότε
  κ ← Ψευδής
αλλιώς
  κ ← Αληθής
Τέλος_αν
Εμφάνισε κ


Συγνώμη για το παραπάνω.

AEPP ALIVE FOREVER 
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

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

Μεγάλο μέρος του κώδικα του Α5 ερωτήματος παρθηκε από τις συζητήσεις
https://alkisg.mysch.gr/steki/index.php?topic=2685.0
και
https://alkisg.mysch.gr/steki/index.php?topic=239.msg64049#msg64049

Λύσεις στο προσεχές διάστημα.
Ευχαριστώ και καλό κουράγιο σε όλους.


AEPP ALIVE FOREVER

Μερεντίτης Νικόλαος
Πληροφορικός

twisted

Ευχαριστούμε για άλλο ένα πολύ ωραίο διαγώνισμα!!!!  1 παρατήρηση και 1 ερώτηση έχω.

Η παρατήρηση αφορά την ερώτηση θεωρίας μιας και νομίζω ότι για αυτά που ζητάς είναι λίγες οι 6 μονάδες.
Η ερώτηση τώρα. Δεν είναι λίγο μεγάλη η εκφώνηση του θέματος Γ; Μόνο εμένα γκρινιάζουν που τα θέματα που τους δίνω είναι 6 και 7 σελίδες;;;;  :-\

nikolasmer

Ναι όντως οι μονάδες της θεωρίας είναι λίγες αλλά αισθάνομαι άσχημα από το να κόψω μονάδες από άλλα ερωτήματα και από την άλλη δεν θα ήθελα να μη βάλω καθόλου θεωρία, για να δώσω λόγω να τη διαβάσουν και αυτά τα θεωρητικά κομμάτια.
Όσο για την ερώτησή σου φίλε twisted έχω να σου απαντήσω πως θα φάω τέτοιο κράξιμο που δεν λέγεται. Θα προσπαθήσω να το συμμαζέψω λιγάκι.
Ευχαριστώ πάρα πολύ για το feedback. Ευχομαι να είσαι καλά. Καλό αγώνα.
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

#31
Παραθέτω ένα άλλο 4ο Διαγώνισμα προς επίλυση (Νο2) το οποίο καλύπτει ύλη μέχρι και τους δισδιάστατους πίνακες, ταξινόμηση, στοίβα και ουρά και 6ο κεφάλαιο θεωρία "εισαγωγή στον προγραμματισμό".
Το Θέμα Β δεν άλλαξε καθόλου και είναι ίδιο με το προηγούμενο ενώ μικροαλλαγές έγιναν στο Θέμα Α με περισσότερα Σ/Λ και λιγότερη έως καθόλου θεωρία και ερωτήσεις ανάπτυξης. Τα θέματα Γ και Δ είναι διαφορετικά. Γενικά πιστεύω πως είναι πιο εύκολα σαν ενιαίο σύνολο.

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

Λύσεις και απο τα δυο διαγωνίσματα προσεχώς.

Καλή δύναμη σε όλους.

AEPP ALIVE FOREVER

edit: (18-3-2014) Φαίνεται πως το συνημμένο αρχείο δεν δουλέυει οπότε το ξανα ανέβασα παρακάτω σε επόμενο post.
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

Γειά σε όλους.
Παραθέτω τις προτεινόμενες απαντήσεις από το 4ο Διαγώνισμα Νο 2 σε ενα Word καθώς επίσης και τους αλγορίθμους και τα προγράμματα από το Θεμα Α , Γ και Δ γραμμένα στον Διερμηνευτή της ΓΛΩΣΣΑΣ. Τα περισσότερα έχουν και δεδομένες τιμές στο Αρχείο Εισόδου.

Καλή δύναμη και κουράγιο σε όλους
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

#33
Επειδή το συνημμένο αρχείο "4ο ΔΙΑΓΩΝΙΣΜΑ 2013 - 2014 No2.doc "παραπάνω φαίνεται πως δεν δουλέυει, το ανεβάζω και πάλι.
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

Λόγω περιορισμού στα συνημμένα, συνεχίζω με τα υπόποιπα αρχεία των αλγορίθμων και προγραμμάτων του Διερμηνευτή.
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

Γειά σε όλους.
Επισυνάπτω ένα 5ο Διαγώνισμα προς επίλυση. Καλύπτει όλη την ύλη, δίνοντας ίσως μεγαλύτερη βαρύτητα στα υποπρογράμματα.

  • Το Θέμα Α κρύβει ορισμένες παγίδες στα Σ-Λ αλλά όχι κάτι το ιδιαίτερο. Για το Θέμα Α4 πήρα ιδέες από την παρακάτω συζήτηση στο στέκι: https://alkisg.mysch.gr/steki/index.php?topic=302.0
  • Το Θέμα Β είναι παρόμοιας εκφώνησης με το Θέμα Β πανελλήνιες 2007 το οποίο και μου άρεσε αρκετά.
  • Το Θέμα Γ είναι ένα βατό πιστεύω θέμα, για το οποίο πήρα ιδέες από το Θέμα Γ πανελλήνιες 2013 Επαναληπτικές το οποίο και θεώρησα αρκετά αξιόλογο.
  • Το Θέμα Δ περιέχει ορισμένα ερωτήματα τα οποία δεν μπορούσα να διορθώσω συντακτικά και παρερμηνίες των οποίων οδηγούν τη λύση σε λάθος μονοπάτια. Σχετικά με κανόνες του παιχνιδιού (που πιστεύω οι πιο παλιοί θα παίξαμε) μπορεί κάποιος να τις βρεί στο διαδίκτυο με μια απλή αναζήτηση. Έγιναν ορισμένες μικροπαραλλαγές για χάρην της άσκησης. Επίσης μια πολή ωραία υλοποίηση του παιχνιδιού θα βρείτε στην  διεύθυνση: http://www.miniplay.gr/?view=game&gid=84
Παρατήρησα πως ορισμένοι μπερδεύτηκαν στο θέμα Δ λόγω της εκφώνησής του και πως το Θέμα Β ήταν μεγαλύτερο σε μέγεθος απο ότι περίμενα. Οπότε και οι μαθητές έχασαν τον περισσότερο χρόνο τους και αναλώθηκαν εκεί.
Για τυχόν λάθη , παραλήψεις, παρερμηνείες, ασάφειες και οτιδήποτε άλλο αφορά τα θέματα ζητώ τη συμβολή όλων όσων ενδιαφέρονται.
Λύσεις στο προσεχές διάστημα.

Ευχαριστώ όλους, στην κοινότητα αυτή που οδήγησαν το μάθημα αυτό τόσο ψηλά και που με κάνουν να αισθάνομαι κάθε μέρα μαθητούδι.
Δεν ευχαριστώ τα στενόμυαλα κεφάλια ορισμένων πολιτικών αρχόντων που οδηγούν το μάθημα και την κοινωνία σε άσχημες ατραπούς. (Quote:)"...Αυτή η ανωμαλία πρέπει να σταματήσει..."

Σε Link η ΝΑΥΑΡΧΙΔΑ μακράν των καλύτερων θεμάτων που υπάρχουν αυτή τη στιγμή. Το φετινό έρχεται....

AEPP ALIVE FOREVER
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

Χρωστούσα τις λύσεις από το 4ο Διαγώνισμα (Νο1) πιο παλιά.
Ανεβάζω τις ενδεικτικές λύσεις σε ένα αρχείο και παραθέτω και τον κώδικα από τα θέματα Γ και Δ σε ξεχωριστά αρχεία (λόγω της δυσκολίας τους) για να τα ελέχξει όποιος επιθυμεί και να επισημάνει τα λάθη μου που κατα πάσα πιθανότητα θα υπάρχουν, κυρίως στο τέταρτο και τελευταίο θέμα.
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

Οι λύσεις από το 5ο ΔΙΑΓΩΝΙΣΜΑ 2013 - 2014
Σημειώνεται πως στο Θέμα Α3 (στις μετατροπές) έγινε η τροποποίηση από "Αν χ <= 0 τότε" σε "Αν χ < 0 τότε".
Παρατίθενται και τα αρχεία κώδικα με τον Διερμηνευτή της ΓΛΩΣΣΑΣ.
Μερεντίτης Νικόλαος
Πληροφορικός

nikolasmer

Λόγω περιορισμού στα συνημμένα, συνεχίζω με τα υπόποιπα αρχεία των αλγορίθμων και προγραμμάτων του Διερμηνευτή.

ΚΑΛΗ ΕΠΙΤΥΧΙΑ ΣΤΟΥΣ ΥΠΟΨΗΦΙΟΥΣ

ΚΑΛΟ ΚΟΥΡΑΓΙΟ ΚΑΙ ΚΑΛΗ ΔΥΝΑΜΗ ΣΕ ΟΛΟΥΣ
Μερεντίτης Νικόλαος
Πληροφορικός

patrick

Καλησπέρα Νικόλα,
συγχαρητήρια για τα διαγωνίσματα σου. Παρατήρησα ότι στις λύσεις από το Διαγώνισμα 4 Ν2 στο τελευταίο ερώτημα του Δ θέματος υπάρχει ένα λάθος. Η εκχωρήσεις που κάνεις είναι ανάποδες. Θα πρέπει να είναι από τον δισδιάστατο στον μονοδιάστατο πίνακα.

Edit: Μόλις είδα ότι το κάνεις στο πρηγούμενο κομμάτι αυτό. Γιατί ξανατοποθετείς τα στοιχεία στον δισδιάστατο ταξινομημένα; Είναι όντως απαραίτητο;

nikolasmer

Καλησπέρα φίλε patrick.
Προφανώς αναφέρεσαι στο τμήμα
!το λύνω κάνοντας τον δισδιάστατο πίνακα μονοδιάστατο και έπειτα τον ταξινομώ και ξανά επιστροφή σε δισδιάστατο
  κ <- 0
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 5
    ΓΙΑ ξ ΑΠΟ 1 ΜΕΧΡΙ 5
      κ <- κ + 1
      Σ[ι, ξ] <- Α[κ] 
      ΟΝ[ι, ξ] <- ΟΝΑ[κ] 
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 5
    ΓΙΑ ξ ΑΠΟ 1 ΜΕΧΡΙ 5
      ΓΡΑΨΕ ΟΝ[ι, ξ], Σ[ι, ξ] 
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

Ούτε καν μου πέρασε από το μυαλό να το αφήσω στη μορφή των μονοδιάστατων πινάκων. Προφανώς και αποτελεί πλεονασματικό κομμάτι κώδικα.
Ευχαριστώ πάρα πολύ για την παρατήρηση.
Μερεντίτης Νικόλαος
Πληροφορικός

kris

Παράθεση από: nikolasmer στις 27 Απρ 2014, 03:42:51 ΜΜ
Οι λύσεις από το 5ο ΔΙΑΓΩΝΙΣΜΑ 2013 - 2014
Σημειώνεται πως στο Θέμα Α3 (στις μετατροπές) έγινε η τροποποίηση από "Αν χ <= 0 τότε" σε "Αν χ < 0 τότε".
Παρατίθενται και τα αρχεία κώδικα με τον Διερμηνευτή της ΓΛΩΣΣΑΣ.

Χαίρετε,

Θα μπορούσατε να πείτε γιατί στο θέμα Α1 η πρόταση 10  είναι Σωστή; Έχω την άποψη ότι, κατά την εκτέλεση της εντολής   
                                                                        Π[1 - ι] ← Α_Μ(Α_Τ(ι/ 2 - 1))
πρώτα καλείται η Α_Τ(top<-1), επιστρέφει μια τιμή (top<-0) και κατόπιν καλείται η Α_Μ με παράμετρο την τιμή που επιστράφηκε(top<-1)


nikolasmer

#42
Καλησπέρα. Ειλικρινά με προβλημάτισες και δεν έχω απάντηση.  :-X. Αυτό που γνωρίζω είναι πως οταν καλείται ένα υπό πρόγραμμα το οποίο με τη σειρά του καλείται από ένα άλλο, τότε ο δείκτης top έχει την Τιμή 2. Θα το ψάξω και θα επανέλθω.

Διορθώνω. Νομίζω πως έχεις δίκαιο φίλε kris. Έτσι πρέπει να είναι. Η μέγιστη τιμή του δείκτη top στη συγκεκριμένη φυσικά περίπτωση, είναι 1.
Μερεντίτης Νικόλαος
Πληροφορικός

kris

Έχω κι εγώ αμφιβολίες, διότι το τι συμβαίνει πραγματικά δεν ταυτίζεται πάντα με το τι  (δεν) λέει το βιβλίο.

Γι' αυτό, μια ματιά που  έριξα στο βιβλίο, στην κλήση συναρτήσεων, πιάνομαι από το εξής (σελ. 213):

"Το κύριο πρόγραμμα πριν την κλήση της συνάρτησης γνωρίζει την τιμή της μεταβλητής R. Κατά την κλήση μεταβιβάζεται αυτή η τιμή στην αντίστοιχη μεταβλητή R της συνάρτησης."

nikolasmer

Ο φίλος vistrian μου έστειλε προ ολίγου αυτό το pm.
Παράθεση από: vistrian στις 21 Μαΐου 2014, 09:26:43 ΜΜ
Νίκο καλησπέρα. Η λύση που έχεις στο ΘΕΜΑ Β είναι λάθος

τρέξε το αρχικό Θέμα με αριθμούς 5 10 70 και θα σου εμφανίσει 5 14 83
τρέξε την λύση που έδωσες πάλι με τους ίδιους αριθμούς και θα σου εμφανίσει 6 10 80

αυτό γίνεται διότι στο αρχικό θέμα το Π[ι] αλλάζει και περνάει στη συνάρτηση Άθροισμα τον πίνακα Π πλέον με την αλλαγή
που έγινε στο Π[ι].

κάτι το οποίο δε το κάνεις στη λύση που έδωσες.

Όντως η λύση που ανέβασα στο 5ο Διαγώνισμα στο Θέμα Β ηταν λάθος. Το διόρθωσα και ξανα ανεβάζω τα καινούρια αρχεία.
Ευχαριστώ πολύ τον συνάδελφο Βησσαρίωνα Τριανταφύλλου.
Μερεντίτης Νικόλαος
Πληροφορικός