357 γραμμές
25 KiB
Markdown
357 γραμμές
25 KiB
Markdown
+++
|
||
title = 'Xbasic'
|
||
date = '2000-09-01T00:00:00Z'
|
||
description = ''
|
||
author = 'Κώστας Τσακάλογλου(mailto:tsakf@hellug.gr)'
|
||
issue = ['Magaz 26']
|
||
issue_weight = 2
|
||
+++
|
||
|
||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||
|
||
*Μία γλώσσα προγραμματισμού Basic που έχει αρκετά στοιχεία C. Μέρος ΙΙΙ*
|
||
|
||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||
|
||
Σε αυτό το τεύχος θα συνεχίσουμε την αναφορά στα δομικά στοιχεία της Xbasic. θα αναφερθούμε στις εντολές, τις πράξεις και τους τελεστές. θα αναλύσουμε και ένα
|
||
παράδειγμα για να κατανοήσουμε καλύτερα την χρήση των πράξεων και των τελεστών.
|
||
|
||
**1. Εντολές**
|
||
----------------------------------------
|
||
|
||
**2. Γραμμές κώδικα**
|
||
-----------------------------------------------
|
||
|
||
**3. Τελεστές**
|
||
-----------------------------------------
|
||
|
||
- [3.1 Ο τελεστής εκχώρησης (=)](#ss3.1)
|
||
- [3.2 Τελεστές μιας παραμέτρου](#ss3.2)
|
||
- [3.3 Τελεστές δύο παραμέτρων](#ss3.3)
|
||
- [3.4 Προτεραιότητα τελεστών](#ss3.4)
|
||
- [3.5 Είδη τελεστών](#ss3.5)
|
||
- [3.6 Ομάδες τελεστών](#ss3.6)
|
||
- [3.7 Προτεραιότητα τελεστών](#ss3.7)
|
||
|
||
**4. Παράδείγμα χρήσης αριθμητικών τελεστών.**
|
||
------------------------------------------------------------------------
|
||
|
||
**5. Επίλογος 3ου μέρους:**
|
||
-----------------------------------------------------
|
||
|
||
|
||
### [1. Εντολές]{#s1}
|
||
|
||
Οι εντολές είναι λέξεις που προσδιορίζουν την εκτέλεση μιας πράξης, ακολουθούμενες από στοιχεία της γλώσσας που ταιριάζουν στην κάθε εντολή. Γενικά προτιμάται
|
||
να χρησιμοποιούμε συναρτήσεις της γλώσσας αντί για εντολές. Οι εντολές όμως έχουν δύο πλεονεκτήματα.
|
||
|
||
Το πρώτο είναι ότι δεν εκτελούνται επιπλέον εντολές που απαιτούνται για την αποθήκευση και επαναφορά των παραμέτρων, ώστε μόλις τελειώσει η εκτέλεση της
|
||
συνάρτησής τους να επιστρέψουμε στην προηγούμενη κατάσταση. Αυτό δίνει μεγαλύτερη ταχύτητα στο πρόγραμμά μας. Το δεύτερο είναι ότι δεν περιοριζόμαστε από
|
||
ορισμούς συναρτήσεων και έτσι κάθε εντολή έχει την σύνταξή της που είναι καθαρή και πιο κατανοητή από μία λίστα παραμέτρων.
|
||
|
||
**Χρήση κενών και TABS**\
|
||
Γενικά μπορούμε να χρησιμοποιούμε τα κενά ή τα TABS για να μορφοποιούμε το πρόγραμμά μας εκτός από μια εξαίρεση. Ότι βρίσκεται ανάμεσα σε εισαγωγικά και
|
||
ορίζεται σαν περιεχόμενο αλφαριθμητικής μεταβλητής. Εκεί τα κενά παίζουν ρόλο και, αν υπάρχουν θα εμφανίζονται στα περιεχόμενα της μεταβλητής ενώ οπουδήποτε
|
||
αλλού αγνοούνται.
|
||
|
||
Παρακάτω θα δούμε δυο παραδείγματα όπου φαίνεται πόσο ευανάγνωστο γίνεται ένα πρόγραμμα όταν χρησιμοποιήσουμε κενά και TABS. Στην πρώτη περίπτωση δυσκολευόμαστε
|
||
να βρούμε πού αρχίζει και πού τελειώνει η επανάληψη των εντολών.
|
||
|
||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||
|
||
FOR i1=1 to 1000
|
||
PRINT i1
|
||
IF i1>500 THEN PRINT "i1>500"
|
||
NEXT i1
|
||
|
||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||
|
||
Ενώ μόλις γίνει η διαμόρφωση με τα κενά είναι εύκολο να δούμε τις εντολές που επαναλαμβάνονται εύκολα.
|
||
|
||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||
|
||
FOR i1=1 to 1000
|
||
PRINT i1
|
||
IF i1>500 THEN PRINT "i1>500"
|
||
NEXT i1
|
||
|
||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||
|
||
Τα πράγματα δυσκολεύουν, όταν οι εντολές που επαναλαμβάνονται είναι πάρα πολλές και δε χωράνε σε μια οθόνη. Τότε η μορφοποίηση είναι απαραίτητη, για να
|
||
μπορέσουμε να βγάλουμε κάποια άκρη, όταν εκ των υστέρων ξανακοιτάξουμε το πρόγραμμα μετά από καιρό.
|
||
|
||
|
||
### [2. Γραμμές κώδικα]{#s2}
|
||
|
||
Οι γραμμές του κώδικα ξεχωρίζουν με το ENTER που υπάρχει στο τέλος κάθε γραμμής. Στην ίδια γραμμή κώδικα μπορούν να υπάρχουν περισσότερες από μία εντολές με
|
||
διαχωριστικό το \':\'. Έτσι, για παράδειγμα, μπορούμε να έχουμε τις εντολές, a=a+1:PRINT a στην ίδια γραμμή εφ\' όσον τις ξεχωρίσουμε με το διαχωριστικό \':\'.
|
||
|
||
Οι γραμμές του κώδικα μπορούν να έχουν ονόματα ώστε να είναι δυνατή μετάβαση της εκτέλεσης του προγράμματος στην συγκεκριμένη γραμμή.
|
||
|
||
|
||
### [3. Τελεστές]{#s3}
|
||
|
||
Οι τελεστές είναι σύμβολα που με την χρήση τους γίνονται πράξεις και ενέργειες όπου συμμετέχουν μία ή και περισσότερες παράμετροι. όπως στην άλγεβρα. Στην
|
||
Xbasic υπάρχουν τελεστές αριθμητικοί, λογικοί, σε επίπεδο bit και τελεστές διευθύνσεων. Ο κάθε ένας έχει την προτεραιότητά του και ανήκει σε μια τάξη που
|
||
ορίζει:
|
||
|
||
- τους δεκτούς τύπους παραμέτρων
|
||
- τον τύπο του αποτελέσματος και,
|
||
- τους κανόνες μετατροπής των τύπων για την εκτέλεση μιας πράξης
|
||
|
||
### [3.1 Ο τελεστής εκχώρησης (=)]{#ss3.1}
|
||
|
||
Αυτόν τον τελεστή τον χρησιμοποιούμε για να εκχωρήσουμε μια τιμή σε μια μεταβλητή Π.Χ. a1=10
|
||
|
||
### [3.2 Τελεστές μιας παραμέτρου]{#ss3.2}
|
||
|
||
Οι τελεστές μιας παραμέτρου έχουν μόνο μια παράμετρο δεξιά από τον τελεστή. Τέτοιο παράδειγμα είναι ο τελεστής - δηλώνει το αρνητικό αριθμητικό πρόσημο Π.Χ.
|
||
-10, -a1 -(a+b). Στην τελευταία περίπτωση το άθροισμα (a+b) επειδή περικλείεται από παρενθέσεις θεωρείται μία παράμετρος.
|
||
|
||
### [3.3 Τελεστές δύο παραμέτρων]{#ss3.3}
|
||
|
||
Οι τελεστές αυτοί υπολογίζουν τις δύο τιμές που τους δίνονται σαν παράμετροι και δίνουν ένα αποτέλεσμα. Όταν οι παράμετροι είναι διαφορετικού τύπου πρώτα
|
||
μετατρέπεται η μια στο είδος της άλλης και μετά εκτελείται η πράξη.
|
||
|
||
### [3.4 Προτεραιότητα τελεστών]{#ss3.4}
|
||
|
||
Όπως και στην άλγεβρα έτσι και εδώ οι τελεστές έχουν προτεραιότητα. Οι τελεστές με την μεγαλύτερη προτεραιότητα εκτελούνται πρώτα και τελευταίοι εκτελούνται
|
||
αυτοί που έχουν την μικρότερη προτεραιότητα. Αν για παράδειγμα γράψουμε x1=a+b\*c τότε, πρώτα θα υπολογιστεί το b\*c και μετά το αποτέλεσμα θα προστεθεί στο a.
|
||
Με την προτεραιότητα μειώνονται οι ανάγκες χρήσης παρενθέσεων για τον καθορισμό του τρόπου υπολογισμού των πράξεων. Οι παρενθέσεις χρειάζονται όταν θέλουμε να
|
||
ορίσουμε εμείς την σειρά εκτέλεσης. Δηλ.
|
||
|
||
- x1=a+b\*c όπου είναι το ίδιο με το να γράφαμε x1=a+(b\*c) ή
|
||
- x1=(a+b)\*c όπου εξαναγκάζουμε να γίνει πρώτα το άθροισμα και μετά ο πολλαπλασιασμός.
|
||
|
||
### [3.5 Είδη τελεστών]{#ss3.5}
|
||
|
||
Οι αριθμητικοί τελεστές έχουν την ίδια χρήση που έχουν και στην άλγεβρα. Κάνουν πράξεις μεταξύ αριθμητικών παραμέτρων και παράγουν ένα αριθμητικό αποτέλεσμα.
|
||
|
||
Οι τελεστές επιπέδου bit κάνουν πράξεις σε ακέραιους αριθμούς και παράγουν ακέραιους αριθμούς σαν αποτέλεσμα, αλλά λειτουργούν σε επίπεδο bit χωρίς τα
|
||
κρατούμενα Carry και Borrow. Οι πράξεις με bit έχουν να κάνουν περισσότερο με την εσωτερική αρχιτεκτονική του επεξεργαστή (processor) και είναι γνωστές στους
|
||
προγραμματιστές που έχουν δουλέψει C και Assembly. Για τον μέσο χρήστη / προγραμματιστή συνήθως οι τελεστές επιπέδου bit δεν χρειάζονται αλλά τους αναφέρω εδώ
|
||
για να δείξω την δύναμη που έχει η Xbasic να φτάνει σε τόσο χαμηλό επίπεδο. Έτσι κάποιος που θέλει να κάνει μερικά πράγματα που οι γνωστές Basic δεν έχουν, και
|
||
χρειαζόταν να χρησιμοποιήσει την C ή την Assembly τώρα με την Xbasic μπορεί να παραμείνει στην Basic και να κάνει αυτά που θέλει.
|
||
|
||
Οι λογικοί τελεστές κάνουν πράξη σε αριθμητικές ή και αλφαριθμητικές μεταβλητές και δίνουν ένα λογικό αποτέλεσμα τύπου Αληθές. \[\$\$TRUE(-1)\] ή Ψευδές
|
||
\[\$\$FALSE(0)\].
|
||
|
||
### [3.6 Ομάδες τελεστών]{#ss3.6}
|
||
|
||
#### Ομάδα 1
|
||
|
||
Η ομάδα 1 των τελεστών περιλαμβάνει τους λογικούς τελεστές && (AND), \|\| (OR) και \^\^ (XOR).
|
||
|
||
#### Ομάδα 2
|
||
|
||
Η ομάδα 2 των τελεστών περιλαμβάνει τους τελεστές = (ίσο),\<\> (διάφορο),\< (μικρότερο), \<=(μικρότερο ή ίσο), \>= (μεγαλύτερο ή ίσο), \> (μεγαλύτερο) και τα
|
||
αντίστοιχά τους ==, !=, !\>=, !\>, !\<, !\<=. Οι παράμετροί τους μπορεί να είναι Ακέραιοι, δεκαδικοί ή αλφαριθμητικές μεταβλητές. Οι αλφαριθμητικές μεταβλητές
|
||
συγκρίνονται χαρακτήρα, χαρακτήρα από την αρχή μέχρι το τον πρώτο διαφορετικό χαρακτήρα. Έτσι βγαίνει το αποτέλεσμα της σύγκρισης. Το αποτέλεσμα είναι πάντα
|
||
XLONG ή \$\$TRUE ή \$\$FALSE.
|
||
|
||
#### Ομάδα 3
|
||
|
||
Η ομάδα 3 περιλαμβάνει τους τελεστές επιπέδου Bit AND, XOR και OR με τα αντίστοιχα σύμβολά τους &,\^,\|. Οι παράμετροί τους μπορεί να είναι ακέραιοι ή άλλες
|
||
πράξεις. Το αποτέλεσμά τους είναι πάντα του ίδιου τύπου με τον τύπο των παραμέτρων τους.
|
||
|
||
#### Ομάδα 4
|
||
|
||
Η ομάδα 4 περιλαμβάνει τους αριθμητικούς τελεστές +, -, \*, /, \*\*. Οι παράμετροι μπορεί να είναι ακέραιοι ή δεκαδικοί. Το αποτέλεσμα είναι πάντα τύπος
|
||
μεταβλητής της υψηλότερης ακρίβειας από τις μεταβλητές των παραμέτρων.
|
||
|
||
#### Ομάδα 5
|
||
|
||
Στην ομάδα 5 ανήκει ο τελεστής + που ανάλογα με τις παραμέτρους του είναι είτε αριθμητικός τελεστής είτε τελεστής συγχώνευσης δύο αλφαριθμητικών μεταβλητών. Οι
|
||
παράμετροί του μπορεί να είναι, ή υποχρεωτικά και οι δύο αριθμοί, ή υποχρεωτικά και οι δύο αλφαριθμητικές μεταβλητές. Το αποτέλεσμα είναι, είτε αριθμός, είτε
|
||
αλφαριθμητικά μεταβλητή ανάλογα με τις παραμέτρους που έχουν δοθεί.
|
||
|
||
#### Ομάδα 6
|
||
|
||
Σε αυτή την ομάδα έχουμε τους τελεστές MOD και \\. O MOD δίνει το υπόλοιπο της ακέραιας διαίρεσης των παραμέτρων του. Ο \\ δίνει το πηλίκο της ακέραιας
|
||
διαίρεσης των παραμέτρων του. Το αποτέλεσμα των τελεστών αυτής της ομάδας είναι πάντα ακέραιο.
|
||
|
||
#### Ομάδα 7
|
||
|
||
Εδώ έχουμε του τελεστές \<\<, \>\>, \<\<\<.\>\>\>. Αυτοί οι τελεστές έχουν την ιδιότητα να μεταφέρουν τα bits των παραμέτρων τους ορισμένες θέσεις αριστερά ή
|
||
δεξιά. Οι παράμετροι τους μπορεί να είναι ακέραιοι ή πράξεις. Το αποτέλεσμά τους είναι το ίδιο με τον τύπο της αριστερής παραμέτρου.
|
||
|
||
#### Ομάδα 8
|
||
|
||
Η ομάδα αυτή περιλαμβάνει τους τελεστές μιας παραμέτρου + και -.Η παράμετρος μπορεί να είναι ακέραιος αριθμός ή δεκαδικός. Το αποτέλεσμα είναι του ίδιου τύπου
|
||
με την παράμετρο.
|
||
|
||
#### Ομάδα 9
|
||
|
||
Εδώ έχουμε τους τελεστές ! και !!. Στον τελεστή ! το αποτέλεσμα είναι λογικό \$\$TRUE αν η παράμετρος έχει τιμή 0 και \$\$FALSE όταν έχουμε οποιαδήποτε άλλη
|
||
τιμή. Στον τελεστή !! το αποτέλεσμα είναι λογικό \$\$FALSE αν η παράμετρος έχει τιμή 0 και \$\$TRUE όταν έχουμε οποιαδήποτε άλλη τιμή.
|
||
|
||
#### Ομάδα 10
|
||
|
||
Ένας μόνο τελεστής ανήκει στην ομάδα αυτή και είναι ο (ΝΟΤ) σε επίπεδο bit.Η παράμετρος μπορεί να είναι ή ακέραιος αριθμός ή το όνομα μιας συνάρτησης. Το
|
||
αποτέλεσμα είναι πάντα XLONG.
|
||
|
||
#### Ομάδα 11
|
||
|
||
Η ομάδα αυτή περιλαμβάνει τους τελεστές μιας παραμέτρου & και && πού δίνουν σαν αποτέλεσμα μια XLONG διεύθυνση. Η παράμετρος του τελεστή & μπορεί να είναι
|
||
αριθμητική ή αλφαριθμητική μεταβλητή, πίνακας ή και στοιχείο πίνακα. Η παράμετρος του τελεστή && μπορεί να είναι αλφαριθμητική μεταβλητή, πίνακας αλφαριθμητικών
|
||
μεταβλητών.
|
||
|
||
### [3.7 Προτεραιότητα τελεστών]{#ss3.7}
|
||
|
||
**Προτεραιότητα 12**\
|
||
&, && της ομάδας 11\
|
||
NOT της ομάδας 10\
|
||
!, !! της ομάδας 9\
|
||
+, - της ομάδας 8
|
||
|
||
**Προτεραιότητα 11**\
|
||
\<\<\<, \>\>\>, \<\<, \>\> της ομάδας 7
|
||
|
||
**Προτεραιότητα 10**\
|
||
\*\* της ομάδας 4
|
||
|
||
**Προτεραιότητα 9**\
|
||
\*, / της ομάδας 4 MOD, \\ της ομάδας 6
|
||
|
||
**Προτεραιότητα 8**\
|
||
+ της ομάδας 5 - της ομάδας 4
|
||
|
||
**Προτεραιότητα 7**\
|
||
& ή AND της ομάδας 3
|
||
|
||
**Προτεραιότητα 6**\
|
||
XOR \^ και OR \| της ομάδας 3
|
||
|
||
**Προτεραιότητα 5**\
|
||
\>, \>=, \<, \<= της ομάδας 2
|
||
|
||
**Προτεραιότητα 4**\
|
||
\<\>, = ή !=, == της ομάδας 2
|
||
|
||
**Προτεραιότητα 3**\
|
||
& Λογικό AND της ομάδας 1
|
||
|
||
**Προτεραιότητα 2**\
|
||
\^\^ Λογικό XOR και \|\| Λογικό OR της ομάδας 1
|
||
|
||
**Προτεραιότητα 1**\
|
||
= τελεστής εκχώρησης.
|
||
|
||
|
||
### [4. Παράδείγμα χρήσης αριθμητικών τελεστών.]{#s4}
|
||
|
||
Στο παρακάτω παράδειγμα θα χρησιμοποιήσουμε τους τελεστές \\ και MOD εφ\' όσον οι τελεστές + - \* και / μας είναι γνωστοί από την αριθμητική και νομίζω ότι δεν
|
||
έχει έννοια να επεκταθούμε σε αυτούς. Επαναλαμβάνω ότι δεν χρείαζεται να γράψουμε τους αριθμούς γραμμής απλά τους έχω βάλει για να ξέρουμε σε ποιες γραμμές
|
||
αναφερόμαστε κάθε φορά.
|
||
|
||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||
|
||
1.'
|
||
2.' ####################
|
||
3.' ##### PROLOG #####
|
||
4.' ####################
|
||
5.'
|
||
6.PROGRAM "progname" ' 1-8 char program/file name without .x or any .extent
|
||
7.VERSION "0.0000" ' version number - increment before saving altered program
|
||
8.'
|
||
9.' You can stop the PDE from inserting the following PROLOG comment lines
|
||
10.' by removing them from the prolog.xxx file in your \xb\xxx directory.
|
||
11.'
|
||
12.' Programs contain: 1: PROLOG - no executable code - see below
|
||
13.' 2: Entry function - start execution at 1st declared func
|
||
14.' * = optional 3: Other functions - everything else - all other functions
|
||
15.'
|
||
16.' The PROLOG contains (in this order):
|
||
17.' * 1. Program name statement PROGRAM "progname"
|
||
18.' * 2. Version number statement VERSION "0.0000"
|
||
19.' * 3. Import library statements IMPORT "libName"
|
||
20.' * 4. Composite type definitions TYPE <typename> ... END TYPE
|
||
21.' * 5. Internal function declarations DECLARE/INTERNAL FUNCTION Func (args)
|
||
22.' * 6. External function declarations EXTERNAL FUNCTION FuncName (args)
|
||
23.' * 7. Shared constant definitions $$ConstantName = literal or constant
|
||
24.
|
||
25.$$secspermin = 60
|
||
26.$$secsperhr = 3600
|
||
27.
|
||
28.' * 8. Shared variable declarations SHARED variable
|
||
29.'
|
||
30.' ****** Comment libraries in/out as needed *****
|
||
31.'
|
||
32.' IMPORT "xma" ' Math library : SIN/ASIN/SINH/ASINH/LOG/EXP/SQRT...
|
||
33.' IMPORT "xcm" ' Complex library : complex number library (trig, etc)
|
||
34. IMPORT "xst" ' Standard library : required by most programs
|
||
35.' IMPORT "xgr" ' GraphicsDesigner : required by GuiDesigner programs
|
||
36.' IMPORT "xui" ' GuiDesigner : required by GuiDesigner programs
|
||
37.'
|
||
38.
|
||
39.
|
||
40.DECLARE FUNCTION Entry ()
|
||
41.'
|
||
42.'
|
||
43.' ######################
|
||
44.' ##### Entry () #####
|
||
45.' ######################
|
||
46.
|
||
47.Programs contain:
|
||
48.' 1. A PROLOG with type/function/constant declarations.
|
||
49.' 2. This Entry() function where execution begins.
|
||
50.' 3. Zero or more additional functions.
|
||
51.'
|
||
52.FUNCTION Entry ()
|
||
53. USHORT seconds,minutes,hours,secleft,minleft,nofsec
|
||
54. STRING ans
|
||
55.
|
||
56. ans=INLINE$("Enter number of seconds :")
|
||
57. nofsec=USHORT(ans)
|
||
58.
|
||
59. hours = nofsec \ $$secsperhr
|
||
60. minutes = nofsec \ $$secspermin
|
||
61. minleft = minutes MOD $$secspermin
|
||
62. secleft = nofsec MOD $$secspermin
|
||
63.
|
||
64. PRINT nofsec;" Seconds are..."
|
||
65. PRINT hours;" Hours ";minleft;" min ";secleft;" seconds"
|
||
66.
|
||
67.
|
||
68.END FUNCTION
|
||
69.END PROGRAM
|
||
|
||
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||
|
||
Οι γραμμές 1-37 αποτελούν το κομμάτι **PROLOG** του προγράμματός μας όπου εκεί ορίζονται οι σταθερές, οι κοινές μεταβλητές για όλο το πρόγραμμα οι τυχόν τύποι
|
||
μεταβλητών και οι βιβλιοθήκες που χρειάζονται, στο τέλος μπαίνουν οι ορισμοί των συναρτήσεων. Στο συγκεκριμένο παράδειγμα στις γραμμές 25 και 26 ορίζουμε τις
|
||
σταθερές \$\$secspermin και \$\$secsperhr. Στην γραμμή 34 έχουμε δώσει εντολή να περιλιφθεί η βιβλιοθήκη xst και στην γραμμή 40 έχει μπεί ο ορισμός της
|
||
συνάρτησης ENTRY.
|
||
|
||
Οι γραμμές 53 και 54
|
||
|
||
\
|
||
Σε αυτές τις γραμμές ορίζουμε το είδος των μεταβλητών που θα χρησιμοποιήσουμε στην συνάρτηση.
|
||
|
||
Η γραμμή 56
|
||
|
||
\
|
||
Σε αυτή την γραμμή καλούμε την συνάρτηση INLINE\$ που την γνωρίσαμε από το προηγούμενο παράδειγμα.
|
||
|
||
Η γραμμή 57\
|
||
Εδώ γίνεται μετατροπή της μεταβλητής ans που είναι αλφαριθμητική σε αριθμητική για να μπορούν να γίνουν οι πράξεις παρακάτω.
|
||
|
||
Οι γραμμές 59 και 60
|
||
|
||
Βλέπουμε την χρήση του τελεστή \\ (ακέραια διαίρεση) έστι σαν αποτέλεσμα παίρνουμε το ακέραιο πηλίκο της διαίρεσης.
|
||
|
||
Οι γραμμές 61 και 62\
|
||
Η χρήση του τελεστή MOD για να βρούμε τα υπόλοιπα των διαιρέσεων.
|
||
|
||
Οι γραμμές 64 και 65
|
||
|
||
Με την χρήση της εντολής PRINT δίνουμε εντολή στην Xbasic να εμφανίσει τα αποτελέσματα στην κονσόλα.
|
||
|
||
|
||
### [5. Επίλογος 3ου μέρους:]{#s5}
|
||
|
||
Με τα παραδείγματα που είδαμε μέχρι τώρα έχουμε δεί τα βασικά μέρη που αποτελείται ένα πρόγραμμα Xbasic. Κάναμε μια σύντομη περιγραφή για τις μεταβλητές, τις
|
||
σταθερές και κάποιους τελεστές. Στο επόμενο θα συνεχίσουμε με παράδειγμα χρήσης των λογικών τελεστών και την εντολή IF. Γι αυτούς που έχουν κάποια εμπειρία από
|
||
άλλες Basic, να προσέξουν τους επιπλέον τελεστές που διατίθενται και προσοχή στο σημαντικότερο. Ο τελεστής \^ που σε άλλες Basic σημαίνει ύψωση σε δύναμη εδώ
|
||
αντικαθίσταται από τον \*\*. Ο τελεστής \^ εδώ είναι ο τελεστής επιπέδου bit OR.
|
||
|