Εγχειρίδιο χρήσης για το λογισμικό Περιβάλλον Δομημένου Προγραμματισμού

Ε ρευνητικό Α καδημαϊκό Ι νστιτούτο Τ εχνολογίας Υ πολογιστών

Περιεχόμενα

1. Λίγα λόγια για το Περιβάλλον Δομημένου Προγραμματισμού.................... 3

2. Εγκατάσταση και εκτέλεση του προγράμματος........................................... 3

3. Μπάρα επιλογών........................................................................................ 3

Αρχείο......................................................................................................................................... 3

Επεξεργασία................................................................................................................................ 3

Εργαλεία...................................................................................................................................... 3

Εκτύπωση.................................................................................................................................... 3

Βοήθεια....................................................................................................................................... 3

4. Παράθυρα και πεδία του περιβάλλοντος διεπαφής...................................... 3

Πεδίο μενού εντολών.................................................................................................................. 3

Πεδίο ψευδοκώδικα.................................................................................................................... 3

Πεδίο μονοπατιού αρχείου.......................................................................................................... 3

Παράθυρο αποτελεσμάτων......................................................................................................... 3

Εξαγωγή των αποτελεσμάτων................................................................................................. 3

Παράθυρο γλώσσας Basic........................................................................................................... 3

Εξαγωγή του κώδικα Basic..................................................................................................... 3

Παράθυρο εισαγωγής δεδομένων............................................................................................... 3

Παράθυρο λογικού διαγράμματος............................................................................................... 3

Λειτουργίες κύλισης................................................................................................................ 3

Εκτύπωση του λογικού διαγράμματος.................................................................................... 3

5. Εντολές...................................................................................................... 3

Εντολές εισόδου και εξόδου....................................................................................................... 3

Εντολές επανάληψης................................................................................................................... 3

Εντολές απόφασης....................................................................................................................... 3

Εντολές εκχώρησης με τελεστές απλών αριθμητικών πράξεων................................................. 3

Εντολές εκχώρησης μαθηματικών συναρτήσεων....................................................................... 3

Πίνακες........................................................................................................................................ 3

Ρυθμίσεις συστήματος................................................................................................................. 3

6. Ψευδοκώδικας............................................................................................ 3

Δημιουργία ψευδοκώδικα........................................................................................................... 3

Εισαγωγή εντολών στο πεδίο του ψευδοκώδικα........................................................................ 3

Επεξεργασία εντολών: αντιγραφή, διαγραφή, μετακίνηση.......................................................... 3

Συμπλήρωση των κενών του ψευδοκώδικα................................................................................ 3

7. Τύποι δεδομένων........................................................................................ 3

Τύποι δεδομένων που εισάγονται στα ορίσματα των εντολών.................................................. 3

Ονόματα Μεταβλητών............................................................................................................. 3

Τιμές........................................................................................................................................ 3

Αριθμητικές παραστάσεις........................................................................................................ 3

Λογικές παραστάσεις............................................................................................................... 3

Λογικές συνθήκες.................................................................................................................... 3

Βασικοί τύποι δεδομένων ανάλογα με το αποτέλεσμα που επιστρέφουν................................... 3

Πίνακες.................................................................................................................................... 3

Αριθμητικοί τύποι.................................................................................................................... 3

Αλφαριθμητικοί τύποι ή Συμβολοσειρές (String)................................................................... 3

Λογικοί τύποι........................................................................................................................... 3

Τελεστές...................................................................................................................................... 3

Αριθμητικοί τελεστές.............................................................................................................. 3

Λογικοί τελεστές..................................................................................................................... 3

Συγκριτικοί τελεστές............................................................................................................... 3

8. Σφάλματα και αποτελέσματα...................................................................... 3

Ειδικές τιμές αποτελεσμάτων...................................................................................................... 3

Διακοπή της εκτέλεσης................................................................................................................ 3

Μηνύματα λάθους κατά την εκτέλεση......................................................................................... 3

Λογικά λάθη................................................................................................................................ 3

9. Ιδιαιτερότητες της γλώσσας Basic.............................................................. 3

# 1. Λίγα λόγια για το Περιβάλλον Δομημένου Προγραμματισμού

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

Το Περιβάλλον Δομημένου Προγραμματισμού

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

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

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

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

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

# 2. Εγκατάσταση και εκτέλεση του προγράμματος

Το λογισμικό δεν απαιτεί εγκατάσταση. Για να εκκινήσετε την εφαρμογή απλά εκτελέστε το αρχείο ElpnrPDP.exe που υπάρχει στο CD-ROM. Η εφαρμογή αποτελείται από τα εξής αρχεία και φακέλους:

1. ElpnrPDP.exe | εκτελέσιμο αρχείο
2. BasicWin.dxr | αρχείο
3. creditsWin.dxr | αρχείο
4. flowWin.dxr | αρχείο
5. help.cnt | αρχείο
6. help.hlp | αρχείο
7. lingo.ini | αρχείο
8. main.dxr | αρχείο
9. muiWin.dxr | αρχείο
10. readerWin.dxr | αρχείο
11. ReadMe.txt | αρχείο
12. ResultWin.dxr | αρχείο
13. Schemes.cxt | αρχείο
14. ScriptsA.cxt | αρχείο
15. ElpnrPDP.bmp | αρχείο
16. Xtras | φάκελος

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

