Σύνταξη:
FunctionName(όρισμα1, όρισμα2, ...)
Παράδειγμα:
Factorial(5) cos(2*pi) gcd(921,317)
Για να αξιολογήσετε μια συνάρτηση, εισάγετε το όνομα της συνάρτησης, που ακολουθείται από τα ορίσματα (αν υπάρχουν) της συνάρτησης σε παρενθέσεις. Αυτό θα επιστρέψει το αποτέλεσμα της εφαρμογής της συνάρτησης στα ορίσματά της. Ο αριθμός των ορισμάτων στη συνάρτηση είναι, φυσικά, διαφορετικός για κάθε συνάρτηση.
Υπάρχουν πολλές ενσωματωμένες συναρτήσεις, όπως οι sin
, cos
και tan
. Μπορείτε να χρησιμοποιήσετε την ενσωματωμένη εντολή help
για να πάρετε έναν κατάλογο διαθέσιμων συναρτήσεων, ή δείτε Κεφάλαιο 11, Κατάλογος συναρτήσεων της GEL για έναν πλήρη κατάλογο.
Μπορείτε να χρησιμοποιήσετε την συμπλήρωση καρτέλας για να βάλετε την Genius να συμπληρώσει τα ονόματα των συναρτήσεων για σας. Δοκιμάστε την πληκτρολόγηση των πρώτων λίγων γραμμάτων του ονόματος και πατήστε Καρτέλα
.
Τα ονόματα των συναρτήσεων είναι με διάκριση πεζών/κεφαλαίων. Αυτό σημαίνει ότι οι συναρτήσεις με όνομα dosomething
, DOSOMETHING
και DoSomething
είναι όλες διαφορετικές συναρτήσεις.
Σύνταξη:
function <identifier>(<comma separated arguments>) = <function body> <identifier> = (`() = <function body>)
Το `
είναι ο χαρακτήρας ` και υποδηλώνει μια ανώνυμη συνάρτηση. Ορίζοντας την σε ένα όνομα μεταβλητής την ορίζετε αποτελεσματικά ως συνάρτηση.
Μια συνάρτηση παίρνει μηδέν ή περισσότερα ορίσματα που χωρίζονται με κόμμα και επιστρέφει το αποτέλεσμα του σώματος της συνάρτησης. Ορίζοντας τις δικές σας συναρτήσεις είναι κυρίως ένα θέμα ευκολίας· μια πιθανή χρήση είναι να βάλετε σύνολα συναρτήσεων που ορίστηκαν στα αρχεία GEL, τα οποία η Genius μπορεί να φορτώσει για να τα κάνει διαθέσιμα. Παράδειγμα:
function addup(a,b,c) = a+b+c
έπειτα addup(1,4,9)
δίνει 14
Αν συμπεριλάβετε ...
μετά το τελευταίο όνομα ορίσματος στη δήλωση συνάρτησης, τότε η Genius θα επιτρέψει οποιονδήποτε αριθμό ορισμάτων να περαστεί επί τόπου σε αυτό το όρισμα. Αν δεν περαστούν ορίσματα τότε αυτό το όρισμα θα οριστεί σε null
. Αλλιώς, θα είναι οριζόντιο διάνυσμα που περιέχει όλα τα ορίσματα. Για παράδειγμα:
function f(a,b...) = b
Τότε το f(1,2,3)
δίνει [2,3]
, ενώ f(1)
δίνει null
.
Στο Genius, είναι δυνατό να περάσετε μια συνάρτηση ως ένα όρισμα σε μια άλλη συνάρτηση. Αυτό μπορεί να γίνει χρησιμοποιώντας είτε ‘κόμβους συνάρτησης’ ή ανώνυμες συναρτήσεις.
Αν δεν εισάγετε τις παρενθέσεις μετά από ένα όνομα συνάρτησης, αντί να αξιολογηθεί, η συνάρτηση θα επιστραφεί στη θέση της ως ‘κόμβος συνάρτησης’. Ο κόμβος συνάρτησης μπορεί τότε να περαστεί σε μια άλλη συνάρτηση. Παράδειγμα:
function f(a,b) = a(b)+1; function b(x) = x*x; f(b,2)
Για να περάσετε συναρτήσεις που δεν ορίζονται, μπορείτε να χρησιμοποιήσετε μια ανώνυμη συνάρτηση (δείτε «Ορισμός συναρτήσεων»). Δηλαδή, αν θέλετε να περάσετε μια συνάρτηση χωρίς να της δώσετε ένα όνομα. Σύνταξη:
function(<comma separated arguments>) = <function body> `(<comma separated arguments>) = <function body>
Παράδειγμα:
function f(a,b) = a(b)+1; f(`(x) = x*x,2)
Αυτό θα επιστρέψει 5.
Κάποιες συναρτήσεις επιτρέπουν αριθμητικές πράξεις και κάποιες συναρτήσεις μοναδικού ορίσματος όπως exp
ή ln
, λειτουργούν στη συνάρτηση. Για παράδειγμα, η
exp(sin*cos+4)
θα επιστρέψει μια συνάρτηση που παίρνει x
και επιστρέφει exp(sin(x)*cos(x)+4)
. Είναι ισοδύναμη λειτουργικά με την πληκτρολόγηση
`(x) = exp(sin(x)*cos(x)+4)
Αυτή η πράξη μπορεί να είναι χρήσιμη, όταν ορίζετε γρήγορα συναρτήσεις. Για παράδειγμα για να δημιουργήσετε μια συνάρτηση που λέγεται f
για να εκτελέσετε την παραπάνω πράξη, μπορείτε να πληκτρολογήσετε απλά:
f = exp(sin*cos+4)
Μπορεί επίσης να χρησιμοποιηθεί στη σχεδίαση. Για παράδειγμα, για να σχεδιάσετε τετράγωνο ημιτόνου μπορείτε να εισάγετε:
LinePlot(sin^2)
Δεν μπορούν όλες οι συναρτήσεις να χρησιμοποιηθούν κατ' αυτόν τον τρόπο. Για παράδειγμα, όταν χρησιμοποιείτε μια δυαδική πράξη οι συναρτήσεις πρέπει να παίρνουν τον ίδιο αριθμό ορισμάτων.