Αποστολέας Θέμα: Θέμα 2  (Αναγνώστηκε 1541 φορές)

Παναγιώτης Τσιωτάκης

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3176
  • I love you 3000
    • Panagiotis Tsiotakis
Απ: Θέμα 2
« Απάντηση #15 στις: 13 Ιούν 2019, 04:36:18 μμ »
Αν πει κάποιος ότι η αντίστοιχη της κ <- Β(π,μ,ρ[1]) είναι η ΚΑΛΕΣΕ Β(π,κ,ρ[1]);
θα μπορούσε από κάποιο/α μαθητή/ρια να έχει δοθεί η απάντηση
ΚΑΛΕΣΕ Β(π, μ, γ)

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

Πάντως η εκφώνηση αναφέρεται σε ένα λάθος ανά κλήση και ζητά τη διόρθωση αυτού (; ) του λάθους.


Νίκος Αδαμόπουλος

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 2780
  • Πύργος Ηλείας
    • ΚΕΠΛΗΝΕΤ Ηλείας
Απ: Θέμα 2
« Απάντηση #16 στις: 13 Ιούν 2019, 05:22:03 μμ »
θα μπορούσε από κάποιο/α μαθητή/ρια να έχει δοθεί η απάντηση
ΚΑΛΕΣΕ Β(π, μ, γ)

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

Πάντως η εκφώνηση αναφέρεται σε ένα λάθος ανά κλήση και ζητά τη διόρθωση αυτού (; ) του λάθους.

Γενικά, αυτό το θέμα είχε ένα προβληματάκι ως προς τον καθορισμό του ζητούμενου!

bugman

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 376
  • The Bug Eater
    • Πληροφορική Προγραμματισμός
Απ: Θέμα 2
« Απάντηση #17 στις: 13 Ιούν 2019, 05:40:18 μμ »
Το Β2.β5 είναι σίγουρα αυτό: ΚΑΛΕΣΕ Β(π,μ,ρ[1])
Το ρ[1] περνάει με αναφορά, και είναι ίδιου τύπου (Πραγματική). Είναι στοιχείο πίνακα δεν είναι πίνακας.
Το να βάλεις άλλη μεταβλητή αυθαίρετα δεν παίζει. Είναι σαν να λες ότι έχει δυο λάθη, πράγμα που το αποκλείει.



bugman

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 376
  • The Bug Eater
    • Πληροφορική Προγραμματισμός
Απ: Θέμα 2
« Απάντηση #18 στις: 13 Ιούν 2019, 05:46:08 μμ »
Στο Β2.β4 μπορεί να διαλέξει κανείς οποιαδήποτε πραγματική ακόμα και το ρ[1] στη θέση του υ.

Παναγιώτης Τσιωτάκης

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3176
  • I love you 3000
    • Panagiotis Tsiotakis
Απ: Θέμα 2
« Απάντηση #19 στις: 13 Ιούν 2019, 06:08:00 μμ »
Το Β2.β5 είναι σίγουρα αυτό: ΚΑΛΕΣΕ Β(π,μ,ρ[1])
Το ρ[1] περνάει με αναφορά, και είναι ίδιου τύπου (Πραγματική). Είναι στοιχείο πίνακα δεν είναι πίνακας.
Το να βάλεις άλλη μεταβλητή αυθαίρετα δεν παίζει. Είναι σαν να λες ότι έχει δυο λάθη, πράγμα που το αποκλείει.




νομιζω οτι περιέγραψα επαρκως τη σκεψη μου. γνωριζω οτι το ρ [1] ειναι σωστο απο το 2005.
και το ρ [1] δεν είναι μεταβλητή αλλα στοιχείο πίνακα

παντως δε λεει να κανεις 1 αλλαγη

bugman

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 376
  • The Bug Eater
    • Πληροφορική Προγραμματισμός
Απ: Θέμα 2
« Απάντηση #20 στις: 13 Ιούν 2019, 06:24:28 μμ »
Στη ΓΛΩΣΣΑ το στοιχείο πίνακα είναι μεταβλητή. Αν έχεις μια διαδικασία που παίρνει μεταβλητή έστω ακέραια και προσθέτει ένα, τότε μετά τη κλήση είτε  βάλεις μεταβλητή ακέραια με όνομα ή με στοιχείο πίνακα, επίσης ακέραια, είναι το ίδιο. Και στις δυο περιπτώσεις θα αυξηθεί η τιμή κατά ένα.