# 3. Μπάρα επιλογών

## Αρχείο

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

## Επεξεργασία

Αντιγραφή εντολής Με την επιλογή αυτή μπορείτε να αντιγράψετε την τρέχουσα εντολή σε άλλη γραμμή του ψευδοκώδικα. Διαγραφή εντολής Με την επιλογή αυτή μπορείτε να διαγράψετε την τρέχουσα εντολή από τον ψευδοκώδικα. Εκτέλεση προγράμματος Με την επιλογή αυτή μπορείτε να εκτελέσετε το πρόγραμμά σας. |

##

## Εργαλεία

Λογικό διάγραμμα Με την επιλογή αυτή μπορείτε να εμφανίσετε το παράθυρο του λογικού διαγράμματος. Κώδικας BASIC Με την επιλογή αυτή μπορείτε να εμφανίσετε το παράθυρο του κώδικα BASIC. Αποτελέσματα Με την επιλογή αυτή μπορείτε να εμφανίσετε το παράθυρο των αποτελεσμάτων. |

## Εκτύπωση

Λογικό διάγραμμα Με την επιλογή αυτή μπορείτε να εκτυπώσετε το λογικό διάγραμμα. Κώδικας BASIC Με την επιλογή αυτή μπορείτε να εκτυπώσετε το περιεχόμενο του παραθύρου του κώδικα BASIC. Αποτελέσματα Με την επιλογή αυτή μπορείτε να εκτυπώσετε το περιεχόμενο του παραθύρου των αποτελεσμάτων. Ψευδοκώδικας Με την επιλογή αυτή μπορείτε να εκτυπώσετε τον ψευδοκώδικα. |

##

## Βοήθεια

Βοήθεια Με την επιλογή αυτή μπορείτε να ενεργοποιήσετε την ηλεκτρονική βοήθεια της εφαρμογής. To περιβάλλον διεπαφής της ηλεκτρονικής βοήθειας, εμφανίζεται στην ελληνική ή την αγγλική γλώσσα ανάλογα με το λειτουργικό σύστημα (Ελληνικά ή Αγγλικά Windows). Περί Με την επιλογή αυτή μπορείτε να δείτε πληροφορίες για τον κατασκευαστή του προγράμματος. |

# 4. Παράθυρα και πεδία του περιβάλλοντος διεπαφής

## Πεδίο μενού εντολών

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

## Πεδίο ψευδοκώδικα

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

## Πεδίο μονοπατιού αρχείου

Στο πεδίο αυτό εμφανίζεται το μονοπάτι του αρχείου του τρέχοντος προγράμματος.

Όταν το τρέχον πρόγραμμα είναι ένα νέο πρόγραμμα που δεν έχει αποθηκευτεί, στο πεδίο εμφανίζεται η λέξη untitled.

## Παράθυρο αποτελεσμάτων

Το παράθυρο στο οποίο εμφανίζονται τα αποτελέσματα ύστερα από την εκτέλεση κάποιας εντολής εξόδου στον ψευδοκώδικα του προγράμματος.

### Εξαγωγή των αποτελεσμάτων

Το περιεχόμενο του παραθύρου των αποτελεσμάτων μπορεί να εξαχθεί ως εξής:

Ø εκτύπωση με την επιλογή Εκτύπωση>Αποτελεσμάτων από την μπάρα επιλογών·

Ø αντιγραφή στο πρόχειρο του υπολογιστή (Clipboard). Επιλέγοντας με το ποντίκι όλο ή μέρος του κειμένου και στη συνέχεια πατώντας Ctrl+C, αντιγράφεται το επιλεγμένο κείμενο στο πρόχειρο. Στη συνέχεια αυτό μπορεί να επικολληθεί σε οποιαδήποτε άλλη εφαρμογή.

## Παράθυρο γλώσσας Basic

Στο παράθυρο αυτό δημιουργείται σε πραγματικό χρόνο ο κώδικας Basic που αντιστοιχεί στον ψευδοκώδικα.

### Εξαγωγή του κώδικα Basic

Το περιεχόμενο του παραθύρου του κώδικα Basic μπορεί να εξαχθεί ως εξής:

Ø εκτύπωση με Εκτύπωση>Κώδικα Basic από την μπάρα επιλογών·

Ø αντιγραφή στο πρόχειρο του υπολογιστή (Clipboard). Επιλέγοντας με το ποντίκι όλο ή μέρος του κειμένου και στη συνέχεια πατώντας Ctrl+C, αντιγράφεται το επιλεγμένο κείμενο στο πρόχειρο. Στη συνέχεια αυτό μπορεί να επικολληθεί σε οποιαδήποτε άλλη εφαρμογή.

## Παράθυρο εισαγωγής δεδομένων

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

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

Προσοχή! Αν δε γίνει εισαγωγή κάποιας τιμής στις μεταβλητές, τότε καταχωρίζεται η τιμή «μηδέν».

## Παράθυρο λογικού διαγράμματος

Στο παράθυρο αυτό δημιουργείται σε πραγματικό χρόνο το λογικό διάγραμμα του ψευδοκώδικα του προγράμματος.

### Λειτουργίες κύλισης

