ΑΠΟΡΙΑ ΓΙΑ ΤΙΣ ΣΤΑΘΕΡΕΣ ΣΕ ΕΝΑΝ ΑΛΓΟΡΙΘΜΟ

Ξεκίνησε από georgia_kitsou, 14 Οκτ 2010, 10:30:45 ΠΜ

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

georgia_kitsou


   Καλημέρα σας!  :)

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

  Συγγνώμη αν κάπου έχει ήδη συζητηθεί το θέμα και δεν το γνώριζα. Δε ξέρω γιατί, αλλά δεν είμαι και πολύ ικανοποιημένη με την απάντηση που του έδωσα.  :-\
Μήπως μπορεί κάποιος να μου πει τη γνώμη του; Ευχαριστώ εκ των προτέρων!

Wizard

Οι σταθερές που αναφέρεις δεν υπάρχουν στην ψευδογλώσσα, αλλά μόνο στη Γλώσσα με την ονομασία "συμβολικές σταθερές".
Στην ψευδογλώσσα, με την έννοια σταθερά, εννοούμε προκαθορισμές τιμές που δεν αλλάζουν, π.χ. 5, "Κώστας", κλπ. Δηλαδή, στην ψευδογλώσσα στην έκφραση χ <- ψ + 3, τα χ και ψ είναι μεταβλητές και το 3 είναι σταθερά.
Στη Γλώσσα όμως, μπορείς να ορίσεις συμβολικές σταθερές και εκεί μπορείς π.χ. το χ να είναι συμβολική σταθερά και να μην μπορεί να αλλάξει η τιμή του.

Καρκαμάνης Γεώργιος


georgia_kitsou

Σας ευχαριστώ πάρα πολύ, έστω και καθυστερημένα! :-)

elenitaaaaa

εστω οτι εχουμε την παρακατω ασκηση:να γραφει αλγοριθμος που να εχει σαν δεδομενα τον αριθμο εργοδηγων,τον αριθμο ειδικευμενων κα τον αριθμο ανειδικευτων εργαζομενων μιας επιχειρησης. Ξεροντας οτι οι μισθοι ειναι 1200€ για τον εργοδηγο,900€για τον ειδικευμενο και 700€ για τον ανειδικευτο,ο αλγοριθμος να υπολογιζει την μηνιαια μισθοδοσια της επιχειρησης.

ΑΛΓΟΡΙΘΜΟΣ μισθοδοσια
ΔΙΑΒΑΣΕ εργοδ, ειδ, ανειδ
μισθ<- εργοδ*1200 + ειδ*900 + ανειδ*700
ΕΜΦΑΝΙΣΕ μισθ
ΤΕΛΟΣ μισθοδοσια

ειναι σωστο?

soron80

Τσισπαράς Βασίλης
Καθηγητής Πληροφορικής ΠΕ19

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

Παράθεση από: elenitaaaaa στις 03 Σεπ 2011, 03:30:07 ΜΜ
ΑΛΓΟΡΙΘΜΟΣ μισθοδοσια
ΔΙΑΒΑΣΕ εργοδ, ειδ, ανειδ
μισθ<- εργοδ*1200 + ειδ*900 + ανειδ*700
ΕΜΦΑΝΙΣΕ μισθ
ΤΕΛΟΣ μισθοδοσια

Χωρίς να λέω ότι είναι λάθος, ωστόσο θα προτιμούσα την εξής εκδοχή:

ΑΛΓΟΡΙΘΜΟΣ μισθοδοσια
Δεδομένα // εργοδ, ειδ, ανειδ //
μισθ<- εργοδ*1200 + ειδ*900 + ανειδ*700
Αποτελέσματα // μισθ //
ΤΕΛΟΣ μισθοδοσια
[/quote]

... και ο λόγος είναι ότι η άσκηση που έδωσες δεν απαιτεί να διαβάζονται τα δεδομένα ούτε να εμφανίζονται τα αποτελέσματα!

Λάμπρος Μπουκουβάλας

συμφωνώ κι εγώ με το Νίκο. άλλο είναι το "να διαβάζει και να εμφανίζει" και άλλο το "δίνονται και να υπολογίζει".
Λάμπρος Μπουκουβάλας
MSc - MRes

http://blogs.sch.gr/lambrosbouk

Ο Θουκυδίδης  (που τον διαβάζουν οι ξένοι, αλλά όχι εμείς)  έγραφε: «Αταλαίπωρος τοις πολλοίς η ζήτησις της αληθείας, και επί τα ετοίμα μάλλον τρέπονται» (Ι, 20, 3). Οι περισσότεροι δηλαδή αναζητούν αβασάνιστα την αλήθεια και στρέφονται σε ό,τι βρίσκουν έτοιμο. Δεν προβληματίζονται...

