next up previous contents index
επόμενο: Στυλ προγραμματισμού εμφάνιση: Προγραμματισμός προηγούμενο: Η γλώσσα   Πίνακας περιεχομένων   Ευρετήριο

Μερικά παραδείγματα

Για να γράψουμε ένα πρόγραμμα, ανοίγουμε τον κειμενογράφο προγράμματος με την επιλογή Prg->Nέο πρόγραμμα του μενού Prg. Οι εντολές που βρίσκονατι στα υπομενού του μενού Prg μας επιτρέπουν να εισάγουμε με ευκολία τις δομές του προγραμματισμού. Μπορούμε μετά να αποθηκεύσουμε το κείμενο του προγράμματος για να το χρησιμοποιήσουμε στην συνέχεια σε μία άλλη συνεδρία.

Ακολουθεί ένα πρόγραμμα (που το ονομάζουμε iquorem2 για να μην το μπερδέψουμε με την αντίστοιχη συνάρτηση iquorem στο Xcas) που δίνει το πηλίκο και το υπόλοιπο της ευκλείδειας διαίρεσης δύο ακεραίων χρησιμοποιώντας τις συναρτήσεις iquo, που επιστρέφει το πηλίκο, και irem, που επιστρέφει το υπόλοιπο.

iquorem2
iquorem2(a,b):={
local q,r;
if (b!=0) {
q:=iquo(a,b);
r:=irem(a,b);}
else {
q:=0;
r:=a;
}
return [q,r];
}

Αφού πληκτρολογήσουμε την συνάρτηση iquorem2 στον κειμενογράφο προγράμματος, την μεταγλωττίζουμε πατώντας το κουμπί OK(F9). Αφου βεβαιωθούμε πως δεν υπάρχουν συντακτικά λάθη στον μεταγλωττισμό, αποθηκεύουμε την συνάρτηση με το όνομα iquorem2.cxx. Μπορούμε τώρα να χρησιμοποιήσουμε την συνάρτηση αυτή στην συνεδρία μας πληκτρολογώντας σε μία γραμμή εντολών π.χ. iquorem2(25,15). Θα μπορούσαμε επίσης να χρησιμοποιήσουμε την συνάρτηση αυτή και σε μία άλλη συνεδρία στο Xcas είτε αφού πρώτα την ενεργοποιήσουμε με την εντολή read("iquorem2.cxx") είτε ανοίγοντας τον κειμενογράφο προγράμματος, φορτώνοντας την συνάρτηση με την επιλογή Προγ->Φόρτωση->iquorem2.cxx->ΟΚ και μεταγλωττίζοντάς την πατώντας το κουμπί OK(F9).

Ακολουθούν δύο προγράμματα υπολογισμού του μέγιστου κοινού διαιρέτη δύο ακεραίων: το πρώτο είναι επαναληπτικό, ενώ το δεύτερο είναι αναδρομικό.

igcd_επαναληπτικό
igcd_I(a,b):={
local r;
while (b!=0) {
r:=irem(a,b);
a:=b;
b:=r;
}
return a;
}

igcd_αναδρομικό
igcd_R(a,b):={
if (b=0) return a;
return igcd_R(b,irem(a,b));
}

Πολλές φορές συμβαίνει ένα πρόγραμμα να μην λειτουργεί με την πρώτη προσπάθεια. Σε αυτές τις περιπτώσεις, με την εντολή debug, είναι δυνατόν να εκτελέσουμε μία-μία τις εντολές του προγράμματος για να βρούμε το λάθος (αποσφαλμάτωση).
Παραδείγματος χάρη, στο πρόγραμμα iquorem2, για να ξεκινήσουμε την αποσφαλμάτωση πληκτρολογούμε debug(iquorem2(25,15)). Πατώντας Enter ανοίγει το παράθυρο αποσφαλμάτωσης όπου εμφανίζονται αυτόματα οι μεταβλητές a,b μαζί με τις αρχικές τους τιμές. Κατόπιν, πατάμε το κουπί sst F5 και οι εντολές εκτελούνται μία-μία δίνοντάς μας την δυνατότητα να παρακολουθούμε πως μεταβάλλονται οι τιμές των a,b. Αν θέλουμε να παρακολουθήσουμε τις μεταβολές και των τοπικών μεταβλητων q,r χρησιμοποιούμε το κουμπί watch για να τις δηλώσουμε όλες μαζί: a,b,q,r.


next up previous contents index
επόμενο: Στυλ προγραμματισμού εμφάνιση: Προγραμματισμός προηγούμενο: Η γλώσσα   Πίνακας περιεχομένων   Ευρετήριο

Βιβλιογραφία του giac από τους Renee De Graeve, Bernard Parisse και Bernard Ycart
Μετάφραση στα Ελληνικά : Γιώργος Νασόπουλος. Διασκευή : Αλκιβιάδης Γ. Ακρίτας