Όταν οι διαστάσεις του λογικού διαγράμματος ξεπεράσουν τα όρια του παραθύρου, τότε ενεργοποιούνται οι μπάρες κύλισης του λογικού διαγράμματος. Με δεξί «κλικ» στην κεντρική περιοχή του παραθύρου το λογικό διάγραμμα επανέρχεται στην αρχική του θέση.

### Εκτύπωση του λογικού διαγράμματος

Βλ. Μπάρα επιλογών, Εκτύπωση

# 5. Εντολές

Οι εντολές που υπάρχουν στο πεδίο ΜΕΝΟΥ ΕΝΤΟΛΩΝ, είναι ομαδοποιημένες σύμφωνα με τη λειτουργικότητά τους σε 7 κύριες κατηγορίες.

## Εντολές εισόδου και εξόδου
-Διάβασε .. | Ορίσματα: Ένα ή περισσότερα ονόματα μεταβλητών, χωρισμένα με «,». Χρησιμοποιείται για την είσοδο δεδομένων στο πρόγραμμα κατά την εκτέλεση. Βλ. Παράθυρο εισαγωγής δεδομένων
-Εμφάνισε ( .. ) | Ορίσματα: Ένα ή περισσότερα ονόματα μεταβλητών, συμβολοσειρές, αριθμητικά δεδομένα, χωρισμένα με «,». Χρησιμοποιείται για την έξοδο δεδομένων από το πρόγραμμα. Τα δεδομένα εξόδου εμφανίζονται στο παράθυρο των Αποτελεσμάτων συνεχίζοντας την εκτύπωση στην ίδια γραμμή του πεδίου μετά το τέλος προηγούμενων δεδομένων εξόδου.
-Εμφάνισε ( .. ) και άλλαξε γραμμή | Ορίσματα: Ένα ή περισσότερα ονόματα μεταβλητών, συμβολοσειρές, αριθμητικά δεδομένα, χωρισμένα με «,». Χρησιμοποιείται για την έξοδο δεδομένων από το πρόγραμμα. Τα δεδομένα εξόδου εμφανίζονται στο παράθυρο των Αποτελεσμάτων συνεχίζοντας την εκτύπωση στην ίδια γραμμή του πεδίου (μετά το τέλος προηγούμενων δεδομένων εξόδου) και επιπλέον στο τέλος των δεδομένων εισάγουν το χαρακτήρα αλλαγής γραμμής (carriage return). Η επόμενη εντολή εξόδου δεδομένων θα αρχίσει την εκτύπωση σε νέα γραμμή του πεδίου αποτελεσμάτων.
-Καθαρισμός οθόνης αποτελεσμάτων | Χρησιμοποιείται για να γίνει διαγραφή όλων των δεδομένων εξόδου στο παράθυρο των Αποτελεσμάτων.
## Εντολές επανάληψης
-Για .. από .. μέχρι .. κάνε ΤέλοςΓια | Ορίσματα: 1ο Μετρητής: όνομα μεταβλητής 2ο Αρχική τιμή: μεταβλητή ή αριθμός του τύπου των ακεραίων 3ο Τελική τιμή: μεταβλητή ή αριθμός του τύπου των ακεραίων Εκτελεί τις εντολές του ψευδοκώδικα που περιλαμβάνονται στο εσωτερικό της επαναληπτικής δομής τόσες φορές όσες δηλώνει ο μετρητής. Ο μετρητής μπορεί να πάρει τιμές μεταξύ της αρχικής και της τελικής τιμής. Κάθε φορά που ολοκληρώνεται η εκτέλεση των εσωτερικών εντολών, ο μετρητής αυξάνεται κατά 1.
-Για .. από .. μέχρι .. μειώνοντας κάνε ΤέλοςΓια | Όπως και στην προηγούμενη εντολή, αλλά με τη διαφορά ότι κάθε φορά που ολοκληρώνεται η εκτέλεση των εσωτερικών εντολών, ο μετρητής μειώνεται κατά 1.
-'Οσο .. Τέλος'Οσο | Ορίσματα: Μια λογική συνθήκη Εκτελεί τις εντολές του ψευδοκώδικα που περιλαμβάνονται στο εσωτερικό της επαναληπτικής δομής για όσο η λογική συνθήκη του ορίσματος είναι αληθής.
## Εντολές απόφασης
-Αν .. τότε ΤέλοςΑν | Ορίσματα: Μια λογική συνθήκη Εκτελεί τις εντολές του ψευδοκώδικα που περιλαμβάνονται στο εσωτερικό της δομής απόφασης μόνο όταν η λογική συνθήκη του ορίσματος είναι αληθής.
## Εντολές εκχώρησης με τελεστές απλών αριθμητικών πράξεων
-Θέσε .. ίσο με .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή οποιουδήποτε τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος την τιμή που επιστρέφει το 2ο όρισμα.
-Θέσε .. ίσο με το άθροισμα του .. και του .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Προσθετέος: Μεταβλητή ή τιμή αριθμητικού τύπου 3ο Προσθετέος: Μεταβλητή ή τιμή αριθμητικού τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος την αριθμητική τιμή που επιστρέφει το αποτέλεσμα της πρόσθεσης του 2ου και 3ου ορίσματος. Το αριθμητικό αποτέλεσμα της πρόσθεσης είναι: ακέραιος, αν και οι δύο Προσθετέοι είναι ακέραιοι τύπου κινητής υποδιαστολής, αν ο ένας τουλάχιστον από τους Προσθετέους είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με τη διαφορά .. μείον .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μειωτέος: μεταβλητή ή τιμή αριθμητικού τύπου 3ο Αφαιρετέος: μεταβλητή ή τιμή αριθμητικού τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος την αριθμητική τιμή που επιστρέφει το αριθμητικό αποτέλεσμα της αφαίρεσης Μειωτέος - Αφαιρετέος. Το αριθμητικό αποτέλεσμα της αφαίρεσης είναι: ακέραιος, αν Μειωτέος και Αφαιρετέος είναι ακέραιοι τύπου κινητής υποδιαστολής, αν ο ένας τουλάχιστον από τους Μειωτέος και Αφαιρετέος είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με το γινόμενο του .. επί το .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Παράγοντας: μεταβλητή ή τιμή αριθμητικού τύπου 3ο Παράγοντας: μεταβλητή ή τιμή αριθμητικού τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος την αριθμητική τιμή που επιστρέφει το γινόμενο των δύο Παραγόντων. Το αριθμητικό αποτέλεσμα του πολλαπλασιασμού είναι: ακέραιος, αν και οι δύο Παράγοντες είναι ακέραιοι τύπου κινητής υποδιαστολής, αν ο ένας τουλάχιστον από τους Παράγοντες είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με το πηλίκο του .. διά του .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Διαιρετέος: μεταβλητή ή τιμή αριθμητικού τύπου 3ο Διαιρέτης: μεταβλητή ή τιμή αριθμητικού τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος την αριθμητική τιμή του πηλίκου της διαίρεσης Διαιρετέος διά Διαιρέτης. Το αριθμητικό αποτέλεσμα της διαίρεσης είναι: το ακέραιο μέρος του πηλίκου, αν Διαιρετέος και Διαιρέτης είναι ακέραιοι τύπου κινητής υποδιαστολής, αν ο ένας τουλάχιστον από τους Διαιρετέο και Διαιρέτη είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με το υπόλοιπο της διαίρεσης .. διά του .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Διαιρετέος: μεταβλητή ή τιμή αριθμητικού τύπου 3ο Διαιρέτης: μεταβλητή ή τιμή αριθμητικού τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος την τιμή του υπόλοιπου της διαίρεσης Διαιρετέος διά Διαιρέτης, η οποία είναι ακέραιος αριθμός.

