BASIC

Η BASIC είναι μια γλώσσα προγραμματισμού υπολογιστών. Το όνομά της προέρχεται από τα αρχικά των λέξεων Beginner's All Purpose Symbolic Instruction Code (Συμβολικός Κώδικας Εντολών Κάθε Χρήσης για Αρχάριους).

Σύνταξη

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

Ένα απλό πρόγραμμα

Το παρακάτω πρόγραμμα σε BASIC εμφανίζει στην οθόνη του Η/Υ το μήνυμα «Hello, world!», χρησιμοποιώντας μόνο 2 γραμμές κώδικα:
10 PRINT "Hello, world!"
20 END
ενώ ένα πρόγραμμα σε Pascal, μια άλλη δημοφιλή γλώσσα, θα χρειαζόταν 4 γραμμές κώδικα
program Hello;
begin
   writeln('Hello, world!');
end.

Ετικέτες

Βασική έννοια στη γλώσσα BASIC είναι οι ετικέτες (labels). Αυτές είναι αριθμοί που τοποθετούνται στην αρχή κάθε γραμμής και ορίζουν τη σειρά με την οποία θα εκτελούνται οι εντολές, π.χ η γραμμή με αριθμό 35 εκτελείται πριν από την γραμμή με αριθμό 218. Καθώς γράφονται νέες γραμμές, είθισται οι ετικέτες να αριθμούνται ανά 10. Αυτό είναι χρήσιμο στην εισαγωγή γραμμών που ξέχασε ο προγραμματιστής, ώστε να μην αλλάζει κάθε φορά τις προηγούμενες και επόμενες ετικέτες. Όταν περιγράφεται μια εντολή BASIC, εννοείται ότι προηγείται πάντα μια ετικέτα.Σε όλες τις νεότερες εκδόσεις της BASIC τόσο σε περιβάλλον DOS όσο και σε WINDOWS οι ετικέτες έχουν καταργηθεί.

Μεταβλητές/Εντολές εκχώρησης

Οι μεταβλητές στην γλώσσα BASIC είναι δύο τύπου: αλφαριθμητικές και χαρακτήρα. Για τα ονόματα των αλφαριθμητικών χρησιμοποιούνται κυρίως τα γράμματα του ελληνικού και οι χαρακτήρες υπογράμμισης: _ και η παύλα. Στην περίπτωση που η μεταβλητή είναι τύπου χαρακτήρα, αυτό υποδηλώνεται με τον χαρακτήρα $ στο τέλος του ονόματός της.
Η εκχώρηση τιμών γίνεται τυπικά με την εντολή LET, π.χ:
10 LET i = 1
20 LET A$ = "Καλοκαίρι"
Σε νεότερες εκδόσεις της γλώσσας, η εντολή LET μπορεί να παραληφθεί. Η εκχώρηση τότε γίνεται μόνο με την έκφραση της εντολής : π.χ i=1 και α$="καλοκαίρι".

Εντολές εισόδου/εξόδου

