Trier une liste selon l’ordre croissant : SortA et sorta

### 6.42.23 Trier une liste selon l’ordre croissant : `SortA et sorta`

Attention `SortA` et `sorta` ne sont pas des synonymes : `SortA` s’utilise avec la syntaxe TI i.e. sans avoir besoin de mettre des parenthèses et modifie la valeur de l’argument alors que `sorta` s’utilise comme des fonctions normales de `Xcas` (parenthèses obligatoires et sans changer l’argument !).
`SortA` ou `sorta` a comme argument une liste, une séquence ou une matrice.
`SortA` ou `sorta` renvoie la liste ou la séquence triée selon l’ordre croissant.
Si l’argument est une matrice, `SortA` ou `sorta` trie la 1-ière ligne de la matrice selon l’ordre croissant, et reporte les manœuvres de tri de la 1-ière ligne sur les autres lignes c’est à dire le tri conserve les colonnes de la matrice.
On tape :

`sorta([3,4,2])`

ou

`SortA([3,4,2])`

ou

`SortA [3,4,2]`

ou

`SortA 3,4,2`

On obtient :

`[2,3,4]`

On tape :

`sorta([[3,4,2],[6,4,5]])`

ou

`SortA([[3,4,2],[6,4,5]])`

ou

`SortA [[3,4,2],[6,4,5]]`

ou

`SortA [3,4,2],[6,4,5]`

On obtient :

`[[2,3,4],[5,6,4]]`

On tape :

`A:=[[3,4,2],[6,4,5]]`
`SortA(A)`

On obtient :

`[[2,3,4],[5,6,4]]`

et maintenant `A` vaut `[[2,3,4],[5,6,4]]` Mais, on tape :

`A:=[[3,4,2],[6,4,5]]`
`sorta(A)`

On obtient :

`[[2,3,4],[5,6,4]]`

et maintenant `A` vaut toujours `[[3,4,2],[6,4,5]]`

Attention La syntaxe sans parenthèse peut vous jouer des tours !
Par exemple, on tape :
`L1:=[1,3,2];L2:=[2,3,1];`
`SortA L1,SortA L2`
On obtient la matrice !: `[[1,2,3],[3,2,1]]`
qui est le résultat de :
`SortA(L1,SortA(L2))`