ΓΛΩΣΣΑ

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Μετάβαση σε: πλοήγηση, αναζήτηση

Στην δευτεροβάθμια εκπαίδευση της Ελλάδας διδάσκεται ως γλώσσα προγραμματισμού η ΓΛΩΣΣΑ, που περιγράφεται στο βιβλίο "Ανάπτυξη εφαρμογών σε Προγραμματιστικό Περιβάλλον". (Το βιβλίο υπόκειται περιοδικά σε διαδικασία διόρθωσης και αναθεώρησης, οπότε είναι πιθανό να προκύψουν ανακρίβειες στο άρθρο αυτό).

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

Σύνταξη των εντολών[Επεξεργασία | επεξεργασία κώδικα]

Η γλώσσα προγραμματισμού ΓΛΩΣΣΑ σχεδιάστηκε για εκπαιδευτικούς λόγους, οπότε διαθέτει μόνο τις εντελώς απαραίτητες εντολές για να εξασκηθούν οι μαθητές στον προγραμματισμό ηλεκτρονικών υπολογιστών.

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

Ο γενικός κανόνας είναι ότι οι δηλωτικές μπαίνουν στην αρχή του προγράμματος (ή διαδικασίας ή συνάρτησης), ακολουθούν οι εκτελέσιμες και τελευταία είναι η εντολή ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ή ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ).

Ακολουθεί πίνακας με τις εντολές της ΓΛΩΣΣΑΣ και παρακάτω περιγράφεται η σημασία μερικών από αυτές.

Δηλωτικές εντολές της ΓΛΩΣΣΑΣ
ΠΡΟΓΡΑΜΜΑ ή ΔΙΑΔΙΚΑΣΙΑ ή ΣΥΝΑΡΤΗΣΗ ή ΑΛΓΟΡΙΘΜΟΣ
ΣΤΑΘΕΡΕΣ
ΜΕΤΑΒΛΗΤΕΣ
 ΑΚΕΡΑΙΕΣ:
 ΠΡΑΓΜΑΤΙΚΕΣ:
 ΧΑΡΑΚΤΗΡΕΣ:
 ΛΟΓΙΚΕΣ:
ΑΡΧΗ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ ή ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ ή ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ
Εκτελέσιμες εντολές της ΓΛΩΣΣΑΣ
ΓΡΑΨΕ
ΔΙΑΒΑΣΕ
ΚΑΛΕΣΕ
ΑΝ σ ΤΟΤΕ
 ΑΛΛΙΩΣ_ΑΝ σ ΤΟΤΕ
 ΑΛΛΙΩΣ
ΤΕΛΟΣ_ΑΝ
ΕΠΙΛΕΞΕ
 ΠΕΡΙΠΤΩΣΗ
 ΑΛΛΙΩΣ
ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ
ΓΙΑ τ1 ΑΠΟ τ2 ΜΕΧΡΙ τ3 ΜΕ_ΒΗΜΑ τ4
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΟΣΟ σ ΕΠΑΝΑΛΑΒΕ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
ΜΕΧΡΙΣ_ΟΤΟΥ σ

Επιτρεπτοί χαρακτήρες στην ΓΛΩΣΣΑ[Επεξεργασία | επεξεργασία κώδικα]

Για το γράψιμο των εντολών χρησιμοποιούνται οι παρακάτω χαρακτήρες:

  • γράμματα λατινικά : κεφαλαία A – Z και πεζά a – z
  • γράμματα ελληνικά : κεφαλαία Α – Ω και πεζά α – ω (και τονούμενα και το τελικό ς)
  • ψηφία : 0123456789
  • σημεία στίξης : ( ) [ ] * + – / ^ < > = : . , ' ! &
  • και το κενό διάστημα (space).

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

Η ΓΛΩΣΣΑ έχει ελεύθερο τρόπο γραφής του προγράμματος, δηλαδή δεν υποχρεώνει ένα τμήμα της εντολής να περιέχεται σε συγκεκριμένο τμήμα της εγγραφής. (Καλό είναι να γράφετε κάθε εντολή σε διαφορετική γραμμή). Αν μια εγγραφή αποτελείται από κενά ή έχει πρώτον χαρακτήρα !, η εγγραφή θεωρείται ότι περιέχει σχόλια. Τα σχόλια και τα κενά αγνοούνται κατά την εκτέλεση, εκτός αν τα κενά βρίσκονται μέσα σε σταθερές χαρακτήρων. Εγγραφές με σχόλια μπορούν να βρίσκονται οπουδήποτε στο πρόγραμμα πριν από την εντολή

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Εκχώρηση τιμής[Επεξεργασία | επεξεργασία κώδικα]