elenitaaaaa

Παράθεση από: Νίκος Αδαμόπουλος στις 03 Σεπ 2011, 07:46:42 ΜΜ
Χωρίς να λέω ότι είναι λάθος, ωστόσο θα προτιμούσα την εξής εκδοχή:

ΑΛΓΟΡΙΘΜΟΣ μισθοδοσια
Δεδομένα // εργοδ, ειδ, ανειδ //
μισθ<- εργοδ*1200 + ειδ*900 + ανειδ*700
Αποτελέσματα // μισθ //
ΤΕΛΟΣ μισθοδοσια


... και ο λόγος είναι ότι η άσκηση που έδωσες δεν απαιτεί να διαβάζονται τα δεδομένα ούτε να εμφανίζονται τα αποτελέσματα!


ναι αλλα ειμαι μολις στο 2ο μαθημα. δε θα ηταν λιγο υπερβολικο απ τη μερια μου, να τους δειξω κ τα 2 ταυτοχρονα?
και για μενα σα μορφη αλγοριθμου ειναι πιο σωστη οπως την παρουσιασατε. αλλα ποια ειναι η σωστη σειρα να τα δειξω?

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

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

Λάμπρος Μπουκουβάλας

Kι εγώ την τακτική που περιγράφει ο Νίκος εφαρμόζω.
Μετά τα εισαγωγικά μαθήματα τους μιλάω για δεδομένα/αποτελέσματα και τους δίνω σε χαρτί τους συνδυασμούς εκφωνήσεων (π.χ. να διαβάζει και να υπολογίζει, να δέχεται και να υπολογίζει κ.λπ.)
Λάμπρος Μπουκουβάλας
MSc - MRes

http://blogs.sch.gr/lambrosbouk

Ο Θουκυδίδης  (που τον διαβάζουν οι ξένοι, αλλά όχι εμείς)  έγραφε: «Αταλαίπωρος τοις πολλοίς η ζήτησις της αληθείας, και επί τα ετοίμα μάλλον τρέπονται» (Ι, 20, 3). Οι περισσότεροι δηλαδή αναζητούν αβασάνιστα την αλήθεια και στρέφονται σε ό,τι βρίσκουν έτοιμο. Δεν προβληματίζονται...

elenitaaaaa


Σπύρος Δουκάκης

Ένα συναφές ζήτημα είναι να ζητήσεις από τους μαθητές και τις μαθήτριες να εντοπίσουν σε έναν αλγόριθμο αναπτυγμένο είτε σε ψευδογλώσσα είτε σε ΓΛΩΣΣΑ να εντοπίσουν τις σταθερές και τις μεταβλητές και στο σημείο αυτό να μπουν στη διαδικασία να διακρίνουν τα είδη των μεταβλητών και των σταθερών.
Μία τέτοια άσκηση θα μπορούσε να είναι η ακόλουθη από κάποιο διαγώνισμα που έχει αναπτυχθεί μέσα από αυτό το forum στην οποία μπορεί να ζητηθεί και ο εντοπισμός των σταθερών, των τελεστών, πιθανώς να προστεθούν και συναρτήσεις, να αξιοποιηθεί και το Α_Μ ώστε να ελέγξουν το είδος της μεταβλητής και ακόμα να έχει συνδυασμό εντολών div, mod και / ώστε να μπορέσουν να διακρίνουν ορθά τα είδη. Π.χ. y <- 9 mod 10 / Τ_Ρ(81) + 1

Δίνεται ο παρακάτω αλγόριθμος
Αλγόριθμος Άσκηση
Διάβασε γ, α
β ← α + 5 ^ 2 * 2
Εκτύπωσε β
κ ← "Τρίτη"
Τρίτη ← γ
γ ← κ
Εκτύπωσε "Οι μέρες είναι", Τρίτη, "Τρίτη"
α ← β div 5 mod 3
Εκτύπωσε "α =", α
Τέλος Άσκηση

Να ξεχωρίσετε τις παραπάνω μεταβλητές ανάλογα με τον τύπο που ανήκουν, αν δοθούν ως είσοδοι οι τιμές "Δευτέρα" και 35.

elenitaaaaa

Καποιος μπορει να το δωσει κ ετσι. σωστα?

ΑΛΓΟΡΙΘΜΟΣ μισθοδοσια
μισεργ<-1200
μισειδ<-900
μισανειδ<-700
ΔΙΑΒΑΣΕ εργοδ, ειδ, ανειδ
μισθ<- εργοδ*μισεργ + ειδ*μισειδ + ανειδ*μισανειδ
ΕΜΦΑΝΙΣΕ μισθ
ΤΕΛΟΣ μισθοδοσια

P.Tsiotakis

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

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