Σύντοµος Οδηγός της Qbasic Πέρδος Αθανάσιος Καθηγητής Πληροφορικής
ηλώσεις Η γλώσσα Qbasic δεν απαιτεί υποχρεωτικά τη δήλωση των µεταβλητών στο τµήµα δηλώσεων, πριν το κύριο µέρος του προγράµµατος. Η δήλωση των µεταβλητών µπορεί να γίνει έµµεσα αργότερα, τη στιγµή της αναφοράς τους στο πρόγραµµα. Αυτό γίνεται χρησιµοποιώντας ειδικούς συµβολισµούς για το κάθε είδος µεταβλητής. Αυτό που σίγουρα πρέπει να γίνει όµως στην αρχή είναι η δήλωση των πινάκων. Συγκεκριµένα γίνεται µε τη λέξη DIM. Κατόπιν, εντός παρένθεσης βάζουµε τα όρια των τιµών που µπορούν να πάρουν οι δείκτες. Για παράδειγµα, η δήλωση: DIM A(10,100) σηµαίνει ότι θα χρησιµοποιηθεί ένας πίνακας µε όνοµα Α, ο οποίος είναι δισδιάστατος, µε 10 γραµµές και 100 στήλες. Μεταβλητές Το όνοµα όλων των µεταβλητών πρέπει να είναι γραµµένο µε λατινικούς χαρακτήρες. Μπορεί να συµπεριλαµβάνονται και αριθµητικά ψηφία, όχι όµως να ξεκινάει το όνοµα από αριθµητικό ψηφίο. ε γίνεται διάκριση µεταξύ κεφαλαίων και πεζών χαρακτήρων. ηλαδή η µεταβλητή epilogi είναι η ίδια µε τη µεταβλητή EPILOGI. Η γλωσσά Qbasic διαθέτει αριθµητικές µεταβλητές (διαφόρων υποκατηγοριών όπως ακέραιες, πραγµατικές και άλλες), καθώς και αλφαριθµητικές. ε διαθέτει όµως λογικές µεταβλητές. Όπως προαναφέρθηκε, υπάρχει δυνατότητα έµµεσης δήλωσης των µεταβλητών τη στιγµή της χρήσης τους. Στα πλαίσια του µαθήµατος µας αρκεί να χρησιµοποιήσουµε αριθµητικές µεταβλητές για τις οποίες δε θα κάνουµε διάκριση αν είναι ακέραιες ή πραγµατικές καθώς και αλφαριθµητικές. Εφόσον δεν διευκρινίζουµε το είδος των αριθµητικών µεταβλητών, αυτοµάτως για την Qbasic όλες αυτές θεωρούνται πραγµατικές. Οι αλφαριθµητικές µεταβλητές δηλώνονται µε τη χρήση του συµβόλου "$" στο τέλος του ονόµατος τους. Έτσι, για παράδειγµα, η µεταβλητή apant$ είναι αλφαριθµητική και µπορεί να τύχει το εξής: apant$ = "ναι". Αριθµητικές πράξεις & τελεστές Αριθµητικοί τελεστές: Τελεστής Qbasic Πρόσθεση + Αφαίρεση - Πολλαπλασιασµός * ιαίρεση / Ύψωση σε δύναµη ^ Ακέραιο µέρος της διαίρεσης \ Υπόλοιπο της διαίρεσης(µόνο για Mod ακέραιους) Πέρδος Αθανάσιος Σελίδα 2
Συγκριτικοί τελεστές Τελεστής Qbasic ΙΣΟ = ΙΑΦΟΡΕΤΙΚΟ <> ΜΕΓΑΛΥΤΕΡΟ > ΜΕΓΑΛΥΤΕΡΟ Η ΙΣΟ >= ΜΙΚΡΟΤΕΡΟ < ΜΙΚΡΟΤΕΡΟ Η ΙΣΟ <= Λογικοί τελεστές Τελεστής Και Ή Όχι qbasic αnd or not Βασικές εντολές Οι εντολές που χρειαζόµαστε είναι οι εξής: CLS Με αυτήν "καθαρίζουµε" την οθόνη, σβήνουµε δηλαδή όσα προϋπήρχαν σε αυτήν. Γι' αυτό η εντολή αυτή χρησιµοποιείται συνήθως στην αρχή κάθε προγράµµατος, ώστε να αποφύγουµε τη σύγχυση µεταξύ των µηνυµάτων που εµφανίστηκαν κατά την εκτέλεση παλαιότερων προγραµµάτων και των µηνυµάτων του προγράµµατος που εκτελείται τώρα. Eντολή εκχώρησης. Α = 4 C = Β D = B*B-4*A*C Πέρδος Αθανάσιος Σελίδα 3
PRINT Πρόκειται για την εντολή εµφάνισης Π.χ. PRINT Α (θα τυπώσει την τιµή της µεταβλητής Α) PRINT "Α" (θα τυπώσει το γράµµα Α) PRINT "ο µέσος όρος είναι:"; ΜΟ (θα τυπώσει και το µήνυµα "ο µέσος όρος είναι:" και την τιµή της µεταβλητής ΜΟ) INPUT Πρόκειται για την εντολή εισόδου Π.χ. INPUT A INPUT A,B,C INPUT onoma$ (σταµατάει προς στιγµή η εκτέλεση του προγράµµατος και ο χρήστης πρέπει να δώσει τιµή στην/στις µεταβλητές και µετά να πατήσει Enter) Στο πρώτο παράδειγµα ο χρήστης πρέπει να δώσει την τιµή µόνο µίας µεταβλητής, ενώ στο δεύτερο τις τιµές και των τριών µεταβλητών, χωρισµένων µε κόµµα. Στην τρίτη περίπτωση πρέπει να εισάγει ένα αλφαριθµητικό. Σε περίπτωση λανθασµένης εκχώρησης τιµής θα εµφανιστεί το µήνυµα "Redo from start" το οποίο ενηµερώνει το χρήστη ότι δεν έδωσε σωστά τα απαραίτητα δεδοµένα και τον προτρέπει να ξαναδοκιµάσει. οµή Επιλογής 1 ος Τρόπος IF... (συνθήκη)...then...(1η οµάδα εντολών)... ELSE IF... (συνθήκη)...then...(2η οµάδα εντολών)... ELSE...(οµάδα εντολών else)... Πέρδος Αθανάσιος Σελίδα 4
ENDIF 2 ος Τρόπος SELECT CASE...(µεταβλητή)... CASE 1η περίπτωση...(1η οµάδα εντολών)... CASE 2η περίπτωση...(2η οµάδα εντολών)... CASE ELSE...(οµάδα εντολών else)... END SELECT Aν θέλουµε ανίσωση θα χρησιµοποιήσουµε τη λέξη IS και δίπλα το κατάλληλο τελεστή σύγκρισης. οµές Επαναλήψεων FOR µεταβλητή = αρχική_τιµή ΤΟ τελική_τιµή STEP τιµή_βήµατος (οµάδα εντολών)... NEXT µεταβλητή WHILE...(συνθήκη συνέχειας)...(οµάδα εντολών)... WEND DO...(οµάδα εντολών)... LOOP UNTIL...συνθήκη τέλους Σχετικά µε τον µεταφραστή και τον editor της qbasic Ο editor της Qbasic είναι αρκετά εύχρηστος. Στο µενού File υπάρχουν όλες οι εντολές για άνοιγµα υπάρχοντος αρχείου, δηµιουργία νέου, αποθήκευση αρχείου. Η Qbasic δίνει σε όλα τα αρχεία την κατάληξη.bas. Το πρόγραµµα εκτελείται µε το πλήκτρο F5. Αν υπάρχει κάποια δυσλειτουργία η εκτέλεση διακόπτεται µε ταυτόχρονο πάτηµα των πλήκτρων Ctrl και Break. Πέρδος Αθανάσιος Σελίδα 5