Bienvenue dans Xcas pour Firefox ou navigateur compatible
(c) 2020, B. Parisse et R. De Graeve, Institut Fourier,
Université de Grenoble.
Depuis Xcas, taper python ou js dans une ligne de commande pour
changer d'interpréteur vers MicroPython (Damien P. George et
al) ou vers QuickJS de
Fabrice Bellard et Charlie Gordon.
Tapez votre calcul ou programme dans la ligne de commande en bas de la page
(attention, tapez 1.2 pour 1 virgule
2). Pour apprendre à utiliser Xcas, vous
pouvez lire ce
tutoriel
Cliquez sur l'icone de Xcas ou le bouton
Prog pour afficher des assistants
mathématiques ou algorithmiques, ou sur
123 pour le clavier scientifique.
Validez par la touche Entrée ou le bouton Ok en vert.
Pour obtenir de l'aide sur une commande, tapez le début de son nom
puis tapez F1 ou cliquez sur le bouton ?.
Pour trouver des noms de commandes, utilisez les assistants Maths et
Prog ou cliquez sur un des thèmes
ci-dessous ou consultez le
guide de Xcas
Vous pouvez choisir l'interpréteur depuis la
configuration (bouton en haut à gauche avec la roue
dentée) parmi Xcas, MicroPython ou
Javascript. L'interpréteur Javascript par défaut est
QuickJS en mode mathématique sauf si votre ligne de
commande commence par @ (QuickJS sans le mode math) ou
@@ (interpréteur du navigateur).
Vous pouvez partager publiquement une session en cliquant sur le
bouton F.
Vous pouvez échanger des sessions de calculs Xcas entre
plusieurs personnes par email. Renseignez une fois pour toutes
les champs e-mail de la
configuration (bouton Réglages en haut à gauche)
et validez.
Vous pouvez alors envoyer votre session à votre
correspondant en cliquant
sur le lien ✉, modifiez le destinataire si
nécessaire (si vous utilisez un webmail
non reconnu, recopiez le contenu du lien x2 dans
un message ou configurez les paramètres de
votre navigateur pour l'utiliser, il peut être nécessaire de cloner
votre session avec le lien x2 avant de cliquer sur le lien ✉).
Le destinataire
clique sur le lien du mail ce qui ouvrira un clone de votre
session dans son navigateur. Il peut alors modifier ou corriger
votre session, et si il clique sur le lien ✉, il vous
renvoie votre session avec les corrections.
Lorsqu'une session est envoyée par mail, le nom de la
session chez le destinataire est modifié par ajout
préfixé de l'adresse e-mail de l'envoyeur, sauf si
le nom de session contient @. Si le nom de session commence par @,
le caractère @ est supprimé.
Exemple: un enseignant envoie à ses élèves
une session énoncé. Il choisit un nom de session commencant
par @, par exemple @exercice, il crée
la session puis il clique sur le lien ✉
et met comme destinataire l'alias mail de la classe. S'il n'y
a pas d'alias mail pour la classe, l'enseignant clique
sur le lien ⠪ et poste le sujet sur le forum.
Les élèves font le travail et le renvoient en
cliquant sur le lien ✉, qui contient automatiquement
l'adresse mail de l'enseignant.
Le nom de session devient alors
mail_eleve@fournisseur_internet@exercice ce qui permet à
l'enseignant de savoir qui il corrige.
L'enseignant corrige la session et la renvoie, le nom de session
reste inchangé.
Vous pouvez optionnellement installer
Xcas sur votre appareil, ce qui permet de l'utiliser
en mode avion.
Sur mobile, téléchargez
xcashtml.zip, dézippez-le (par exemple avec Androzip sur Android),
cherchez le fichier xcasfr.html (sur Android depuis
ici) et ouvrez-le avec votre
navigateur.
Vous pouvez créer un raccourci sur votre écran
d'accueil depuis le menu de votre navigateur.
Sur PC/Mac: si vous avez installé Xcas natif pour PC ou Mac
en version 1.4.9-57 ou
supérieure, Xcas pour Firefox est déjà
installé, sinon faire comme sur mobile.
Windows: cherchez le fichier xcasfr.html
dans le sous-répertoire doc du
répertoire d'installation de Xcas, en principe c:\xcas.
Si Xcas pour Firefox ne fonctionne pas avec Firefox en local,
il faut désactiver
security.fileuri.strict_origin_policy
dans about:config.
Sur les navigateurs qui implémentent webusb (par
exemple Chromium ou Chrome), vous pouvez
échanger facilement des scripts avec une
calculatrice Numworks.
Vérifiez dans la configuration (bouton en haut
à gauche) que l'export est configuré vers la
calculatrice Numworks.
Pour récupérer un script depuis la
calculatrice, cliquer sur le bouton Numworks→. Pour
renvoyer un script vers la Numworks, cliquer sur le
bouton →Numworks. Le nom du script apparait à gauche
du bouton →Numworks. S'il se termine par xw, il
désignera une session KhiCAS Numworks, s'il se
termine par .py un script Python. Vous pouvez
ensuite facilement partager vos scripts par email ou sur
des forums (icone enveloppe ou bouton F) KhiCAS est
une version pour Numworks de Xcas, qui
s'installe sur les
Numworks N0110 qui ont une version du système
inférieure ou égale à 15.
Sur cette page vous pouvez certifier
qu'une calculatrice Numworks contient le firmware
KhiCAS d'origine, conforme à la
réglementation
des examens en France.
Attention, ne mettez pas à jour votre calculatrice
sur le site officiel de Numworks, les mises
à jour versions 16 ou plus sont
irréversiblement incompatibles avec
Xcas. Plus d'informations ici et une
pétition
en ligne pour protester contre cette volte-face de
Numworks.
Remerciements à Maxime Friess pour le script
Numworks.js (sous licence MIT).
Ces sessions sont proposées en syntaxe Xcas ou en syntaxe Python.
Les programmes des sessions
écrits en gras (Python)
fonctionnent avec un interpréteur Python (après avoir fait
from math import * dans certains cas), ceux écrits
en italiques (Python) fonctionnent partiellement
().
Variables,
types, affectation, test, boucle, fonction, syntaxe
Xcas ou
Python
Seconde: tortue.
Cliquez sur le bouton pour voir des exemples.
Algèbre linéaire sur un corps fini (Agrégration)
Xcas
,
Python
Bases de Groebner
cyclic6.
Pour des calculs plus intensifs, activez
wasm dans les réglages
et inspirez-vous de
cyclic7 modulaire.
Pour avoir des informations pendant le déroulement des calculs, tapez la commande
debug_infolevel:=1 (ou plus) et ouvrez la console du navigateur.
Pour des calculs vraiment intensifs, utilisez la version native de Xcas.
Produit, quotient de polynômes à plusieurs variables
(pour navigateur compatible avec web-assembly, par exemple Firefox ≥ 58)
benchmark de Fateman n=20
Cette feuille de calcul est composée du haut vers le bas de:
Un panel de boutons permettant de restaurer/sauvegarder
une session, et des aides à la saisie de commandes
(Xcas/math, programmation, clavier scientifique, documentation) .
Au lancement de Xcas, le panel est
réduit à insertion d'une session, consultation des
manuels, configuration et restauration de la session
précédente.
Dès que vous avez validé une commande, il apparait
un lien x2 (respectivement local)
qui permet de cloner une session existante
(respectivement localement).
A utiliser si le noyau de calcul formel a crashé ou
pour copier-coller dans une page web, ou pour exécuter
dans Xcas natif (sélectionner un niveau en cliquant sur
son numéro de niveau puis faire Ctrl/Cmd-V)
un lien ✉ qui permet de partager
votre session par e-mail.
une zone d'aide, qui contient des courtes description des
commandes dont vous avez demandé la syntaxe. Vous pouvez
effacer l'aide avec le bouton d'effacement à droite du champ de recherche.
un historique qui contient 0 ou plusieurs
niveaux (0 au début). Un niveau est une paire
ligne de commande (en noir)/résultats (en
bleu), les boutons ↑ et ↓ permettent de déplacer un niveau
dans l'historique. Vous pouvez modifier une ligne
de commande de l'historique et valider en cliquant sur le bouton Ok
ou sur Entree en début de champ. Vous
pouvez placer un niveau dans la corbeille avec le bouton
d'effacement à droite du niveau. Pour le restaurer,
cliquez sur le bouton Restaure, pour l'effacer
définitivement cliquez sur le bouton Vide. Le lien +
à droite du bouton Vide permet d'ouvrir un nouvel onglet
sur une session vide.
une ligne de commande, on y tape des commandes
ou des programmes Xcas, et on
valide en cliquant sur le bouton Ok ou en tapant Entree (si
votre commande est sur plusieurs lignes, tapez Ctrl-Entree ou Entree
sur une ligne vide). Pour
forcer un passage
à la ligne, tapez Shift-Entree au clavier
ou utilisez le bouton \n.
Par exemple, tapez un calcul simple comme 1/2+1/3
ou sin(pi/4) ou sin(pi/4.0).
Pour vous aider à remplir la ligne de commande,
vous pouvez cliquer sur le bouton 123 qui fait apparaitre
le clavier scientifique et sur l'icone de Xcas
qui contient des commandes
fréquemment utiliées et des assistants
(déplacez la souris près des boutons pour
une description de leur action).
Si vous connaissez le nom d'une commande,
vous pouvez taper (le début) du nom d'une commande
(par exemple factor) puis
la touche
ou cliquer sur le bouton
pour obtenir une
aide courte sur la commande (si elle
est complète) ou des suggestions de noms de
commande (sinon).
Par exemple, cliquer sur le bouton math puis
reecr. puis
factor puis tapez sur ?, observez l'aide
en haut, cliquez sur un des exemples ou completez avec
x^4-1 puis tapez Entree.
Sur mobile, vous pouvez
sélectionner du texte en laissant le doigt appuyé
sur un mot, puis taper sur l'icone avec des ciseaux (pour couper) ou
avec deux feuilles (pour copier), pour coller le presse-papier,
laisser le doigt appuyé puis taper sur l'icone avec une
feuille. Vous pouvez aussi appuyer sur les boutons beg
et end pour marquer le début et la fin de la
sélection, puis optionnellement sur del pour
effacer, puis sur cp pour coller ce que vous aviez
sélectionné.
Vous pouvez ajouter un commentaire en validant une ligne de commande
vide (ou en cliquant sur le bouton
math puis texte). Vous pouvez transformer une ligne
de commande en un commentaire (ou inversement un commentaire en ligne
de commande) en ajoutant /// au début et en validant.
Vous pouvez commenter une ligne de
commande en cliquant sur le bouton représentant un
crayon à gauche de la réponse.
Vous pouvez utiliser des commandes de
balisage HTML dans un commentaire, par exemple inclure un
graphique
<img WIDTH="32" HEIGHT="32" SRC="turtle.png" alt="Tortue"
align="center">
.
Lorsque vous éditez un
commentaire, des boutons facilitent la saisie des commandes HTML pour
créer un titre, ou écrire en gras ou italique ou fonte
fixe. Vous pouvez taper des mathématiques de deux
manières mutuellement exclusives
en saisissant une ligne de commande
valide entre deux signes dollar ($...$),
ce morceau de ligne de commande sera interprété
par Xcas sans etre évalué puis transformé en
MathML pour affichage 2d, par exemple $x[n+1]^2$ affichera x indice
n+1 exposant 2, $A=[[1,2],[3,4]]$ affichera une matrice (sans donner
de valeur à A), $integrate(sin(x),x,0,pi)$ affichera
l'intégrale de sinus x entre 0 et pi sans la calculer,
$vecteur(u), vecteur(A,B)$ affichera une flèche
au-dessus de u ou de AB. Les
symboles des ensembles tels que ℤ,ℕ s'obtiennent par $ZZ$, $NN$,
ainsi pour saisir x∈ℚ on tape $x in QQ$. On peut aussi utiliser du
code HTML comme ∈ pour ∈, ∀ pour
∀, ∃, ⊕, ⊗,
∉, ∅, ∂
etc. ou recopier directement un symbole par exemple depuis
ici.
soit en saisissant un commentaire contenant au moins
une paire de double-dollars ($$ ... $$).
Dans ce cas, MathJax sera chargé pour afficher l'ensemble des
commentaires en utilisant la syntaxe LaTeX
(attention, cette méthode ne fonctionne pas sans
connexion Internet).
une console qui affiche des messages du CAS :
erreurs de syntaxe mais aussi lors
d'un calcul en mode pas-à-pas, par exemple d'une
dérivée.
La console n'est pas visible si elle est vide.
Vous pouvez effacer la console ou ajuster sa taille verticale.
une zone affichant des graphes 3d
lorsqu'on exécute une commande
ayant une sortie graphique 3d. Cette zone n'est pas visible s'il n'y
a pas de graphique 3d.
A tout moment, vous pouvez sauvegarder l'historique,
avec le nom de session affiché à droite du bouton
💾
(par défaut session).
Une session sauvegardée
s'ouvre ensuite avec le bouton Charger.
Sur mobile, les sauvegardes sont faites dans localStorage.
Vous pouvez aussi exporter la feuille de calcul (sauf
sur mobile), l'export occupe plus de place mais
permet de publier le fichier HTML comme une page autonome.
Vous pouvez sauvegarder les graphes 2d au format SVG avec le bouton
save à droite du graphe. Le fichier SVG créé
est au format 1.2 (il utilise la balise
vector-effect="non-scaling-stroke" qui n'est pas compris
par tous les visualisateurs ou convertisseurs).
Sous Firefox, pour pouvoir
choisir l'emplacement de sauvegarde et écraser
une version antérieure : cocher Toujours demander...
dans Préférences,
Général, Téléchargements.
Vous pouvez ouvrir (partiellement) dans Xcas pour Firefox
une session existante Xcas natif en la clonant
(menu Fich, Clone du programme Xcas, ou en ligne de commande
xcas --online nom_fichier.xws)
Notez que Chrome (et plus généralement
le navigateur installé par défaut sur votre appareil)
est beaucoup plus lent que Firefox pour
faire les calculs (5 fois plus lent environ), en particulier le
premier calcul dure une bonne dizaine de secondes. De plus, Chrome
n'a pas de support natif pour afficher les formules en 2d en mathml,
il faut alors charger MathJax ce qui nécessite
un accès réseau.
Il est donc recommendé de télécharger
Firefox et d'exécuter Xcas depuis Firefox
Raccourcis clavier avec Alt (ou Ctrl si Alt ne marche pas car
déjà utilisé par le navigateur ou le
système d'exploitation).
D, curseur droit : déplace le focus d'un champ
vers la droite ou le bas
G, curseur gauche : déplace le focus d'un champ
vers la gauche ou le haut
curseur bas : déplace le focus de 2 champs
vers la droite ou le bas
curseur bas : déplace le focus de 2 champs
vers la gauche ou le haut
B: déplace le focus vers la ligne de commande
C: copie le champ courant vers la ligne de commande
A: déplace le focus vers l'aide
TAB: affiche l'aide sur la commande à gauche du
curseur de la ligne de commande.
M: affiche ou cache le menu Maths
P: affiche ou cache le menu Programmation
T: affiche ou cache le menu Tortue
E ou F: exécute la session
N: efface la console
Le bouton en haut à gauche de la feuille permet de changer
la configuration de Xcas pour Firefox. Vous pouvez par exemple
modifier le nombre de chiffres significatifs utilisés par
défaut, l'unité d'angle, le mode pas à pas,
etc. Si vous avez un navigateur compatible, par exemple Firefox≥58,
vous pouvez activer l'option wasm qui permet d'effectuer
la plupart des calculs plus rapidement et donne accès aux
commandes de PARI-GP (après avoir évalué la
commande pari()). Vous pouvez aussi
utiliser l'interpréteur MicroPython à
la place de l'interpréteur Xcas si la compatibilité
Python de Xcas est insuffisante: il est fourni avec
des modules pour un usage scolaire (math, cmath,
random, turtle, matplotl, linalg, numpy, graphic, arit,
cas). Le passage d'un interpréteur à
l'autre peut aussi s'effectuer avec les commandes
python ou xcas.
Pour visualiser la tortue en mode MicroPython, taper .
sur une ligne de commande vide, pour visualiser un
graphique de graphic taper ;, pour
un graphique dans un repére, taper ,.
Manuels de Xcas
La version "disque dur" est accessible en local sous Linux si vous avez
installé giac, sinon sélectionnez la version "Internet".
Xcasfr.html est une interface javascript optimisée pour Firefox
du système de calcul formel
Giac/Xcas
compilé par emscripten (l'éditeur de
programme de cette interface
utilise CodeMirror).
Il n'a pas besoin de serveur, il s'exécute localement
(avec le moteur javascript de votre navigateur qui doit être récent,
mettez-le à jour pour avoir de bonnes performances, il faut
aussi avoir au moins 300M de RAM disponible)
à partir du code du CAS qui est téléchargé
une fois. Le prix à payer pour cette simplicité
est la vitesse, le code est plus lent pour tous les
calculs exacts.
La plupart du temps, cela n'est pas vraiment
genant, mais
si vous devez exécuter un gros calcul, il
vaut mieux installer
Xcas!
Giac/Xcas (c) 2018 B. Parisse, R. De Graeve, Institut Fourier, Université
de Grenoble, sous licence GPL3, pour une licence commerciale nous
contacter.
Optimization, signalprocessing, graph theory code (c) Luka Marohnić.
Sortie mathml et SVG (c) code principalement
écrit par J.P. Branchard.
MicroPython (c) Damien P. George et al QuickJS (c)
Fabrice Bellard et Charlie Gordon.
Il n'existe pas de manière universelle de simplifier une
expression, parfois il vaut mieux développer, parfois factoriser,
parfois linéariser, etc., il est donc important de connaitre
quelques commandes de réécriture, que l'on peut
retrouver depuis le menu Math, réécr.
L'appui sur le bouton math puis réecr. puis simpl
insère
la commande
,
tapez ensuite
l'expression que
vous voulez développer et simplifier.
,
,
sont des versions moins puissantes mais plus rapides que simplify
(normal ne recherche pas de relations entre fonctions
trigonométriques et exponentielles, ratnormal n'effectue
que des simplifications rationnelles, reorder réordonne
selon une liste de variables).
factorise sur R,
sur C
décompose en éléments simples sur R,
sur C.
développe les expressions trigonométriques,
exponentielles et logarithmes,
linérise les exponentielles,
linérise les expressions trigonométriques.
permet de substituer une ou des variables par une ou des valeurs
Conversions trigo: ,
,
,
,
Autres: ,
,
Pour créer un vecteur, tapez ses coordonnées
séparées par des virgules entre 2 crochets [].
produit
scalaire de deux vecteurs, produit
vectoriel en dimension 2 ou 3.
Pour créer une matrice, utilisez l'assistant matrix
du menu math. Vous pouvez définir les coefficients par
une formule en fonction de la ligne et de la colonne ou
élément par élément
(vous pouvez entrer plusieurs coefficients en les séparant par
un espace et passer à la ligne suivante avec Entree). Pour
une matrice aléatoire, utilisez l'assistant alea.
Les indices de lignes et colonnes commencent à 0 avec une
seule paire de [] et à 1 avec une double-paire
[[]], par
exemple
ou .
Vous pouvez utiliser +,-,* et pour
effectuer les opérations usuelles sur les matrices.
transposée, : transconjuguée,
identité
système linéaire,
:
pivot de Gauss,
: déterminant,
: inverse,
: décomposition LU et application à
,
polynome caractéristique ou
minimal,
vecteurs et valeurs propres.
Factorisations
,
,
,
Normes
,
,
:
de matrice subordonnée
Les commandes fréquentes se trouvent dans le menu Math, bouton arit.
Certaines commandes agissent indifféramment sur les entiers
et sur les polynômes, par exemple gcd ou lcm,
d'autres commandes ont deux versions, celle qui agit sur des entiers
a comme initiale i, par exemple irem est le reste
euclidien pour des entiers, et rem pour des polynômes.
,
PGCD et PPCM
,
,
:
reste et quotient de la division euclidienne sur les entiers
identité
de Bézout sur les entiers,
solutions
de au+bv=c,
test de pseudo-primalité,
prochain nombre premier,
factorisation d'entier, indicatrice d',
puissance
modulaire rapide.
,
,
:
reste et quotient de la division euclidienne sur les polynomes. La
variable par défaut est x, sinon l'indiquer en
3ème argument
identité
de Bézout sur les polynomes,
solutions
de au+bv=c,
valeur en
un point par Horner,
interpolation
polynomiale.
Pour travailler dans ℤ/nℤ, utiliser le signe mod, par
exemple x^3+5x-11 mod 17 est un polynome a coefficients dans ℤ/17ℤ.
Pour travailler sur un corps fini non premier, utiliser la
commande
Depuis le bouton math
l'assistant solve
vous guidera pour résoudre une équation ou un
système
polynomial en mode exact ou approché sur les réels ou
les complexes (fonctions
)
Pour résoudre une équation différentielle,
cliquez sur analyse du menu Math,
pour un
calcul exact,
approché, ou cliquez sur graphe puis
pour un graphe de solution approchée.
Pour calculer le terme général d'une suite
récurrente (ou d'un système), cliquez sur u_n
du menu Math (commande
).
Le math contient des assistants pour
définir une fonction (bouton fonct),
déterminer le tableau de variations d'une expression
(f(x)),
travailler avec des suites (u_n),
calculer une somme (∑), des limites (limit),
des dérivées (∂),
des primitives et valeurs d'intégrales (∫),
des développement limités (series).
Par exemple pour définir une fonction algébrique
f d'une variable, cliquer sur
fonct de math puis
mettre f comme nom de fonction,
x comme liste des arguments et sin(x^2) comme
valeur renvoyéee :
.
On peut ensuite calcule la valeur
de f ou de sa dérivée par
.
Une dérivée se calcule avec
ou '.
Une primitive d'une
expression se calcule avec , par
exemple ,
pour une intégrale entre deux bornes
.
Enfin et
permettent de calculer une limite ou un développement de
Taylor, par exemple
Utiliser l'assistant aléa de math pour
générer des nombres pseudo-aléatoires.
Lois continues:
,
,
,
,
,
,
,
,
.
Lois discrètes :
,
,
,
.
Les distributions cumulées s'obtiennent en rajoutant le
suffixe _cdf ou par la commande , et les
inverses avec le suffixe _icdf ou par la commande .
La commande
permet de représenter un histogramme.
La commande permet
de décomposer une matrice de transition.
Utiliser les assistants du bouton math pour
créer un graphe d'une fonction d'une ou deux variables
(plot, voir aussi f(x) pour avoir un tableau
de variations),
une courbe ou surface paramétrique (param), un champ de tangentes
pour une équation différentielle (field).
Exemples
affiche
le graphe 2d des fonctions sin(x) et x-x^3/6, alors que
affiche un graphe 3d avec un plan, vous pouvez changer de point de
vue à la souris.
Vous pouvez aussi utiliser de nombreuses instructions
géométriques:
,
,
,
,
,
,
,
,
,
,
, ...
Si vous n'avez jamais programmé, vous pouvez apprendre
à le faire avec la tortue, cliquez sur le tutoriel
Tortue.
Le bouton Prog affiche des assistants
pour créer les structures de programmation
(test, boucle, fonction). Pour passer à la ligne dans un
champ d'entrée déjà validé que vous
modifiez, tapez Entree. Dans
la ligne de commande en bas de page, il faut
taper simultanément sur Shift-Entree ou utiliser le
bouton \n.
Pour indenter, utilisez le bouton →|.
Le bouton debug
permet d'exécuter une fonction en mode pas à pas
pour la mettre au point.
Plusieurs syntaxes sont acceptées,
dont une syntaxe en francais très proche du langage
algorithmique et une syntaxe compatible avec
Vous pouvez afficher un
, regarder les sessions exemples ou lire le
manuel de
programmation lycée.
La syntaxe Python dans Xcas permet aux utilisateurs du langage
Python une prise en main plus rapide de Xcas.
Il faut prendre quelques précautions :
activez la compatibilité de syntaxe Python dans la
configuration (bouton en haut à gauche), afin que les
assistants utilisent des structures de controle Python et que
certaines commandes comme int aient le même
comportement qu'en Python.
la syntaxe Python est activée lorsqu'on
commence une commande par un commentaire Python (#), ou
une structure de controle Python (def ...:,
if...:, ...).
la compatibilité se limite à la
programmation impérative courante: test, boucle,
fonction, slices, liste en compréhension simple.
La programmation orientée objet n'est pas
supportée, yield, le else en fin de for/while
ou les listes en compréhension imbriquées non plus.
il est inutile de charger des modules avec import,
toutes les instructions Xcas sont directement accessibles. Les
instructions built-in Python fonctionnent en
général en Xcas (sauf pour les chaines) ainsi
que le module random (et math/cmath bien sur).
Par contre les modules comme matplotlib, scipy, numpy
ne sont pas supportés, il faut utiliser des instructions
natives Xcas à la place (utilisez l'assistant Maths pour
trouver les plus courantes).
Réciproquement, une session Xcas écrite en syntaxe Python
qui contient des objets CAS
(expressions symboliques, flottants multi-précisions, ...)
ou certaines commandes intégrées de Xcas
(par exemple commandes de tracé)
ne fonctionnera pas en Python pur.
choisissez des noms de fonction commencant par une
majuscule pour éviter les conflits avec des noms de
commande de Xcas.
Il est conseillé de déclarer les
variables locales dans une fonction avec un commentaire
# local nom_des_variables_locales
les délimiteurs de chaines de caractères sont
"...", en effet '...' sert en calcul formel
à différer l'évaluation d'une expression
la division de deux entiers renvoie un rationnel (ou un
entier), et pas un nombre flottant
^ est synonyme de **
liste1+liste2 ne concatène pas deux listes mais les
additionne comme des vecteurs, utilisez
liste1.extend(liste2) pour concaténer,
n*liste ne duplique pas une liste, utilisez liste*n.
= est traduit en :=. On peut bien sur
utiliser := pour l'affectation à la place de
=, mais il n'est pas
possible d'utiliser certaines facilités de notation Xcas
comme par exemple P:=x^3-2x+1; P(x=x+1) (il faudrait utiliser
ici subst(P,x,x+1))
l'affectation dans une liste se fait par
référence en Python, dans Xcas elle se fait par valeur
si on utilise =, par référence avec =<.
Voici un programme calculant
la somme des carrés de 1 à x écrit en syntaxe Xcas
fonction f(x)
local y,s;
si x > 100000 alors retourne "Nombre trop grand"; fsi;
s:=0;
pour y de 1 jusque x faire
s:=s+y^2;
fpour
retourne s;
ffonction:;
En syntaxe compatible Python def f(x):
# local y,s
if x > 100000:
return "Nombre trop grand"
s=0
for y in range(x+1):
s=s+y**2
return s
La tortue est un module pour apprendre à programmer,
utilisable dès le primaire. Il s'agit d'un robot
qui se déplace selon des commandes avec un crayon
qui marque son passage, avec une couleur donnée.
Tapez Ctrl-T ou cliquez sur le bouton Prog puis Tortue à
droite pour faire apparaitre les commandes de la tortue.
Cliquez sur le bouton nouveau de la première ligne des
commandes de la tortue pour créer un nouveau dessin tortue.
Deux champs d'entrée
sont créés, le premier pour définir des fonctions,
le second pour saisir en-dessous
de la commande efface
des commandes de déplacement de la tortue ou des
appels à des fonctions (définies auparavant au-dessus),
La barre de bouton à droite du bouton nouveauav rec td ...
permet de saisir facilement les commandes de déplacement, comme
avance (la tortue avance de 10 pas ou de la longueur
indiquée en paramètre), recule, tourne_droite
(la tortue tourne à droite, par défaut de 90
degrés), etc.
Par exemple, si vous cliquez juste en-dessous de efface,
puis sur le bouton av puis sur le bouton tg puis
validez la ligne, la tortue se déplacera de 10 pixels vers
la gauche puis s'orientera vers le haut.
Le premier champ d'entrée sert à définir des
fonctions regroupant plusieurs instructions de déplacement,
il peut contenir des tests et des boucles. Vous pouvez vous aider
des assistants test, boucle et fonct
pour créer une nouvelle fonction.
Voici un exemple de construction
de carrés et polygones réguliers
Xcas,
Python, ou
Joyeux Xcas,
Joyeux Xcas (version Python)
Le manuel
tortue de Xcas explique ces commandes et contient de nombreux
exemples d'activités dès le primaire.