Η εντολή εκχώρησης τιμής έχει σύμβολο το '\leftarrow' και γράφεται έτσι:

Ν \leftarrow (Ν + 2)

και σημαίνει κάνε τις πράξεις στην έκφραση στο δεξιό μέρος και βάλε την προκύπτουσα τιμή στην μεταβλητή που βρίσκεται στο αριστερό μέρος.

Προγράμματα και υποπρογράμματα[Επεξεργασία | επεξεργασία κώδικα]

Στην ΓΛΩΣΣΑ υπάρχουν τα κύρια προγράμματα και δυο είδη υποπρογραμμάτων, οι διαδικασίες και οι συναρτήσεις. Το πρόγραμμα, η διαδικασία και η συνάρτηση έχουν οπωσδήποτε όνομα.

Η εκτέλεση ξεκινάει από το κύριο πρόγραμμα, που αρχίζει με την εντολή

ΠΡΟΓΡΑΜΜΑ όνομα_προγράμματος

και όταν χρειάζεται να καλέσει μια διαδικασία, χρησιμοποιεί την εντολή

ΚΑΛΕΣΕ όνομα_διαδικασίας (λίστα_παραμέτρων)

και τελειώνει με την εντολή

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

Μια διαδικασία της ΓΛΩΣΣΑΣ αρχίζει με την εντολή

ΔΙΑΔΙΚΑΣΙΑ όνομα_διαδικασίας (λίστα_παραμέτρων)

και τελειώνει με την εντολή

ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

η οποία δίνει τον έλεγχο της εκτέλεσης πίσω, στο πρόγραμμα που κάλεσε την διαδικασία.

Στις εκφράσεις μπορεί να περιλαμβάνεται κάποια συνάρτηση της ΓΛΩΣΣΑΣ. Η απλή αναφορά του ονόματός της δίνει τον έλεγχο σε ένα υποπρόγραμμα - συνάρτηση, που αρχίζει με την εντολή

ΣΥΝΑΡΤΗΣΗ όνομα_συνάρτησης (λίστα_παραμέτρων) : τύπος_συνάρτησης

ενδιάμεσα η μεταβλητή όνομα_συνάρτησης παίρνει οπωσδήποτε τιμή

όνομα_συνάρτησης \leftarrow τιμή

και η συνάρτηση τελειώνει με την εντολή

ΤΕΛΟΣ_ΣΥΝΑΡΤΗΣΗΣ

η οποία επιστρέφει μια τιμή (δες παρακάτω για τον τύπο της συνάρτησης, (Ακέραια, Πραγματική, Λογική, κλπ), και της τιμής της) στην έκφραση που την χρησιμοποίησε.

Το πέρασμα παραμέτρων σε υποπρογράμματα της ΓΛΩΣΣΑΣ δεν γίνεται με αναφορά (by reference) ούτε με τιμή (by value) αλλά με αντιγραφή (copy in - copy out).

Δηλωτικές και εκτελέσιμες εντολές[Επεξεργασία | επεξεργασία κώδικα]

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

ΑΡΧΗ

Δήλωση τύπου[Επεξεργασία | επεξεργασία κώδικα]

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

ΠΡΟΓΡΑΜΜΑ ΔΕΙΓΜΑ
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: α, β, γ[3, 6, 9]
  ΠΡΑΓΜΑΤΙΚΕΣ: δ, εψ[10], ζ
  ΧΑΡΑΚΤΗΡΕΣ: ητ, θ, ι
  ΛΟΓΙΚΕΣ: κ, λ, μ
ΑΡΧΗ

Δομικά στοιχεία προγράμματος[Επεξεργασία | επεξεργασία κώδικα]

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

Ακολουθία[Επεξεργασία | επεξεργασία κώδικα]

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

Βρόχος[Επεξεργασία | επεξεργασία κώδικα]

