Table des matières
Chapitre 1 Vue d’ensemble de
Xcas
pour le programmeur
1.1 Installation de
Xcas
1.2 Les différents modes
1.3 Éditer, sauver, exécuter un programme avec la syntaxe
Xcas
1.4 Débugger un programme avec la syntaxe
Xcas
1.5 Présentation générale des instructions avec la syntaxe
Xcas
1.5.1 Les commentaires
1.5.2 Le bloc
1.5.3 Les variables globales et les variables locales
1.5.4 Les programmes et les fonctions
1.5.5 Les tests
1.5.6 Les boucles
Chapitre 2 Les différentes instructions selon le mode choisi
2.1 Les commentaires
2.1.1 Traduction Algorithmique
2.1.2 Traduction Xcas
2.1.3 Traduction MapleV
2.1.4 Traduction MuPAD
2.1.5 Traduction TI89 92
2.2 Les variables
2.2.1 Leurs noms
2.2.2 Notion de variables locales
2.3 Les paramètres
2.3.1 Traduction Xcas
2.3.2 Traduction MapleV
2.3.3 Traduction MuPAD
2.3.4 Traduction TI89/92
2.4 Les Entrées
2.4.1 Traduction Algorithmique
2.4.2 Traduction Xcas
2.4.3 Traduction MapleV
2.4.4 Traduction MuPAD
2.4.5 Traduction TI89/92
2.5 Les Sorties
2.5.1 Traduction Algorithmique
2.5.2 Traduction Xcas
2.5.3 Traduction MapleV
2.5.4 Traduction MuPAD
2.5.5 Traduction TI89/92
2.6 La séquence d’instructions ou action ou bloc
2.6.1 Traduction Xcas
2.6.2 Traduction MapleV
2.6.3 Traduction MuPAD
2.6.4 Traduction TI89/92
2.7 L’instruction d’affectation
2.7.1 Traduction Algorithmique
2.7.2 Traduction Xcas
2.7.3 Traduction Maple
2.7.4 Traduction MuPAD
2.7.5 Traduction TI89/92
2.8 L’instruction d’affectation par référence
2.9 L’instruction pour faire des hypothèses sur une variable formelle
2.9.1 Traduction Algorithmique
2.9.2 Traduction Xcas
2.9.3 Traduction Maple
2.9.4 Traduction MuPAD
2.9.5 Traduction TI89/92
2.10 L’instruction pour connaitre les contraintes d’une variable
2.10.1 Traduction Algorithmique
2.10.2 Traduction Xcas
2.10.3 Traduction Maple
2.10.4 Traduction MuPAD
2.10.5 Traduction TI89/92
2.11 Les instructions conditionnelles
2.11.1 Traduction Algorithmique
2.11.2 Traduction Xcas
2.11.3 Traduction MapleV
2.11.4 Traduction MuPAD
2.11.5 Traduction TI89/92
2.12 Les instructions "Pour"
2.12.1 Traduction Algorithmique
2.12.2 Traduction Xcas
2.12.3 Traduction MapleV
2.12.4 Traduction MuPAD
2.12.5 Traduction TI89 92
2.13 L’instruction "Tant que"
2.13.1 Traduction Algorithmique
2.13.2 Traduction Xcas
2.13.3 Traduction MapleV
2.13.4 Traduction MuPAD
2.13.5 Traduction TI89/92
2.14 L’instruction "repeter"
2.14.1 Traduction Algorithmique
2.14.2 Traduction Xcas
2.14.3 Traduction MapleV
2.14.4 Traduction MuPAD
2.14.5 Traduction TI89/92
2.15 Les conditions ou expressions booléennes
2.15.1 Les opérateurs relationnels
2.15.2 Les opérateurs logiques
2.16 Les fonctions
2.16.1 Traduction Algorithmique
2.16.2 Traduction Xcas
2.16.3 Traduction MapleV
2.16.4 Traduction MuPAD
2.16.5 Traduction TI89 92
2.17 Les listes
2.17.1 Traduction Algorithmique
2.17.2 Traduction Xcas
2.17.3 Traduction MapleV
2.17.4 Traduction MuPAD
2.17.5 Traduction TI89/92
2.18 Un exemple : le crible d’Eratosthène
2.18.1 Description
2.18.2 Écriture de l’algorithme
2.18.3 Traduction Xcas
2.18.4 Traduction TI89/92
2.19 Un exemple de fonction vraiement récursive
2.19.1 La définition
2.19.2 Le programme
Chapitre 3 Des programmes tres simples sur les chaînes de caractères
3.1 Compter un nombre d’occurences
3.1.1 Nombre d’occurences d’une lettre
3.1.2 Nombre d’occurences d’une sous-chaîne
3.2 Supprimer une lettre et sous-chaîne
3.2.1 Supprimer une lettre
3.2.2 Supprimer une sous-chaîne
3.3 Remplacer une lettre ou une sous-chaîne par une autre chaîne
3.3.1 Remplacer une lettre par une autre lettre
3.3.2 Remplacer une sous-chaîne par une autre
Chapitre 4 Des programmes tres simples pour les Mathématiques
4.1 Définir le minimum
4.1.1 Minimum de 2 nombres
4.1.2 Minimum de 3 nombres
4.1.3 Minimum d’une liste de nombres
4.2 Trier
4.2.1 Ordonner 2 nombres par ordre croissant
4.2.2 Ordonner 3 nombres par ordre croissant
4.2.3 Ordonner une séquence de nombres par ordre croissant
4.3 Définir une fonction par morceaux
4.4 Convertir
4.4.1 Des secondes en jours, heures, minutes et secondes
4.4.2 Des degrés en radians
4.4.3 Des radians en degrés
4.5 Les fractions
4.5.1 Simplifier une fraction
4.5.2 Additionner 2 fractions
4.5.3 Multiplier 2 fractions
Chapitre 5 Des programmes tres simples pour les Statistiques
5.1 Simulation du lancer d’une pièce
5.2 Simulation d’un dé
5.3 Simulation d’une variable aléatoire
5.4 Simulation d’une variable aléatoire
Chapitre 6 Les programmes d’arithmétique
6.1 Quotient et reste de la division euclidienne
6.1.1 Les fonctions iquo, irem et smod de
Xcas
6.1.2 Activité
6.2 Calcul du PGCD par l’algorithme d’Euclide
6.2.1 Traduction algorithmique
6.2.2 Traduction Xcas
6.2.3 Traduction MapleV
6.2.4 Traduction MuPAD
6.2.5 Traduction TI89 92
6.2.6 Le pgcd dans ℤ[
i
]
6.3 Identité de Bézout par l’algorithme d’Euclide
6.3.1 Version itérative sans les listes
6.3.2 Version itérative avec les listes
6.3.3 Version récursive sans les listes
6.3.4 Version récursive avec les listes
6.3.5 Traduction Xcas
6.4 Décomposition en facteurs premiers d’un entier
6.4.1 Les algorithmes et leurs traductions algorithmiques
6.4.2 Traduction Xcas
6.5 Décomposition en facteurs premiers en utilisant le crible
6.5.1 Traduction Algorithmique
6.5.2 Traduction Xcas
6.6 La liste des diviseurs
6.6.1 Les programmes avec les élèves
6.6.2 Le nombre de diviseurs d’un entier
n
6.6.3 L’algorithme sur un exemple
6.6.4 Les algorithmes donnant la liste des diviseurs de n
6.7 La liste des diviseurs avec la décomposition en facteurs premiers
6.7.1
FPDIV
6.7.2
CRIBLEDIV
6.7.3 Traduction Algorithmique
6.8 Calcul de
A
P
mod
N
6.8.1 Traduction Algorithmique
6.8.2 Traduction Xcas
6.8.3 Un exercice
6.9 La fonction "estpremier"
6.9.1 Traduction Algorithmique
6.9.2 Traduction Xcas
6.10 La fonction estpremc en utilisant le crible
6.10.1 Traduction algorithmique
6.10.2 Traduction Xcas
6.11 Méthode probabiliste de Mr Rabin
6.11.1 Traduction Algorithmique
6.11.2 Traduction Xcas
6.12 Méthode probabiliste de Mr Miller-Rabin
6.12.1 Un exemple
6.12.2 L’algorithme
6.12.3 Traduction Algorithmique
6.12.4 Traduction Xcas
6.13 Numération avec Xcas
6.13.1 Passage de l’écriture en base dix à une écriture en base b
6.13.2 Passage de l’écriture en base b de n à l’entier n
6.13.3 Un exercice et sa solution
6.14 Écriture d’un entier dans une base rationnelle
6.15 Traduction Xcas de l’algorithme de Hörner
6.16 Savoir si le polynôme
A
est divisible par
B
6.16.1 Programmation de la fonction booléenne
estdivpoly
6.16.2 Autre version du programme précedent :
quoexpoly
6.17 Affichage d’un nombre en une chaîne comprenant des espaces
6.17.1 Affichage d’un nombre entier par tranches de
p
chiffres
6.17.2 Transformation d’un affichage par tranches en un nombre entier
6.17.3 Affichage d’un nombre décimal de [0,1[ par tranches de
p
chiffres
6.17.4 Affichage d’un nombre décimal par tranches de
p
chiffres
6.18 Écriture décimale d’un nombre rationnel
6.18.1 Algorithme de la potence
6.18.2 Avec un programme
6.18.3 Construction d’un rationnel
6.19 Développement en fraction continue
6.19.1 Développement en fraction continue d’un rationnel
6.19.2 Développement en fraction continue d’un réel quelconque
6.19.3 Les programmes
6.19.4 Exemples
6.19.5 Suite des réduites successives d’un réel
6.19.6 Suite des réduites "plus 1" successives d’un réel
6.19.7 Propriété des réduites
6.20 Suite de Hamming
6.20.1 La définition
6.20.2 L’algorithme à l’aide d’un crible
6.20.3 L’algorithme sans faire un crible
6.20.4 La traduction de l’algorithme avec Xcas
6.21 Développement diadique de
a
/
b
∈ [0;1[
6.21.1 L’énoncé
6.21.2 La solution
6.22 Écriture d’un entier comme ∑
j
≥ 1
a
j
j
! avec 0≤
a
j
<
j
6.22.1 L’énoncé
6.22.2 La solution
6.23 Les nombres de Mersenne
6.23.1 Définitions et téorèmes
6.23.2 Test de Lucas-Lehmer
6.24 Les nombres parfaits et les nombres amiables
6.24.1 Les nombres parfaits
6.24.2 Les nombres amiables
6.25 Les parallélépipèdes rectangles presque parfaits
6.25.1 L’énoncé
6.25.2 La solution
6.26 Les nombres heureux
6.26.1 L’énoncé
6.26.2 La solution
6.27 L’équation de Pell
6.27.1 Les proriétés
6.27.2 Le programme
Chapitre 7 Exercices de combinatoire
7.1 Fonction partage ou nombre de partitions de
n
∈ ℕ
7.1.1 L’énoncé
7.1.2 La solution
7.1.3 Une méthode plus rapide
7.1.4 Estimation asymptotique
7.2 Un exercice de combinatoire et son programme
7.2.1 L’énoncé
7.2.2 Les programmes
7.3 Visualistion des combinaisons modulo 2
7.3.1 L’énoncé
7.3.2 Le programme
7.4 Un exercice
7.5 Valeur de
e
et le hasard
7.5.1 L’énoncé
7.5.2 La solution avec
Xcas
7.6 Distance moyenne entre de 2 points
7.6.1 L’énoncé
7.6.2 La solution avec
Xcas
Chapitre 8 Exercices sur trigonométrie et complexes
8.1 Les polynômes de Tchebychev
8.1.1 L’énoncé
8.1.2 La solution avec
Xcas
Chapitre 9 Codage
9.1 Codage de Jules Cesar
9.1.1 Introduction
9.1.2 Codage par symétrie point ou par rotation d’angle π
9.1.3 Avec les élèves
9.1.4 Travail dans Z/26Z
9.1.5 Codage par rotation d’angle α=
k
*π/13
9.2 Écriture des programmes correspondants
9.2.1 Passage d’une lettre à un entier entre 0 et 25
9.2.2 Passage d’un entier entre 0 et 25 à une lettre
9.2.3 Passage d’un entier k entre 0 et 25 à l’entier n+k mod 26
9.2.4 Codage d’un message selon Jules César
9.3 Codage en utilisant une symétrie par rapport à un axe
9.3.1 Passage d’un entier k entre 0 et 25 à l’entier n-k mod 26
9.3.2 Codage d’un message selon une symétrie droite D
9.4 Codage en utilisant une application affine
9.5 Codage en utilisant un groupement de deux lettres
9.6 Le codage Jules César et le codage linéaire
9.6.1 Les caractères et leurs codes
9.6.2 Les différentes étapes du codage
9.6.3 Le programme Xcas
9.6.4 Le programme C++
9.6.5 Exercices de décodage
9.6.6 Solutions des exercices de décodage Jules César et linéaire
9.7 Chiffrement affine : premier algorithme
9.7.1 L’algorithme
9.7.2 Traduction Algorithmique
9.7.3 Traduction Xcas
9.8 Chiffrement affine : deuxième algorithme
9.8.1 L’algorithme
9.8.2 Traduction Algorithmique
9.8.3 Traduction Xcas
9.9 Devoir à la maison
9.9.1 Le code Ascii
9.10 Codage RSA
9.10.1 Le cryptage des nombres avec la méthode RSA
9.10.2 La fonction de codage
9.11 Les programmes correspondants au codage et décodage RSA
9.11.1 Exercices de décodage RSA avec différents paramètres
9.11.2 Solutions des exercices de décodage
9.12 Codage RSA avec signature
9.12.1 Quelques précautions
Chapitre 10 Algorithmes sur les suites et les séries
10.1 Les suites
10.1.1 Les suites
u
n
=
f
(
n
)
10.1.2 La représentation des suites
u
n
=
f
(
n
)
10.1.3 La représentation des suites récurrentes
u
0
=
a
,
u
n
=
f
(
u
n
−1
)
10.1.4 La représentation des suites récurrentes [
u
0
,
u
1
,...
u
s
−1
]=
la
,
u
n
=
f
(
u
n
−
s
...,
u
n
−1
) si
n
>=
s
10.1.5 L’escargot des suites récurrentes
u
(0)=
a
,
u
(
n
)=
f
(
u
(
n
−1) si
n
>0
10.1.6 Les suites récurrentes définies par une fonction de plusieurs variables
10.2 Les séries
10.2.1 Les sommes partielles
10.2.2 Un exemple simple : une approximation de
e
10.2.3 Exemple d’accélération de convergence des séries à termes positifs
10.3 Méthodes d’accélération de convergence des séries alternées
10.3.1 Un exemple d’accélération de convergence des séries alternées
10.3.2 La transformation d’Euler pour les series alternées
10.3.3 Autre approximation d’une série alternée
10.3.4 Transformation d’une série en série alternée
10.4 Développements asymptotiques et séries divergentes
10.4.1 Un exemple:la fonction exponentielle intégrale
10.4.2 Le calcul approché de la constante d’Euler γ
10.5 Solution de
f
(
x
)=0 par la méthode de Newton
10.5.1 La méthode de Newton
10.5.2 Exercices sur la méthode de Newton
10.5.3 La méthode de Newton avec préfacteur
10.6 Trouver un encadrement de
x
0 lorsque
f
(
x
0) est minimum
10.6.1 Déscription du principe de la méthode
10.6.2 Déscription de 2 méthodes
10.6.3 Traduction
Xcas
de l’algorithme avec Fibonacci
Chapitre 11 Algorithmes d’algébre
11.1 Méthode pour résoudre des systèmes linéaires
11.1.1 Le pivot de Gauss quand
A
est de rang maximum
11.1.2 Le pivot de Gauss pour
A
quelconque
11.1.3 La méthode de Gauss-Jordan
11.1.4 La méthode de Gauss et de Gauss-Jordan avec recherche du pivot
11.1.5 Application : recherche du noyau grâce à Gauss-Jordan
11.2 Résolution d’un système linéaire
11.2.1 Résolution d’un système d’équations linéaires
11.2.2 Résolution de
MX
=
b
donné sous forme matricielle
11.3 La décomposition LU d’une matrice
11.4 Décomposition de Cholesky d’une matrice symétrique définie positive
11.4.1 Les méthodes
11.4.2 Le programme de factorisation de Cholesky avec LU
11.4.3 Le programme de factorisation de Cholesky par identification
11.4.4 Le programme optimisé de factorisation de Cholesky par identification
11.5 Réduction de Hessenberg
11.5.1 La méthode
11.5.2 Le programme de réduction de Hessenberg
11.6 Tridiagonalisation des matrices symétriques avec des rotations
11.6.1 Matrice de rotation associée à
e
p
,
e
q
11.6.2 Réduction de Givens
11.6.3 Le programme de tridiagonalisation par la méthode de Givens
11.7 Tridiagonalisation des matrices symétriques avec Householder
11.7.1 Matrice de Householder associée à
v
11.7.2 Matrice de Householder annulant les dernières composantes de
a
11.7.3 Réduction de Householder
Chapitre 12 Le calcul intégral et les équations différentielles
12.1 La méthode des trapèzes et du point milieu pour calculer une aire
12.1.1 La méthode des trapèzes
12.1.2 La méthode du point milieu
12.2 Accélération de convergence : méthode de Richardson et Romberg
12.2.1 La méthode de Richardson
12.2.2 Application au calcul de S=∑
k
=1
∞
1/
k
2
12.2.3 Application au calcul de la constante d’Euler
12.2.4 La constante d’Euler à epsilon près et ma méthode de Richardson
12.2.5 La méthode de Romberg
12.2.6 Deux approximations de l’intégrale
12.3 Les méthodes numériques pour résoudre
y
′=
f
(
x
,
y
)
12.3.1 La méthode d’Euler
12.3.2 La méthode du point milieu
12.3.3 La méthode de Heun
Chapitre 13 Exercice : Les courses poursuites
13.1 Le chien qui va en direction de son maitre
13.2 Avec les sommets d’isopolygônes
13.3 Avec les sommets de polygônes quelconques
13.4 Avec des points aléatoires
Chapitre 14 Les quadriques
14.1 Équation d’une quadrique
14.2 Équation reduite d’une quadrique
Chapitre 15 Quelques compléments
15.1 Pour réutiliser le graphe d’une fonction utilisateur
15.2 Les programmes de quadrillage
Chapitre 16 Les programmes récursifs
16.1 Avec des chaines de caractères
16.1.1 Une liste de mots
16.1.2 Les mots
16.1.3 Les palindromes
16.2 Les dessins récursifs
16.2.1 Les segments
16.2.2 Les carrés
16.2.3 Les triangles
16.2.4 Exercice
16.2.5 Le problème des 3 insectes
16.2.6 Les cercles
16.3 Les tours de Hanoï
16.4 Les permutations
16.4.1 Les permutations circulaires
16.4.2 Programme donnant toutes les permutations
Chapitre 17 Récupérer et installer un logiciel