## Εντολές εκχώρησης μαθηματικών συναρτήσεων
-Θέσε .. ίσο με την τετραγωνική ρίζα του .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή αριθμητικού τύπου, θετική Εκχωρεί στη μεταβλητή του 1ου ορίσματος την τετραγωνική ρίζα του 2ου ορίσματος. Ανάλογα με τον τύπο του 2ου ορίσματος, το αριθμητικό αποτέλεσμα είναι είτε τύπου ακέραιου (από στρογγυλοποίηση) είτε κινητής υποδιαστολής.
-Θέσε .. ίσο με την εφαπτομένη του .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή αριθμητικού τύπου που εκφράζει μοίρες Εκχωρεί στη μεταβλητή του 1ου ορίσματος την εφαπτομένη του 2ου ορίσματος. Το αριθμητικό αποτέλεσμα είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με το τόξο εφαπτομένης .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή αριθμητικού τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος το τόξο εφαπτομένης του 2ου ορίσματος. Το αριθμητικό αποτέλεσμα εκφράζει μοίρες και είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με το ημίτονο του .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή αριθμητικού τύπου που εκφράζει μοίρες Εκχωρεί στη μεταβλητή του 1ου ορίσματος το ημίτονο του 2ου ορίσματος. Το αριθμητικό αποτέλεσμα είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με το συνημίτονο του .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή αριθμητικού τύπου που εκφράζει μοίρες Εκχωρεί στη μεταβλητή του 1ου ορίσματος το συνημίτονο του 2ου ορίσματος. Το αριθμητικό αποτέλεσμα είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με τη δύναμη του .. στη .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Βάση: μεταβλητή ή τιμή αριθμητικού τύπου 3ο Εκθέτης: μεταβλητή ή τιμή αριθμητικού τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος τη δύναμη της ύψωσης της Βάσης στον Εκθέτη. Το αριθμητικό αποτέλεσμα είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με την απόλυτη τιμή του .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή αριθμητικού τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος την απόλυτη τιμή 2ου ορίσματος. Ανάλογα με τον τύπο του 2ου ορίσματος, το αριθμητικό αποτέλεσμα είναι είτε τύπου ακέραιου είτε κινητής υποδιαστολής.
-Θέσε .. ίσο με το νεπέριο λογάριθμο του .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή αριθμητικού τύπου, θετική Εκχωρεί στη μεταβλητή του 1ου ορίσματος το νεπέριο (φυσικό) λογάριθμο του 2ου ορίσματος. Το αριθμητικό αποτέλεσμα είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με το λογάριθμο του .. με βάση .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή αριθμητικού τύπου, θετική 3ο Βάση: μεταβλητή ή τιμή αριθμητικού τύπου, θετική Εκχωρεί στη μεταβλητή του 1ου ορίσματος το λογάριθμο του 2ου ορίσματος με βάση το 3ο όρισμα. Το αριθμητικό αποτέλεσμα είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με τη νεπέρια δύναμη του .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή αριθμητικού τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος τη νεπέρια δύναμη του 2ου ορίσματος. Το αριθμητικό αποτέλεσμα είναι τύπου κινητής υποδιαστολής.
-Θέσε .. ίσο με τυχαίο αριθμό από 1 έως .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή αριθμητικού τύπου Εκχωρεί στη μεταβλητή του 1ου ορίσματος έναν τυχαίο ακέραιο αριθμό από το 1 έως το ακέραιο μέρος του 2ου ορίσματος.
## Πίνακες
-Δήλωση πίνακα .. με αριθμό στοιχείων .. | Ορίσματα: 1ο Όνομα μεταβλητής 2ο Μεταβλητή ή τιμή ακέραιου αριθμητικού τύπου Ορίζει ένα νέο πίνακα. Δηλώνει τη μεταβλητή του 1ου ορίσματος ως μεταβλητή τύπου πίνακα, ο οποίος θα περιέχει τόσα στοιχεία όσα δηλώνει η τιμή του 2ου ορίσματος.
## Ρυθμίσεις συστήματος
-Θέσε ακρίβεια .. δεκαδικών ψηφίων | Ορίσματα: Τιμή αριθμητικού τύπου ακέραιου, από -15 έως 15. Θέτει την ακρίβεια των δεκαδικών ψηφίων των αριθμητικών αποτελεσμάτων του τύπου κινητής υποδιαστολής. Αν η τιμή του ορίσματος είναι: § αρνητική, τότε η ακρίβεια είναι ίση με την απόλυτη τιμή του ορίσματος, ενώ αφαιρούνται τα περίσσια μηδενικά του δεκαδικού μέρους από το τέλος των αριθμητικών αποτελεσμάτων. § θετική, τότε η ακρίβεια είναι ίση με την τιμή του ορίσματος και διατηρούνται τα περίσσια μηδενικά του δεκαδικού μέρους στο τέλος των αριθμητικών αποτελεσμάτων. § Μηδέν, τότε γίνεται στρογγυλοποίηση των αριθμητικών αποτελεσμάτων στον πλησιέστερο ακέραιο και δεν εμφανίζονται δεκαδικά ψηφία. Η προκαθορισμένη από το πρόγραμμα ακρίβεια είναι 4 δεκαδικά ψηφία.

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

