Maxima est un logiciel de calcul formel libre, gratuit et multiplateforme. Pourquoi dépenser plus ? Voici deux courts exemples.
Citation :
On place $n$ points sur un cercle, on trace toutes les cordes possibles. Combien y a-t-il de régions au maximum dans le disque ?
Réponse:
-$n=1$, 1 région
- $n=2$, 2 régions
- $n=3$, 4 régions
- $n=4$, 8 régions
- $n=5$, 16 régions
mais...
- $n=6$, 31 régions
la formule générale
$1+n(n-1)\frac{n^2 -5n+18}{24}$
se démontre par récurrence sur $n$
$u_n=1+n\,(n+1)\,\frac{(n^2-3n+14)}{24}$ ?
Ce qui m'y fait penser, ce sont les valeurs.
C'est un exercice que je donne chaque année à mes élèves de première pour insister sur le fait que le calcul des premiers termes d'une suite ne permet pas d'en déduire la nature.
On obtient $u_0=1$, $u_1=2$, $u_2=4$, $u_3=8$, $u_4=16$.... et $u_5=31$.
(merci yannis)
Le script Maxima
Les lignes Ci sont les commandes, les lignes Di les évaluations des commandes
(C1) u(n):=1+n*(n-1)*(n^2-5*n+18)/24;
2
n (n - 1) (n - 5 n + 18)
(D1) u(n) := 1 + -------------------------
24
(C2) f(n):=a+b*n+c*n^2+d*n^3+e*n^4;
2 3 4
(D2) f(n) := a + b n + c n + d n + e n
(C3) linsolve([f(1)=1,f(2)=2,f(3)=4,f(4)=8,f(5)=16],[a,b,c,d,e]);
3 23 1 1
(D3) [a = 1, b = - -, c = --, d = - -, e = --]
4 24 4 24
(C4) GLOBALSOLVE : TRUE$
(C5) ''c3;
3 23 1 1
(D5) [a : 1, b : - -, c : --, d : - -, e : --]
4 24 4 24
(C6) f(n);
4 3 2
n n 23 n 3 n
(D6) -- - -- + ----- - --- + 1
24 4 24 4
(C7) factor(%-1);
2
(n - 1) n (n - 5 n + 18)
(D7) -------------------------
24
(C8) ratsimp(f(n)-u(n));
(D8) 0
(C9) plot2d([2^(n-1),u(n)],[n,0,12],[y,0,2000]);
Définition du terme général :
(C10) u[1]:1;
(D10) 1
(C11) u[n]:=1+n*(n-1)*(n^2-5*n+18)/24;
2
n (n - 1) (n - 5 n + 18)
(D11) u := 1 + -------------------------
n 24
(C12) u[4];
(D12) 8
(C13) u[5];
(D13) 16
(C14) u[6];
(D14) 31
ou par récurrence :
(C9) u[0]:0;
(D9) 0
(C11) u[1]:1;
(D11) 1
(C12) u[n]:=u[n-1]+u[n-2];
(D12) u := u + u
n n - 1 n - 2
(C13) u[5];
(D13) 5
(C14) u[10];
(D14) 55
mais attention, si l’on change une condition initiale, il faut tuer u avant de recalculer :
(C15) kill(u);
(D15) DONE
(C16) u[0]:1;
(D16) 1
(C17) u[1]:1;
(D17) 1
(C18) u[n]:=u[n-1]+u[n-2];
(D18) u := u + u
n n - 1 n - 2
(C19) u[5];
(D19) 8
(C20) u[10];
(D20) 89
2004-2024 © Mathazay - Tous droits réservés
Ce site est géré sous SPIP 3.0.17 [21515] et utilise le squelette EVA-Web 4.2
Dernière mise à jour : lundi 7 septembre 2015