Παναγιώτης Τσιωτάκης

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3176
  • I love you 3000
    • Panagiotis Tsiotakis
Απ: Θέμα 2
« Απάντηση #21 στις: 13 Ιούν 2019, 07:20:21 μμ »
στη ΓΛΩΣΣΑ το στοιχείο πίνακα είναι στοιχείο πίνακα και υποβάλλεται σε επεξεργασία όπως μία μεταβλητή, αλλά είναι στοιχείο πίνακα και για αυτό δηλώνεται ως στοιχείο πίνακα ενώ η μεταβλητή δηλώνεται ως μεταβλητή

pgrontas

  • Ομάδα διαγωνισμάτων 2016
  • *
  • Μηνύματα: 1315
  • There are always possibilities...
Απ: Θέμα 2
« Απάντηση #22 στις: 14 Ιούν 2019, 09:52:19 πμ »
στη ΓΛΩΣΣΑ το στοιχείο πίνακα είναι στοιχείο πίνακα και υποβάλλεται σε επεξεργασία όπως μία μεταβλητή, αλλά είναι στοιχείο πίνακα και για αυτό δηλώνεται ως στοιχείο πίνακα ενώ η μεταβλητή δηλώνεται ως μεταβλητή
Πώς δηλώνουμε *στοιχείο* πίνακα στη γλώσσα;

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

Όπως λέει και ένα παλιό ρητό:
"If it walks like a duck and it quacks like a duck, then it must be a duck"
« Τελευταία τροποποίηση: 14 Ιούν 2019, 10:06:13 πμ από pgrontas »
A man provided with paper, pencil, and rubber, and subject to strict discipline is in effect a universal machine - Alan Turing

pgrontas

  • Ομάδα διαγωνισμάτων 2016
  • *
  • Μηνύματα: 1315
  • There are always possibilities...
Απ: Θέμα 2
« Απάντηση #23 στις: 14 Ιούν 2019, 09:57:04 πμ »
Γενικά, αυτό το θέμα είχε ένα προβληματάκι ως προς τον καθορισμό του ζητούμενου!
Συμφωνώ.
Στα θέματα όπου ψάχνουμε κάποιο λάθος πρέπει να είμαστε απόλυτα σίγουργοι πώς θα ερμηνευτεί και ότι το λάθος είναι μοναδικό.
Για παράδειγμα στα προφορικά είχαμε μαθητές που στο ΚΑΛΕΣΕ Α(μ, θ), θεώρησαν το ΚΑΛΕΣΕ σωστό και αντικατέστησαν τη συνάρτηση με διαδικασία.
Κάτι τέτοιο θα μπορούσε να αποφευχθεί αν τα υποπρογράμματα και οι παράμετροι είχαν λογικά ονόματα πχ. min ή ταξινόμηση ή κάτι τέτοιο, ώστε να τονιστεί στο μαθητή ποιος είναι ο στόχος της εντολής.
A man provided with paper, pencil, and rubber, and subject to strict discipline is in effect a universal machine - Alan Turing

Παναγιώτης Τσιωτάκης

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 3176
  • I love you 3000
    • Panagiotis Tsiotakis
Απ: Θέμα 2
« Απάντηση #24 στις: 14 Ιούν 2019, 10:07:07 πμ »
Πώς δηλώνουμε *στοιχείο* πίνακα στη γλώσσα;

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

sakisnemkav

  • Βετεράνος
  • ****
  • Μηνύματα: 66
Απ: Θέμα 2
« Απάντηση #25 στις: 15 Ιούν 2019, 12:11:08 πμ »

Νίκος Αδαμόπουλος

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 2780
  • Πύργος Ηλείας
    • ΚΕΠΛΗΝΕΤ Ηλείας
Απ: Θέμα 2
« Απάντηση #26 στις: 15 Ιούν 2019, 02:01:55 μμ »
Συμφωνώ.
Στα θέματα όπου ψάχνουμε κάποιο λάθος πρέπει να είμαστε απόλυτα σίγουργοι πώς θα ερμηνευτεί και ότι το λάθος είναι μοναδικό.
Για παράδειγμα στα προφορικά είχαμε μαθητές που στο ΚΑΛΕΣΕ Α(μ, θ), θεώρησαν το ΚΑΛΕΣΕ σωστό και αντικατέστησαν τη συνάρτηση με διαδικασία.