Ψευδοκώδικας | Basic | Λογικό διάγραμμα
Εντολές εισόδου και εξόδου
-Διάβασε .. | INPUT .. | INPUT ..
-Εμφάνισε ( .. ) | PRINT .. ; | PRINT ..
-Εμφάνισε ( .. ) και άλλαξε γραμμή | PRINT .. | PRINT ..
-Καθαρισμός οθόνης αποτελεσμάτων | CLS | CLS
Εντολές επανάληψης
-Για .. από .. μέχρι .. κάνε ΤέλοςΓια | FOR .. = .. TO .. NEXT | ( .. : .. , .. )?
-Για .. από .. μέχρι .. μειώνοντας κάνε ΤέλοςΓια | FOR .. = .. TO .. STEP - 1 NEXT | ( .. : .. , .. ,-1)?
-'Οσο .. Τέλος'Οσο | WHILE .. WEND | ( .. )?
Εντολές απόφασης
-Αν .. τότε ΤέλοςΑν | IF .. THEN END IF | ( .. )?
Εντολές εκχώρησης με τελεστές απλών αριθμητικών πράξεων
-Θέσε .. ίσο με .. | .. = .. | .. = ..
-Θέσε .. ίσο με το άθροισμα του .. και του .. | .. = .. + .. | .. = .. + ..
-Θέσε .. ίσο με τη διαφορά .. μείον .. | .. = .. - .. | .. = .. - ..
-Θέσε .. ίσο με το γινόμενο του .. επί το .. | .. = .. * .. | .. = .. * ..
-Θέσε .. ίσο με το πηλίκο του .. διά του .. | .. = .. / .. | .. = .. / ..
-Θέσε .. ίσο με το υπόλοιπο της διαίρεσης .. διά του .. | .. = .. MOD .. | .. = .. MOD ..
Εντολές εκχώρησης μαθηματικών συναρτήσεων
-Θέσε .. ίσο με την τετραγωνική ρίζα του .. | .. = sqr( .. ) | .. = sqr( .. )
-Θέσε .. ίσο με την εφαπτομένη του .. | .. = tan( .. ) | .. = tan( .. )
-Θέσε .. ίσο με το τόξο εφαπτομένης .. | .. = atan( .. ) | .. = atan( .. )
-Θέσε .. ίσο με το ημίτονο του .. | .. = sin( .. ) | .. = sin( .. )
-Θέσε .. ίσο με το συνημίτονο του .. | .. = cos( .. ) | .. = cos( .. )
-Θέσε .. ίσο με τη δύναμη του .. στη .. | .. = .. ^( .. ) | .. = .. ^ ..
-Θέσε .. ίσο με την απόλυτη τιμή του .. | .. = abs( .. ) | .. = | .. |
-Θέσε .. ίσο με το νεπέριο λογάριθμο του .. | .. = log( .. ) | .. = l n( .. )
-Θέσε .. ίσο με το λογάριθμο του .. με βάση .. | .. = log( .. ) / log( .. ) Σημείωση: Στην Basic δεν υπάρχει αντίστοιχη μαθηματική συνάρτηση. Για το λόγο αυτό γίνεται έμμεσος υπολογισμός του αποτελέσματος. | .. = log( .., .. )
-Θέσε .. ίσο με τη νεπέρια δύναμη του .. | .. = exp( .. ) | .. = e^( .. )
-Θέσε .. ίσο με τυχαίο αριθμό από 1 έως .. | .. = INT(RND * ..) + 1 | .. = RND( .. )
Πίνακες
-Δήλωση πίνακα .. με αριθμό στοιχείων .. | dim .. ( .. ) | Πίνακας .. ( .. )
Ρυθμίσεις συστήματος
-Θέσε ακρίβεια .. δεκαδικών ψηφίων | REM Ακρίβεια .. δεκαδικών ψηφίων στον ψευδοκώδικα Σημείωση: Στην Basic δεν υπάρχει αντίστοιχη εντολή. Η δήλωση της ακρίβειας των δεκαδικών ψηφίων γίνεται με ειδική δήλωση του τύπου των μεταβλητών στο πρόγραμμα. Για το λόγο αυτό γίνεται η χρήση της δήλωσης σχολίου (REM). | Ακρίβεια δεκ. ψ. = ..