Όταν πρέπει μια ομάδα εντολών να εκτελεστεί επαναληπτικά, έχουμε τον σχηματισμό του βρόχου (loop) ή επανάληψης. Μια συνθήκη, (που ισχύει ή δεν ισχύει, που είναι ΑΛΗΘΗΣ ή ΨΕΥΔΗΣ), καθορίζει αν επιτρέπεται οι εντολές του βρόχου να εκτελεστούν ακόμα μια φορά.

Αν η συνθήκη εξετάζεται ως προς την ισχύ της πριν την πρώτη εκτέλεση των εντολών του βρόχου, οι εντολές στον σχηματισμό αυτό μπορούν να εκτελεστούν από μηδέν φορές (αν η συνθήκη είναι ΨΕΥΔΗΣ) μέχρι άπειρες φορές (αν η συνθήκη είναι πάντα ΑΛΗΘΗΣ). Για να σχηματίσουμε τον βρόχο αυτό, μπορούμε να χρησιμοποιήσουμε τις εντολές

ΟΣΟ συνθήκη
ΕΠΑΝΑΛΑΒΕ
εντολές
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
! παράδειγμα βρόχου
ΑΡΧ \leftarrow 5.5
ΒΗΜ \leftarrow 0.15
ΤΕΛ \leftarrow 12.0
Α \leftarrow ΑΡΧ
ΟΣΟ (Α <= ΤΕΛ) ΕΠΑΝΑΛΑΒΕ
! εντολές του βρόχου
  Α \leftarrow Α + ΒΗΜ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
! επόμενες εντολές

ή με τις εντολές

ΓΙΑ μεταβλητή ΑΠΟ αρχική_τιμή ΜΕΧΡΙ τελική_τιμή ΜΕ_ΒΗΜΑ τιμή_βήματος
εντολές
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
! παράδειγμα βρόχου
ΓΙΑ R ΑΠΟ 0. ΜΕΧΡΙ 2. ΜΕ_ΒΗΜΑ 0.4
  ΓΙΑ S ΑΠΟ –R ΜΕΧΡΙ R + R ΜΕ_ΒΗΜΑ 0.5
    ΓΡΑΨΕ 'τιμή R=', R, ' τιμή S=', S, ' συνάρτ=', ΣΥΝΑΡΤ(R, S)
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

όπου παρατηρούμε πώς ένας βρόχος μπορεί να περιέχει έναν άλλο βρόχο, (και τους λέμε ένθετους ή εμφωλιασμένους (nested) βρόχους). Όταν η τιμή_βήματος είναι ίση με 1, μπορούμε να παραλείπουμε την φράση: ΜΕ_ΒΗΜΑ 1, (γιατί όταν παραλείπεται η φράση, υπονοείται ότι το βήμα είναι 1).

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

ΑΡΧΗ_ΕΠΑΝΑΛΗΨΗΣ
εντολές
ΜΕΧΡΙΣ_ΟΤΟΥ συνθήκη

Επιλογή[Επεξεργασία | επεξεργασία κώδικα]

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

Απλή επιλογή γίνεται με τον σχηματισμό

ΑΝ συνθήκη ΤΟΤΕ
εντολή
ΤΕΛΟΣ_ΑΝ

που έχει μια συνθήκη και μια εντολή. Αν η συνθήκη είναι ΑΛΗΘΗΣ, τότε εκτελείται η εντολή. Αν η συνθήκη είναι ΨΕΥΔΗΣ, τότε εκτελείται η επόμενη (μετά το ΤΕΛΟΣ_ΑΝ) εντολή.

! παράδειγμα
ΑΝ (K > L+3) ΤΟΤΕ
  N \leftarrow N + 2
ΤΕΛΟΣ_ΑΝ

Λίγο πιο περίπλοκη είναι η δομή

ΑΝ συνθήκη Α ΤΟΤΕ
εντολές Α
ΑΛΛΙΩΣ
εντολές Ω
ΤΕΛΟΣ_ΑΝ

που μπορεί να έχει δύο ομάδες εντολών. Υπάρχει μια συνθήκη Α που, αν είναι ΑΛΗΘΗΣ εκτελούνται οι εντολές που ακολουθούν το ΤΟΤΕ, ενώ αν είναι ΨΕΥΔΗΣ εκτελούνται οι εντολές που ακολουθούν το ΑΛΛΙΩΣ. Το τέλος της δομής σημειώνεται με την εντολή ΤΕΛΟΣ_ΑΝ.