Ακριβώς! Δεν θα πρέπει οι μαθητές να φτάνουν στο σημείο να αναρωτιούνται "τι θέλει ο ποιητής τώρα να γράψουμε"!

gkatsion

  • Κατσιώνης Γιώργος - Καθηγητής ΠΕ19
  • Δεινόσαυρος
  • *****
  • Μηνύματα: 134
  • Είμαστε επιστήμη και όχι δεξιότητα!
Απ: Θέμα 2
« Απάντηση #27 στις: 15 Ιούν 2019, 09:34:34 μμ »
Ακριβώς! Δεν θα πρέπει οι μαθητές να φτάνουν στο σημείο να αναρωτιούνται "τι θέλει ο ποιητής τώρα να γράψουμε"!

Όλη η απάντηση έχει στηριχθεί στο ότι κάθε πρόταση έχει ένα και μόνο ένα λάθος
ΈΞΟΔΟΣ_ΑΠΟ_ΛΥΚΕΙΟ <-- ΑΕΙ + PHD + ΑΣΕΠ

dimitrios67

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 104
Απ: Θέμα 2
« Απάντηση #28 στις: 17 Ιούν 2019, 10:02:17 μμ »
Όταν σε ένα υποπρόγραμμα έχουμε τυπική παράμετρο π.χ. έναν ακέραιο, κατά την κλήση ΔΕΝ μας ενδιαφέρει εάν η πραγματική παράμετρος είναι απλή μεταβλητή (ακέραιος) ή στοιχείο ενός μονοδιάστατου πίνακα ή στοιχείο ενός δισδιάστατου πίνακα κλπ!
Παράδειγμα στο πρόγραμμα που επισυνάπτω.
(το επισυνάπτω γιατί έχω κάποιο πρόβλημα με τους Ελληνικούς χαρακτήρες στη Γλωσσομάθεια.
Αν έχει κάποιος κάποια ιδέα....)

Στον κώδικα παρατηρούμε ότι στη διαδικασία περνάει σαν όρισμα ένας ακέραιος.
Την διαδικασία ΔΕΝ την ενδιαφέρει εάν ο ακέραιος είναι στοιχείο πίνακα ή απλή μεταβλητή.
Μας ενδιαφέρει εάν είναι ακέραιος!
Οκ, περνάει και η διεύθυνση (ή γίνεται το copy , anyway!), αλλά ο ορισμός της διαδικασίας λέει:
Η παράμετρος (όρισμα) να είναι ακέραια, να αυξηθεί κατά 1, και να "ενημερωθεί" το κυρίως πρόγραμμα.
Όταν πραγματική παράμετρος είναι η Χ που έχει τιμή 5, μετά την κλήση της Δ1 γίνεται 6.
Ομοίως, όταν καλούμε την Δ1 με πραγματική παράμετρο το στοιχείο Ζ[1], του πίνακα Ζ,
το στοιχείο αυξάνεται κατά 1.
Και έχω και τρίτη περίπτωση με 2D array, οπού συμβαίνει ακριβώς το ίδιο.
Άρα, η Δ1 ΔΕΝ "γνωρίζει" και δεν την "ενδιαφέρει" εάν το όρισμα είναι απλή μεταβλητή ή στοιχείο πίνακα.
Δηλ. ΔΕΝ περνάει ο πίνακας Ζ, ας πούμε base address ή κάτι άλλο.
Βέβαια είναι πολύ ενδιαφέρον να γνώριζα ΠΩΣ γίνεται το pass by reference στη ΓΛΩΣΣΑ, γιατί δεν το έχω καταλάβει.

Λάμπρος Παπαδόπουλος

  • Βετεράνος
  • ****
  • Μηνύματα: 63
Απ: Θέμα 2
« Απάντηση #29 στις: 17 Ιούν 2019, 11:33:22 μμ »
Παράθεση
Βέβαια είναι πολύ ενδιαφέρον να γνώριζα ΠΩΣ γίνεται το pass by reference στη ΓΛΩΣΣΑ, γιατί δεν το έχω καταλάβει.

Δεν γίνεται... Είναι "με τιμή" στις συναρτήσεις και "με τιμή - αποτέλεσμα" στις διαδικασίες.