# 6. Ψευδοκώδικας

## Δημιουργία ψευδοκώδικα

Για να δημιουργήσετε τον ψευδοκώδικα ενός προγράμματος στο περιβάλλον του λογισμικού, ακολουθήστε τα παρακάτω βήματα:

1. Επιλέξτε τις εντολές που θέλετε να περιλαμβάνει το πρόγραμμά σας από το ΜΕΝΟΥ ΕΝΤΟΛΩΝ που υπάρχει αριστερά, με [«κλικ» + σύρσιμο] στο πεδίο του ΨΕΥΔΟΚΩΔΙΚΑ. (Βλ. Εισαγωγή εντολών στο πεδίο του ψευδοκώδικα)

2. Τοποθετήστε τις εντολές σε λογική σειρά. (Βλ. Επεξεργασία εντολών: αντιγραφή, διαγραφή, μετακίνηση)

3. Συμπληρώστε όλα τα κενά (..) των εντολών, στο πεδίο του ψευδοκώδικα, με τιμές και μεταβλητές. (Βλ. Συμπλήρωση των κενών του ψευδοκώδικα)

4. Εκτελέστε το πρόγραμμα επιλέγοντας στην μπάρα επιλογών Επεξεργασία>Εκτέλεση προγράμματος ή από τη συντόμευση Ctrl+R.

5. Τέλος, δείτε τα αποτελέσματα, επιλέγοντας στην μπάρα επιλογών Εργαλεία>Αποτελέσματα.

## Εισαγωγή εντολών στο πεδίο του ψευδοκώδικα

Εισαγωγή εντολής στο πεδίο του ψευδοκώδικα

Για να εισάγετε εντολές στο πεδίο του ψευδοκώδικα:

1. Επιλέξτε από το ΜΕΝΟΥ ΕΝΤΟΛΩΝ την εντολή, κρατώντας πατημένο το αριστερό πλήκτρο του ποντικιού. Η εντολή μεταφέρεται σε ένα κινητό πεδίο που ακολουθεί την κίνηση του ποντικιού.
2. Σύρετε την εντολή χωρίς να αφήσετε το αριστερό πλήκτρο του ποντικιού, στο πεδίο του ψευδοκώδικα
3. Αφήστε το πλήκτρο όταν ο δείκτης του ποντικιού βρεθεί στο κάτω μέρος εκείνης της εντολής του ψευδοκώδικα μετά την οποία θέλετε να εισαχθεί η νέα εντολή.

## Επεξεργασία εντολών: αντιγραφή, διαγραφή, μετακίνηση

Με απλό «κλικ» σε μια γραμμή στο πεδίο του ψευδοκώδικα εμφανίζεται στην αρχή της γραμμής αυτής η κόκκινη ένδειξη, που δηλώνει την ενεργοποίηση της τρέχουσας εντολής για επεξεργασία.

Στην κατάσταση αυτή μπορείτε:

1. Να συμπληρώσετε ή να αλλάξετε τα δεδομένα των κενών της τρέχουσας εντολής. (Βλ. Συμπλήρωση των κενών του ψευδοκώδικα)
2. Να διαγράψετε την τρέχουσα εντολή του ψευδοκώδικα, επιλέγοντας το μενού Επεξεργασία>Διαγραφή Εντολής από την μπάρα επιλογών ή με τη συντόμευση Ctrl+X.

Διαγραφή εντολής από το πεδίο του ψευδοκώδικα

3. Να αντιγράψετε[1] την τρέχουσα εντολή σε άλλη γραμμή του ψευδοκώδικα, επιλέγοντας το μενού Επεξεργασία>Αντιγραφή Εντολής της μπάρας επιλογών ή με τη συντόμευση Ctrl+C.

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

Με δεξί «κλικ» στο ειδικό πεδίο μετακίνησης ακυρώνεται η αντιγραφή της εντολής.