! παράδειγμα
ΑΝ (K = N) ΤΟΤΕ
  K \leftarrow K + 1
  ΓΡΑΨΕ K, S
ΑΛΛΙΩΣ
  ΓΡΑΨΕ N, T
  T \leftarrow 0.
  N \leftarrow N + 2
ΤΕΛΟΣ_ΑΝ

Υπάρχει μια φράση

ΑΛΛΙΩΣ_ΑΝ συνθήκη Β ΤΟΤΕ
εντολές Β

(που γράφεται μετά την ΑΝ συνθήκη ΤΟΤΕ και πριν από την ΑΛΛΙΩΣ), που μπορεί να δώσει στην δομή επιλογής περισσότερες διακλαδώσεις:

  • Πρώτη είναι η εντολή ΑΝ με μια πρώτη συνθήκη και, αν η συνθήκη είναι ΑΛΗΘΗΣ, εκτελούνται οι εντολές μετά το ΤΟΤΕ και ο έλεγχος πηγαίνει στην μετά την ΤΕΛΟΣ_ΑΝ εντολή.
  • Αν η πρώτη συνθήκη είναι ΨΕΥΔΗΣ ακολουθεί η ΑΛΛΙΩΣ_ΑΝ με μια δεύτερη συνθήκη και, αν η δεύτερη συνθήκη είναι ΑΛΗΘΗΣ, εκτελούνται οι εντολές μετά το ΤΟΤΕ της ΑΛΛΙΩΣ_ΑΝ και ο έλεγχος πηγαίνει στην μετά την ΤΕΛΟΣ_ΑΝ εντολή.
  • Μπορούν να υπάρχουν κι άλλες ΑΛΛΙΩΣ_ΑΝΤΟΤΕ ομάδες εντολών (με τρίτη συνθήκη, τέταρτη συνθήκη, κλπ).
  • Μετά από τις ΑΛΛΙΩΣ_ΑΝΤΟΤΕ υπάρχει μια ΑΛΛΙΩΣ με τις εντολές της, που εκτελούνται όταν καμιά συνθήκη δεν είναι ΑΛΗΘΗΣ.
  • Στο τέλος της δομής υπάρχει πάντοτε μια ΤΕΛΟΣ_ΑΝ.
! παράδειγμα
ΑΝ (L = –2) ΤΟΤΕ
  Y \leftarrow –1.
ΑΛΛΙΩΣ_ΑΝ (L = 0) ΤΟΤΕ
  Y \leftarrow +1.
ΑΛΛΙΩΣ_ΑΝ (L = 2) ΤΟΤΕ
  Y \leftarrow +3.
ΑΛΛΙΩΣ
  Y \leftarrow 0.
ΤΕΛΟΣ_ΑΝ

Μπορούμε εναλλακτικά να χρησιμοποιήσουμε τις εντολές ΕΠΙΛΕΞΕΠΕΡΙΠΤΩΣΗΠΕΡΙΠΤΩΣΗ ΑΛΛΙΩΣΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ, (που είναι φτιαγμένες ακριβώς για περιπτώσεις πολλαπλής επιλογής) :

! παράδειγμα
ΕΠΙΛΕΞΕ L
  ΠΕΡΙΠΤΩΣΗ –2
    Y \leftarrow –1.
  ΠΕΡΙΠΤΩΣΗ 0
    Y \leftarrow +1.
  ΠΕΡΙΠΤΩΣΗ 2
    Y \leftarrow +3.
  ΠΕΡΙΠΤΩΣΗ ΑΛΛΙΩΣ
    Y \leftarrow 0.
ΤΕΛΟΣ_ΕΠΙΛΟΓΩΝ

Σταθερές[Επεξεργασία | επεξεργασία κώδικα]

Τις σταθερές (constant) που θα χρησιμοποιήσουμε μέσα σε ένα πρόγραμμα ή υποπρόγραμμα τις ορίζουμε στην αρχή του με την εντολή ΣΤΑΘΕΡΕΣ.