Η κύρια εντολή εξόδου (στην οθόνη) είναι η PRINT. Η ακριβής σύνταξή της είναι η εξής:
PRINT "κείμενο1", "κείμενο2", ..., "κείμενοΝ", μεταβλητή1, μεταβλητή2, ..., μεταβλητήΝ
Η εντολή PRINT εμφανίζει στην οθόνη απλό κείμενο, το οποίο περικλείουμε με εισαγωγικά ώστε να διαχωριστεί από μεταβλητή, π.χ. PRINT "Αυτό θα δείτε στην οθόνη" ή έναν οποιοδήποτε αριθμό όπως π.χ. PRINT 5.
Εαν θέλουμε να εμφανίσουμε στην οθόνη κάποια μεταβλητή απλά γράφουμε το όνομα της, για παράδειγμα : PRINT value1 (θα εμφανιστεί το περιεχόμενο της value1) ή PRINT VALUE1$ (θα εμφανιστεί το περιεχόμενο της VALUE1$). Για να εμφανίσουμε με την ιδια εντολή περισσότερες από μια παραστάσεις (που μπορεί να είναι αριθμοί, κείμενα, μεταβλητές) χρησιμοποιούμε ειδικά σημεία στίξης (, και ;) : π.χ. για να εμφανίσουμε κολλητά δύο παραστάσεις γράφουμε PRINT "O αριθμός είναι ίσος =";VALUE1. Για εμφάνιση με διάστημα 14 χαρακτήρων ανάμεσα τους γράφουμε PRINT value1,value2
Το κείμενο δηλαδή περικλείεται σε εισαγωγικά και διαχωρίζεται με κόμμα(,) ή ελληνικό ερωτηματικό(;) από τις μεταβλητές ή από άλλο κομμάτι κειμένου. Τα εισαγωγικά και το κείμενο εντός τους ορίζουν μια συμβολοσειρά.
Η κύρια εντολή εισόδου στην BASIC είναι η INPUT. H σύνταξή της είναι:
INPUT μεταβλητή1, μεταβλητή2, ..., μεταβλητήΝ
Όταν ο Η/Υ εκτελεί μια εντολή INPUT, θέτει σε αναμονή την εκτέλεση του προγράμματος και περιμένει είσοδο δεδομένων από τον χρήστη. Ο χρήστης πρέπει να δώσει ίσο ή μεγαλύτερο αριθμό τιμών, χωρισμένων με κόμμα, και να πατήσει το πλήκτρο ENTER.
Σε μοντέρνες εκδόσεις της BASIC, όπως η Q-BASIC, είναι δυνατόν οι εντολές PRINT και INPUT να συνενωθούν, ώστε να σχηματίσουν μια συντομότερη δομή εισόδου/εξόδου:
INPUT "κείμενο_προς_τον_χρήστη", μεταβλητή1, μεταβλητή2, ..., μεταβλητήΝ

Δομές επιλογής

Οι δομές επιλογής υλοποιούνται στην BASIC με την ακολουθία IF...THEN...ELSEIF...ELSE...ENDIF. Για παράδειγμα, το επόμενο πρόγραμμα αποφασίζει αν ένας αριθμός που δίνεται από τον χρήστη είναι θετικός, μηδέν ή αρνητικός, και εμφανίζει το κατάλληλο μήνυμα:
10 PRINT "Δώσε έναν αριθμό"
20 INPUT a
30 IF a<0 THEN
40 PRINT "Ο αριθμός είναι αρνητικός."
50 ELSEIF a=0 THEN
60 PRINT "Ο αριθμός είναι το μηδέν."
70 ELSE
80 PRINT "Ο αριθμός είναι θετικός."
90 ENDIF
100 END

Δομές επανάληψης

Οι δομές επανάληψης υλοποιούνται στην BASIC μέσω δύο βρόχοεντολών: FOR...TO...NEXT και WHILE...WEND.

Συγκεκριμένος αριθμός επαναλήψεων

Όταν ένα σύνολο εντολών πρέπει να επαναληφθεί ορισμένες φορές, χρησιμοποιείται η δομή FOR...TO...NEXT. Παράδειγμα αποτελεί το παρακάτω πρόγραμμα, το οποίο τυπώνει τους αριθμούς από το 1 εώς το 10:
10 FOR i=1 TO 10
20 PRINT i
30 NEXT i
40 END

Απροσδιόριστος αριθμός επαναλήψεων

Όταν ο αριθμός επαναλήψεων ενός συνόλου εντολών εξαρτάται από διαφορετικές συνθήκες εισόδου για κάθε εκτέλεση του προγράμματος, χρησιμοποιείται η δομή WHILE...WEND. Στο παρακάτω παράδειγμα, τυπώνονται τα πολλαπλάσια του δέκα μέχρι ο χρήστης να δώσει την κατάλληλη τιμή (αρνητικό αριθμό), η οποία και σταματά την εκτέλεση του βρόχου:
10 i=1
20 WHILE n>=0
30 PRINT i*2%10
40 i=i+1
50 INPUT n
60 WEND
70 END