Αντιγραφή εντολής σε άλλη θέση στο πεδίο του ψευδοκώδικα

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

Μετακίνηση εντολής στο πεδίο του ψευδοκώδικα

Στην κατάσταση αυτή μπορείτε να μετακινήσετε[2] την τρέχουσα εντολή, αν στη συνέχεια κάνετε «κλικ» σε κάποια γραμμή του ψευδοκώδικα. Τότε η τρέχουσα εντολή εισάγεται σε νέα γραμμή και διαγράφεται από την παλιά. Με αυτό τον τρόπο μπορείτε να αλλάξετε τη σειρά των εντολών στο πρόγραμμά σας.

Με δεξί «κλικ» στο ειδικό πεδίο μετακίνησης ακυρώνεται η μετακίνηση της εντολής.

## Συμπλήρωση των κενών του ψευδοκώδικα

Συμπλήρωση των κενών στις εντολές του ψευδοκώδικα

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

1. Κάντε «κλικ» στη γραμμή της εντολής στο πεδίο του ψευδοκώδικα και θα εμφανιστεί στην αρχή της εντολής η κόκκινη ένδειξη, που δηλώνει ποια είναι η τρέχουσα εντολή που μπορεί να υποστεί επεξεργασία.
2. Κάντε δεξί «κλικ» στο κενό της τρέχουσας εντολής που θέλετε να εισαγάγετε ή να τροποποιήσετε την τιμή του. Θα εμφανιστεί τότε κάτω από το κενό, το πεδίο εισαγωγής δεδομένων. Αρχικά αυτό περιέχει τα ήδη υπάρχοντα δεδομένα του κενού. Μπορείτε τότε να πληκτρολογήσετε τα νέα δεδομένα.
3. Πατήστε ENTER για να εισαγάγετε στο κενό του ψευδοκώδικα τα δεδομένα που περιέχονται το πεδίο εισαγωγής. Αμέσως μετά, το πεδίο εισαγωγής δεδομένων εξαφανίζεται.

Σημειώσεις:

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

2. Αν κατά την ώρα της εισαγωγής δεδομένων κάνετε «κλικ» με το ποντίκι σε κάποιο σημείο του πεδίου του ψευδοκώδικα, τότε η ενέργεια συμπλήρωσης του κενού ακυρώνεται και δε γίνεται μεταβολή των δεδομένων σε αυτό.

3. Ενημερωθείτε για τους τύπους δεδομένων που μπορούν να δεχτούν οι εντολές. (Βλ. Τύποι δεδομένων)

# 7. Τύποι δεδομένων

## Τύποι δεδομένων που εισάγονται στα ορίσματα των εντολών
### Ονόματα Μεταβλητών | Ένα σύνολο από λατινικούς χαρακτήρες γραμμάτων και αριθμών στο οποίο: Δεν περιλαμβάνονται κενά και χαρακτήρες συμβόλων Ο πρώτος χαρακτήρας δεν είναι αριθμός
### Τιμές | Οι τιμές μπορούν να είναι: § Ονόματα Μεταβλητών Συμβολοσειρές (Αλφαριθμητικοί τύποι ή String) Αριθμητικοί τύποι Λογικές τιμές Πίνακες ή στοιχεία πινάκων
### Αριθμητικές παραστάσεις | Είναι παραστάσεις μεταβλητών και τιμών αριθμητικού τύπου που περιλαμβάνουν αριθμητικούς τελεστές. Οι αριθμητικές παραστάσεις επιστρέφουν αποτέλεσμα αριθμητικού τύπου.
### Λογικές παραστάσεις | Είναι παραστάσεις λογικών συνθηκών που περιλαμβάνουν λογικούς τελεστές. Οι λογικές παραστάσεις επιστρέφουν αποτέλεσμα λογικού τύπου.
### Λογικές συνθήκες | Είναι παραστάσεις μεταβλητών και τιμών του ίδιου τύπου που περιλαμβάνουν συγκριτικούς τελεστές. Οι λογικές συνθήκες επιστρέφουν αποτέλεσμα λογικού τύπου.
## Βασικοί τύποι δεδομένων ανάλογα με το αποτέλεσμα που επιστρέφουν
### Πίνακες | Στους πίνακες μπορούν να εκχωρηθούν δεδομένα του τύπου: § Ονόματα Μεταβλητών Τιμές τα οποία επιστρέφουν αποτέλεσμα τύπου: Αλφαριθμητικό ή αλλιώς Συμβολοσειρά (String) Αριθμητικό Λογικό
### Αριθμητικοί τύποι | Οι αριθμητικοί τύποι είναι: Ακέραιοι (Integer) Κινητής υποδιαστολής (Floating point). Για να εισαγάγουμε μια αριθμητική τιμή αυτού του τύπου γράφουμε τον αριθμό θέτοντας ως υποδιαστολή το χαρακτήρα της τελείας (.), π.χ. 867.0 Σημείωση: Ο μέγιστος ακέραιος αριθμός που υποστηρίζουν οι περισσότεροι προσωπικοί υπολογιστές είναι ο 2147483647 (ή 231-1). Για μεγαλύτερους αριθμούς χρησιμοποιήστε τον τύπο κινητής υποδιαστολής.
### Αλφαριθμητικοί τύποι ή Συμβολοσειρές (String) | Οι αλφαριθμητικοί τύποι μπορούν να είναι οποιαδήποτε ακολουθία χαρακτήρων η οποία αρχίζει και τελειώνει με το χαρακτήρα των απλών εισαγωγικών (“) (quote).
### Λογικοί τύποι | Οι τύποι δεδομένων που επιστρέφουν το λογικό αποτέλεσμα Αληθής (True) ή Ψευδής (False).
## Τελεστές
### Αριθμητικοί τελεστές | * πράξη του πολλαπλασιασμού / πράξη της διαίρεσης + πράξη της πρόσθεσης - πράξη της αφαίρεσης ή πρόσημο
### Λογικοί τελεστές | and καθορίζει αν και οι δύο λογικές παραστάσεις είναι αληθείς or καθορίζει αν τουλάχιστον μία από τις δύο λογικές παραστάσεις είναι αληθείς not αναιρεί το λογικό αποτέλεσμα
### Συγκριτικοί τελεστές | < μικρότερο από <= μικρότερο από ή ίσο με <> άνισο με (διάφορο) > μεγαλύτερο από >= μεγαλύτερο από ή ίσο με = ίσο με