! παράδειγμα
ΣΤΑΘΕΡΕΣ
  ΕΝΑ = 1
  ΠΙ = 3.1415926

Η σταθερή δεν μπορεί να αλλάξει τιμή σε κάποια φάση του προγράμματος.

Μπορούμε επίσης να χρησιμοποιήσουμε στο πρόγραμμα μια σταθερή τιμή, με τύπο ΑΚΕΡΑΙΟ, ΠΡΑΓΜΑΤΙΚΟ, κλπ..

ΑΚΕΡΑΙΕΣ σταθερές[Επεξεργασία | επεξεργασία κώδικα]

Παραδείγματα σωστών ακέραιων σταθερών:

–25  0  4134  7773216  +1234567890

Παραδείγματα λαθεμένων ακέραιων σταθερών:

–52.         (έχει υποδιαστολή [.]),
4,381.       (το κόμμα δεν επιτρέπεται εκεί),
561–2        (είναι ακέραια έκφραση, όχι ακέραια σταθερή),
3Χ3          (έχει γράμμα μέσα).

ΠΡΑΓΜΑΤΙΚΕΣ σταθερές[Επεξεργασία | επεξεργασία κώδικα]

Παραδείγματα σωστών πραγματικών σταθερών:

3.5  +7.0  –0.06  6.22  –0.3456

Παραδείγματα λαθεμένων πραγματικών σταθερών:

35           (λείπει η τελεία–υποδιαστολή).
–5.22.       (δυο υποδιαστολές).
–+3.         (δυο πρόσημα).

ΛΟΓΙΚΕΣ σταθερές[Επεξεργασία | επεξεργασία κώδικα]

Λογικές σταθερές υπάρχουν μόνο δύο, και είναι οι ΑΛΗΘΗΣ και ΨΕΥΔΗΣ. Οι λογικές σταθερές μπορούν να χρησιμοποιηθούν στις λογικές εκφράσεις της ΓΛΩΣΣΑΣ.

Σειρές χαρακτήρων. Σταθερές για ΧΑΡΑΚΤΗΡΕΣ[Επεξεργασία | επεξεργασία κώδικα]

Σειρά χαρακτήρων είναι μια αλληλουχία χαρακτήρων που περικλείονται από αποστρόφους ( ' , ASCII δεκαεξαδικός 27). Για να εμφανίζεται ο χαρακτήρας ['] απόστροφος μέσα σε σειρά χαρακτήρων που περικλείεται από αποστρόφους, τον γράφουμε δυο φορές.

Παραδείγματα σειρών χαρακτήρων:

'Α'  'ΑΒ4!Σ'  'PERSONS NAME ='

Μεταβλητές[Επεξεργασία | επεξεργασία κώδικα]

Μια μεταβλητή (variable) ορίζεται με την χρήση ενός συμβολικού ονόματος, που ο πρώτος του χαρακτήρας πρέπει να είναι γράμμα και οι υπόλοιποι γράμματα, ψηφία ή υπογράμμιση (underscore) '_'. Τις μεταβλητές που θα χρησιμοποιήσουμε μέσα σε ένα πρόγραμμα ή υποπρόγραμμα τις ορίζουμε στην αρχή του. Για παράδειγμα:

ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: ΕΝΑ, ΔΥΟ, Μηδέν
  ΠΡΑΓΜΑΤΙΚΕΣ: α, β, γ, Ρίζα1
ΑΡΧΗ

Η μεταβλητή που ορίζεται με κάποιο συμβολικό όνομα μπορεί να αποκτήσει μια τιμή. Η μεταβλητή μπορεί να αλλάξει τιμή σε κάποια φάση του προγράμματος. Μια μεταβλητή μπορεί να είναι κάποιου τύπου, (όπως και μια σταθερή), Ακέραια, Πραγματική, Χαρακτήρων ή Λογική.

Μεταβλητές με δείκτες[Επεξεργασία | επεξεργασία κώδικα]

