### 1.35.5 Δημιουργία μιας ακολουθίας ή μιας λίστας : seq $

seq παίρνει δύο, τρία, τέσσερα ή πέντε ορίσματα : το πρώτο όρισμα είναι μια παράσταση ως προς την μεταβλητή (για παράδειγμα) j και τα υπόλοιπα ορίσματα περιγράφουν ποιές τιμές του j θα χρησιμοποιηθούν για να παράγουν την ακολουθία. Πιο συγκεκριμένα, το j θα μεταβληθεί από a έως b:

- με ένα βήμα που από προεπιλογή είναι 1 ή -1: j=a..b ή j,a..b (σύνταξη του Maple), j,a,b (σύνταξη του TI)
- ή με ένα συγκεκριμένο βήμα: j=a..b,p (σύνταξη του Maple), j,a,b,p (σύνταξη του TI).

Εάν χρησιμοποιείται η σύνταξη του Maple, η seq επιστρέφει μια ακολουθία, και εάν χρησιμοποιείται η σύνταξη του TI, η seq επιστρέφει μια λίστα.

$ είναι η ενθηματική εκδοχή του seq, όταν seq έχει δύο ορίσματα, και επιστρέφει πάντα μια ακολουθία.
Σχόλιο:

- Στον τρόπο λειτουργίας Xcas, η προτεραιότητα του $ δεν είναι ίδια με εκείνη, για παράδειγμα, του Maple, γιαυτό σε περίπτωση αμφιβολίας βάλτε τα ορίσματα του $ σε παρενθέσεις. Για παράδειγμα, το ισοδύναμο του seq(j`^`2,j=-1..3) είναι (j`^`2)$(j=-1..3) και επιστρέφει (1,0,1,4,9). Το ισοδύναμο του seq(4,3) είναι 4$3 και επιστρέφει (4,4,4).
- Με την σύνταξη του Maple, το j,a..b,p δεν είναι έγκυρο. Για να ορίσετε ένα βήμα p, για την μεταβολή του j από το a στο b, χρησιμοποιήστε j=a..b,p ή χρησιμοποιήστε πρώτα την σύνταξη του TI j,a,b,p και πάρτε την ακολουθία από την λίστα με το op(...).

Συνοψίζοντας, οι διαφορετικοί τρόποι για να δημιουργήσετε μια ακολουθία είναι οι εξής :

- με σύνταξη του Maple
  1. seq έχει δύο ορίσματα : είτε μια παράσταση που εξαρτάται από την παράμετρο (για παράδειγμα) j και j=a..b, όπου a και b είναι πραγματικοί αριθμοί, είτε μια σταθερή παράσταση και έναν ακέραιο n.
     seq επιστρέφει : είτε την ακολουθία όπου j αντικαθίσται στην παράσταση από a, a+1,...,b εάν b>a και από a, a−1,...,b εάν b<a, είτε την ακολουθία που προκύπτει αντιγράφοντας n φορές την σταθερά.
  2. seq έχει τρία ορίσματα : μια παράσταση που εξαρτάται από την παράμετρο (για παράδειγμα) j και j=a..b,p όπου a, b και p είναι πραγματικοί αριθμοί.
     seq επιστρέφει την ακολουθία όπου το j αντικαθίσταται στην παράσταση από τα a, a+p,...,b εάν b>a και από a, a−p,...,b εάν b<a.
     Σημειώσατε ότι j,a..b είναι επίσης έγκυρο αλλά j,a..b,p δεν είναι έγκυρο.
- με σύνταξη του TI
  1. seq έχει τέσσερα ορίσματα : μια παράσταση που εξαρτάται από την παράμετρο (για παράδειγμα) j, το όνομα της παραμέτρου (για παράδειγμα) j, a και b όπου a και b είναι πραγματικοί.
     seq επιστρέφει την λίστα όπου j αντικαθίσταται στην παράσταση από a, a+1,...,b εάν b>a και από a, a−1,...,b εάν b<a.
  2. seq έχει πέντε ορίσματα : μια παράσταση που εξαρτάται από την παράμετρο (για παράδειγμα) j, το όνομα της παραμέτρου (για παράδειγμα) j, a, b και p όπου a, b και p είναι πραγματικοί αριθμοί.
     seq επιστρέφει την λίστα όπου το j αντικαθίσταται στην παράσταση από a, a+p,...,a+k*p (a+k*p ≤ b <a+(k+1)*p ή a+k*p ≥ b> a+(k+1)*p). Από προεπιλογή, p=1 εάν b>a και p=-1 εάν b<a.

Σημειώσατε ότι με σύνταξη του Maple, η seq δεν παίρνει παραπάνω από 3 ορίσματα και επιστρέφει μια ακολουθία, ενώ με σύνταξη του TI, η seq παίρνει τουλάχιστον 4 ορίσματα και επιστρέφει μια λίστα.
Είσοδος για να έχουμε μια ακολουθία με ίδια στοιχεία :

seq(t,4)

ή :

seq(t,k=1..4)

ή :

t$4

Έξοδος :

(t,t,t,t)

Είσοδος για να έχουμε μια ακολουθία:

seq(j`^`3,j=1..4)

ή :

(j`^`3)$(j=1..4)

ή:

seq(j`^`3,j,1..4)

Έξοδος :

(1,4,9,16)

Είσοδος για να έχουμε μια ακολουθία :

seq(j`^`3,j=-1..4,2)

Έξοδος :

(1,1,9)

Ή για να έχουμε μια λίστα,
Είσοδος :

seq(j`^`3,j,1,4)

Έξοδος :

[1,4,9,16]

Είσοδος :

seq(j`^`3,j,0,5,2)

Έξοδος :

[0,8,64]

Είσοδος :

seq(j`^`3,j,5,0,-2)

ή

seq(j`^`3,j,5,0,2)

Έξοδος :

[125,27,1]

Είσοδος :

seq(j`^`3,j,1,3,0.5)

Έξοδος :

[1,3.375,8,15.625,27]

Είσοδος :

seq(j`^`3,j,1,3,1/2)

Έξοδος :

[1,27/8,8,125/8,27]

Παραδείγματα

- Για να βρείτε την τρίτη παράγωγο της ln(t), εισάγετε :
  diff(log(t),t$3)
  Έξοδος :
  -((-(2*t))/t`^`4)
- Είσοδος :
  l:=[[2,3],[5,1],[7,2]]
  seq((l[k][0])$(l[k][1]),k=0 .. size(l)-1)
  Έξοδος :
  2,2,2,seq[5],7,7
  έπειτα η eval(ans()) επιστρέφει:
  2,2,2,5,7,7
- Για να μετασχηματίσετε μια συμβολοσειρά σε μια λίστα από τους χαρακτήρες της ορίστε πρώτα την συνάρτηση :

       f(chn):={
       local l;
       l:=size(chn);
       return seq(chn[j],j,0,l-1);
       }

  και μετά εισάγετε:
  f("abracadabra")
  Έξοδος :
  ["a","b","r","a","c","a","d","a","b","r","a"]