# 8. Σφάλματα και αποτελέσματα

## Ειδικές τιμές αποτελεσμάτων

Τα προγράμματα εμφανίζουν αποτελέσματα, όταν στον ψευδοκώδικα περιέχουν εντολές εξόδου.

Στα αποτελέσματα της εκτέλεσης ενός προγράμματος ενδέχεται ορισμένες φορές να εμφανιστούν οι παρακάτω ειδικές τιμές:

§ INF, όταν ένα αριθμητικό αποτέλεσμα είναι +¥

§ -INF, όταν ένα αριθμητικό αποτέλεσμα είναι -¥

§ NAN, όταν ένα αριθμητικό αποτέλεσμα δεν ορίζεται στο σύνολο των πραγματικών αριθμών. Ελέγξτε αν οι τύποι των ορισμάτων των εντολών είναι οι σωστοί.

§ NULL, όταν ένα αποτέλεσμα δεν έχει τιμή. Ελέγξτε αν υπάρχουν στο πρόγραμμα μεταβλητές στις οποίες δε γίνεται εκχώρηση τιμής.

§ VOID, όταν ένα αποτέλεσμα δεν μπορεί να υπολογιστεί εξαιτίας των παραπάνω.

## Διακοπή της εκτέλεσης

Σε ορισμένες περιπτώσεις γίνεται αναγκαία η διακοπή της εκτέλεσης ενός προγράμματος, όπως για παράδειγμα στην περίπτωση ενός ατέρμονου βρόχου. Το λογισμικό επιτρέπει τη διακοπή της εκτέλεσης ενός προγράμματος με το συνδυασμό πλήκτρων Ctrl+E.

## Μηνύματα λάθους κατά την εκτέλεση

Κατά την εκτέλεση των προγραμμάτων, η εμφάνιση κάποιου σφάλματος εξαιτίας λογικού ή άλλου λάθους που δεν εντοπίζεται από το λογισμικό μπορεί να προκαλέσει την εμφάνιση των ακόλουθων μηνυμάτων:

§ Η διαίρεση με το μηδέν είναι αδύνατη.

Το μήνυμα αυτό παρουσιάζεται όταν εκτελεστεί η αριθμητική πράξη της διαίρεσης με διαιρέτη το μηδέν ή κάποια μεταβλητή στην οποία εκχωρήθηκε μηδενική τιμή. Στην περίπτωση αυτή διακόπτεται η εκτέλεση του προγράμματος.

§ Παρουσιάστηκε μοιραίο σφάλμα. Η εφαρμογή πρέπει να τερματιστεί.

Το μήνυμα αυτό παρουσιάζεται όταν εμφανιστεί κάποιο απρόσμενο σφάλμα κατά την εκτέλεση. Ακολουθεί το παράθυρο διαλόγου για την αποθήκευση του προγράμματος, στο οποίο επιλέγοντας:

Ø Ναι, γίνεται αποθήκευση του προγράμματος και στη συνέχεια η εφαρμογή τερματίζεται.

Ø Όχι, το πρόγραμμα δεν αποθηκεύεται και στη συνέχεια η εφαρμογή τερματίζεται.

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

Σημείωση:

Ορισμένες φορές το μήνυμα μοιραίου σφάλματος συνοδεύεται και από δεύτερο μήνυμα με τον τίτλο Director Player Error. Απαντήστε στο παράθυρο διαλόγου για να συνεχίσετε.

## Λογικά λάθη

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

# 9. Ιδιαιτερότητες της γλώσσας Basic

Τα αποτελέσματα της εκτέλεσης των προγραμμάτων στο λογισμικό ενδέχεται να παρουσιάζουν ορισμένες ανακολουθίες σχετικά με εκείνα από την εκτέλεση του κώδικα Basic. Αυτό οφείλεται στο διαφορετικό τρόπο διαχείρισης ορισμένων λειτουργιών.

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

[1] Δεν επιτρέπεται η μετακίνηση και η αντιγραφή των σύνθετων εντολών επανάληψης και απόφασης.

[2] Δεν επιτρέπεται η μετακίνηση και η αντιγραφή των σύνθετων εντολών επανάληψης και απόφασης.