Στην ΓΛΩΣΣΑ υπάρχει η δυνατότητα να οριστούν μεταβλητές με δείκτες, που το κάθε στοιχείο τους μπορεί να εντοπιστεί στην μνήμη (και να χρησιμοποιηθεί) με χρήση δεικτών. Γενικά τις ονομάζουμε πίνακες (table, array), αλλά αν έχουν μόνο μια διάσταση, τις λέμε και διανύσματα (vector). Οι πίνακες ορίζονται με τις δηλωτικές εντολές τύπου, όπου μετά το όνομα της μεταβλητής ακολουθούν σε αγκύλες τα όρια των δεικτών. Για παράδειγμα, με :

ΜΕΤΑΒΛΗΤΕΣ
  ΠΡΑΓΜΑΤΙΚΕΣ: Β[5], Α[2,3]

δηλώνουμε τον πραγματικό πίνακα Β με στοιχεία Β[1], Β[2], Β[3], Β[4], Β[5] και τον πραγματικό πίνακα Α με στοιχεία Α[1, 1], Α[2, 1], Α[1, 2], Α[2, 2], Α[1, 3], Α[2, 3].

Οι δείκτες χωρίζονται με κόμματα και κάθε δείκτης είναι ακέραια έκφραση. Μικρότερος δείκτης υπονοείται ότι είναι το 1.

Εκφράσεις[Επεξεργασία | επεξεργασία κώδικα]

Γενικά έκφραση (expression) είναι

  • ένα στοιχείο για επεξεργασία (σταθερή ή μεταβλητή (απλή ή δεικτοδοτημένη)),
  • μια πράξη με δυο τέτοια στοιχεία,
  • μια πράξη με δυο εκφράσεις,
  • η συνάρτηση μιας έκφρασης, π.χ. Α_Τ(ε),
  • μια έκφραση κλεισμένη σε παρενθέσεις.

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

Ιεραρχία Τελεστής Πράξη
1 ^ Ύψωση σε δύναμη
2 *
/
DIV
MOD
Πολλαπλασιασμός
Διαίρεση
Ακέραια διαίρεση
Υπόλοιπο διαίρεσης
3 +
Πρόσθεση
Αφαίρεση
4
<=
=
=

<>
Αριθμητικά ή αλφαβητικά : Μικρότερο από
Αριθμητικά ή αλφαβητικά : Ίσο ή μικρότερο από
Αριθμητικά ή αλφαβητικά ή λογικά : Ίσο με
Αριθμητικά ή αλφαβητικά: Ίσο ή μεγαλύτερο από
Αριθμητικά ή αλφαβητικά: Μεγαλύτερο από
Αριθμητικά ή αλφαβητικά ή λογικά: Διάφορο από
5 ΟΧΙ Άρνηση λογική
6 ΚΑΙ
Η
ΚΑΙ λογικό
Η λογικό

Ακέραιες εκφράσεις[Επεξεργασία | επεξεργασία κώδικα]

Έτσι λέγονται οι εκφράσεις που φτιάχνονται με ακέραιες μεταβλητές ή σταθερές και έναν από τους τελεστές ^, *, +, –, DIV, MOD. Το αποτέλεσμα μιας ακέραιας έκφρασης είναι ακέραιος αριθμός.

Συγκριτικές εκφράσεις[Επεξεργασία | επεξεργασία κώδικα]

Για να φτιαχτεί μια συγκριτική έκφραση, χρησιμοποιούνται δυο αριθμητικές εκφράσεις ίδιου τύπου και ανάμεσά τους τοποθετείται ένας συγκριτικός τελεστής από τους <, <=, =, >=, >, <> .

Για παράδειγμα, αν A, B, C, D, E, F, G είναι αριθμητικές μεταβλητές:

  • A<B σημαίνει A μικρότερο από το B
  • B<=C σημαίνει B μικρότερο από ή ίσο με το C
  • C=D σημαίνει C ίσο με το D
  • D>=E σημαίνει D μεγαλύτερο από ή ίσο με το E
  • E>F σημαίνει E μεγαλύτερο από το F
  • F<>G σημαίνει F διάφορο από το G

Η συγκριτική έκφραση έχει λογική τιμή, είναι δηλαδή ΑΛΗΘΗΣ (αλήθεια) ή ΨΕΥΔΗΣ (ψέμα).

Λογικές εκφράσεις[Επεξεργασία | επεξεργασία κώδικα]

Λογική έκφραση είναι αυτή που έχει λογική τιμή, που μπορούμε δηλαδή να αποφανθούμε άμεσα αν είναι ΑΛΗΘΗΣ ή ΨΕΥΔΗΣ. Για να φτιαχτεί μια σύνθετη λογική έκφραση, χρησιμοποιούμε δυο λογικές εκφράσεις και ανάμεσά τους τοποθετούμε έναν λογικό τελεστή από τους ΚΑΙ, Η, ή μια λογική έκφραση και μπροστά της τον τελεστή ΟΧΙ.

Για παράδειγμα, αν r, s, t, u, v, w είναι λογικές μεταβλητές:

  • r ΚΑΙ s αληθεύει όταν αληθεύουν και η r και η s
  • s Η t αληθεύει όταν αληθεύει η s ή όταν αληθεύει η t
  • t = u αληθεύει όταν οι t και u έχουν ίδια τιμή
  • u <> v αληθεύει όταν οι u και v έχουν διαφορετική τιμή
  • ΟΧΙ w αληθεύει όταν η w είναι ψέμα.

Εσωτερικές συναρτήσεις στην ΓΛΩΣΣΑ[Επεξεργασία | επεξεργασία κώδικα]

Στην ΓΛΩΣΣΑ είναι ορισμένες οι παρακάτω συναρτήσεις:

ΗΜ(χ) Ημίτονο του χ
ΣΥΝ(χ) Συνημίτονο του χ
ΕΦ(χ) Εφαπτομένη του χ
Τ_Ρ(χ) Τετραγωνική ρίζα του χ
ΛΟΓ(χ) Φυσικός λογάριθμος του χ, ln(x)
Ε(χ) Εκθετική συνάρτηση, ex
Α_Μ(χ) Ακέραιο μέρος του χ
Α_Τ(χ) Απόλυτη τιμή του χ

Η εντολή ΔΙΑΒΑΣΕ[Επεξεργασία | επεξεργασία κώδικα]

Με την εντολή αυτή καθοδηγούμε τον υπολογιστή να διαβάσει στοιχεία που πρόκειται να επεξεργαστεί. Η μορφή της εντολής ΔΙΑΒΑΣΕ είναι

ΔΙΑΒΑΣΕ λίστα μεταβλητών

Παραδείγματα χρήσης:

ΔΙΑΒΑΣΕ I, J, A[Κ]
ΔΙΑΒΑΣΕ I[10], I[11], Ι[13]

Η εντολή ΓΡΑΨΕ[Επεξεργασία | επεξεργασία κώδικα]

Με την εντολή αυτή εξηγούμε στον υπολογιστή ότι πρέπει να γράψει μερικές εγγραφές με στοιχεία που του καθορίζουμε, με τρόπο που του καθορίζουμε. Η μορφή της εντολής ΓΡΑΨΕ είναι

ΔΙΑΒΑΣΕ λίστα εκφράσεων

Παραδείγματα χρήσης:

ΓΡΑΨΕ I, J, A+Β
ΓΡΑΨΕ I[10], I[11], Ι[13]
ΓΡΑΨΕ 'Δώσε έναν αριθμό'
ΓΡΑΨΕ 'Π[', κ, '] = ', Π[Κ]

Μετά την εκτέλεση μιας ΓΡΑΨΕ η γραφίδα μετακινείται αυτόματα στην αρχή της επόμενης γραμμής, οπότε η εντολή ΓΡΑΨΕ χωρίς καθόλου παραμέτρους αφήνει μια κενή γραμμή (χρήσιμο για διαχωρισμό στοιχείων).

Πηγές[Επεξεργασία | επεξεργασία κώδικα]

  • ΒΑΚΑΛΗ Α. – ΓΙΑΝΝΟΠΟΥΛΟΣ Η. – ΙΩΑΝΝΙΔΗΣ Ν. – ΚΟΙΛΙΑΣ Χ. – ΜΑΛΑΜΑΣ Κ. – ΜΑΝΩΛΟΠΟΥΛΟΣ Ι. – ΠΟΛΙΤΗΣ Π., "Ανάπτυξη εφαρμογών σε Προγραμματιστικό Περιβάλλον", Οργανισμός Έκδοσης Διδακτικών Βιβλίων, Υπουργείο Εθνικής Παιδείας και Θρησκευμάτων, Παιδαγωγικό Ινστιτούτο.