Des exercices corrigés avec Xcas

## 7 Des exercices corrigés avec `Xcas`

### 7.1 Fonction et représentation graphique (niveau terminale S)

#### 7.1.1 Exercice 1

On considère la fonction f de ℝ-{3} dans ℝ définie par :

f(x)=(x+1)ln|x−3|

1. Calculer la derivée première f′ et seconde f″ de f.
   En déduire les variations de f′.
2. Calculer les limites de f′ en −∞ et en 3 à gauche.
3. Montrer que f′ s’annule une seule fois en α sur ]−∞;3[. Donner un encadrement de α d’amplitude 0.1.
4. Étudier le signe de f′(x) sur ℝ-{3} et en déduire les variations de f.
5. Tracer la courbe C de f dans un repère orthonormé (unité 1cm).
6. Calculer l’aire en cm2 de la région comprise entre C, l’axe des abscisses et les droites d’équations x=−1 et x=2.

Réponses

1. On tape pour définir la fonction f :
   `f(x):=(x+1)*ln(abs(x-3))`
   On tape pour définir la fonction f′ :
   `f1:=function_diff(f):;`
   puis,
   `f1(x)`
   On obtient :
   `ln(abs(x-3))+(x+1)/(x-3)`
   Donc f′(x)=ln(|x−3|)+x+1/x−3.
   On tape pour définir la fonction f″ :
   `f2:=function_diff(f1):;`
   puis,
   `f2(x)`
   On obtient :
   `1/(x-3)+1/(x-3)+(x+1)*(-(1/((x-3)^2)))`
   puis pour simplifier l’écriture, on tape :
   `normal(f2(x))`
   On obtient :
   `(x-7)/(x^2-6*x+9)`
   ou bien pour factoriser, on tape :
   `factor(f2(x))`
   On obtient :
   `(x-7)/((x-3)^2)`
   Donc f″(x)= x−7/(x−3)2

   Autre façon
   On tape pour définir la fonction f :

   `f(x):=(x+1)*ln(abs(x-3))`

   On tape pour calculer f′(x) :

   `dfx:=diff(f(x)`

   On obtient :

   `ln(abs(x-3))+(x+1)/(x-3)`

   Donc f′(x)=ln(|x−3|)+x+1/x−3.
   Et on tape pour définir la fonction f′ à partir de `dfx`:

   `f1:=unapply(dfx,x);`

   On tape pour calculer f″(x) :

   `ddfx:=diff(dfx)`

   On obtient :

   `1/(x-3)+1/(x-3)+(x+1)*(-(1/((x-3)^2)))`

   ou pour avoir une écriture factorisée, on tape directement :

   `ddfx:=factor(diff(dfx))`

   On obtient :

   `(x-7)/((x-3)^2)`

   Donc f″(x)= x−7/(x−3)2
   Et on tape pour définir la fonction f″ à partir de `ddfx`:

   `f2:=unapply(ddfx,x);`

   Cette façon de faire à l’avantage de définir la fonction f2=f″ à partir d’une expression simplifiée ou factorisée.
   Attention !!! On ne peut pas écrire par exemple :
   `g(x):=normal(diff(f(x)))` pour définir la fonction g=f′ mais on doit écrire `g:=unapply(normal(diff(f(x))),x)` car sinon il y a confusion entre x variable de dérivation et x variable de la fonction g.

2. On tape pour avoir la limite de f′ en −∞ :
   `limit(f1(x),x,-infinity)`
   On obtient :
   `+infinity`
   On tape pour avoir la limite de f′ en 3− :
   `limit(f1(x),x,3,-1)`
   On obtient :
   `-infinity`
3. f′ est continue et décroissante de +∞ à −∞ sur ]−∞;3[ puisque f″(x)<0 sur ]−∞;3[. Il existe donc α unique dans ]−∞;3[ tel que f′(α)=0.
   On tape pour avoir une valeur approchée de α :
   `assume(x<3);fsolve(f1(x),x)`
   On obtient :
   `x,0.776592890991`
   Puis, on tape pour enlever l’hypothèse sur x :
   `purge(x)`
   On tape :
   `f1(0.7)`
   On obtient :
   `0.0937786881525`
   On tape :
   `f1(0.8)`
   On obtient :
   `-0.0297244578175`
   On a f1(0.7)>0 et f1(0.8)<0 donc 0.7<α<0;8.
4. Puisque f″(7)=0, on tape pour avoir le minimum de f′ sur ]3;+∞[ :
   `f1(7)`
   On obtient :
   `ln(4)+2`
   Le minimum de f′ sur ]3;+∞[ est donc positif.
   Donc f′(x)>0 si x ∈ ]−∞;α[ ∪ ]3;+∞[ et f′(x)<0 si x ∈ ]α;3[.
   Donc f est croissante sur ]−∞;α[ ∪ ]3;+∞[ et est décroissante sur ]α;3[.
5. On cherche les limites de f en −∞, +∞, et en 3.
   On tape :
   `limit(f(x),x,-infinity)`
   On obtient :
   `-infinity`
   On tape :
   `limit(f(x),x,+infinity)`
   On obtient :
   `+infinity`
   On tape :
   `limit(f(x),x,3)`
   On obtient :
   `-infinity`
   On trace les graphes de f et des deux droites x=−1 et x=2, on tape :
   `plofunc(f(x),x);droite(x=1);droite(x=2)`
   On obtient le tracé du graphe de f et le tracé des droites x=−1 et x=2.
6. On tape pour trouver l’aire en cm2 :
   `integrate(f(x),x,-1,2)`
   On obtient :
   `8*ln(4)-12+15/4`
   On tape :
   `normal(8*ln(4)-12+15/4))`
   On obtient :
   `8*ln(4)-33/4`
   On tape si on veut faire l’intégration par parties :
   `ibpu((x+1)*ln(abs(x-3)),ln(abs(x-3)))`
   On obtient :
   `[((x^2)/2+x)*ln(abs(x-3)),(-x^2-2*x)/(2*x-6)]`
   On tape pour terminer l’intégration :
   `A:=ibpu([((x^2)/2+x)*ln(abs(x-3)),(-x^2-2*x)/(2*x-6)],0)`
   On obtient :
   `(-x^2-10*x)/4-15*1/2*ln(abs(x-3))+((x^2)/2+x)*ln(abs(x-3))`
   On tape :
   `preval(A,-1,2)`
   On obtient :
   `8*ln(4)-9/4-6)`
   On tape :
   `normal(8*ln(4)-9/4-6))`
   On obtient :
   `8*ln(4)-33/4`
   Donc l’aire cherchée vaut (8*ln(4)−33/4) cm2;

#### 7.1.2 Exercice 2

On considère la fonction f de ℝ dans ℝ définie par :

f(x)= |
exp(x)2−exp(x)+1
exp(x)3+exp(x)

1. Montrer que pour tout x ∈ ℝ, P(x)=x4−2x3+2x2+1 ≥ 1
2. Étudier les variations de f et tracer son graphe.
3. Trouver l’équation de la tangente au graphe au point d’abscisse x=0
4. Calculer ∫0x f(t)dt puis, limx−>+∞∫0x f(t)dt

Réponses

1. On tape :
   `factor(x^4-2x^3+2x^2)`
   On obtient :
   `(x^2+-2*x+2)*x^2`
   On tape :
   `canonical_form(x^2-2*x+2)`
   On obtient :
   `(x-1)^2+1`
   Donc pour tout x ∈ ℝ, x4−2x3+2x2=x2*(x−1)2+x2 ≥ 0
   donc pour tout x ∈ ℝ, P(x)=x4−2x3+2x2+1 ≥ 1
2. On tape pour calculer la valeur de la dérivée de f en un point :
   `normal(derive((exp(x)^2-exp(x)+1)/(exp(x)^3+exp(x)),x))`
   On obtient :
   `(-(exp(x))^4+2*(exp(x))^3-2*(exp(x))^2-1)/` `((exp(x))^5+2*(exp(x))^3+exp(x))`

   Le numérateur est négatif car il est égal à −P(exp(x)) et le dénominateur est strictement positif car il est égal à une somme de termes strictement positifs. La fonction f est donc décroissante.
   Pour chercher la limite de f en +∞, on tape :

   `limit((exp(x)^2-exp(x)+1)/(exp(x)^3+exp(x)),x=+infinity)`

   On obtient :

   `0`

   Pour chercher la limite de f en −∞, on tape :

   `limit((exp(x)^2-exp(x)+1)/(exp(x)^3+exp(x)),x=-infinity)`

   On obtient :

   `infinity`

   Pour tracer le graphe de f, on tape :

   `plotfunc(((exp(x))^2-exp(x)+1)/((exp(x))^3+exp(x)),x)`

   On obtient le graphe de f.

3. On définit la fonction f, on tape :
   `f(x):=(exp(x)^2-exp(x)+1)/(exp(x)^3+exp(x))`
   On calcule f(0), on tape :
   `f(0)`
   On obtient

   1
   2

   On définit la fonction df comme étant la dérivée de f, on tape :
   `df:=unapply(normal(diff(f(x),x)),x)`
   On calcule df(0), on tape :
   `df(0)`
   On obtient :

   − |
   1
   2

   L’équation de la tangente au point d’abscisse 0 est donc :
   y=df(0)*x+f(0) c’est à dire y=−1/2x+1/2.
   ou encore on tape :
   `equation(tangent(plotfunc(f(x)),0),[x,y])`
   On obtient :
   `y=(1/-2*x+1/2)y=(1/-2*x+1/2)`
4. On calcule l’intégrale : ∫0x f(t)dt
   On tape :
   `int(f(t),t,0,x)`
   On obtient :
   `(ln((exp(x))^2+1)*exp(x)+(-(2*x))*exp(x)+2*exp(x)-2)*` `1/2/exp(x)-1/2*ln(2)`
   Puis on calcule : limx−>+∞∫0x f(t)dt , on tape :
   `limit((ln((exp(x))^2+1)*exp(x)+(-(2*x))*exp(x)+2*exp(x)-2)` `*1/2/exp(x)-1/2*ln(2),x=+infinity)`
   On obtient :
   `-1/2*ln(2)+1`

### 7.2 Calcul de primitives (niveau début université)

1. Calculer

   ∫ |
   2
   1
   1
   x3+1
   | dx

   Réponse :
   On tape :
   `int(1/(x^3+1),x,1,2)`
   On obtient apres simplification (en utilisant `normal}`
   `(sqrt(3)*ln(2)+pi)*1/3/sqrt(3)`
   Pour vérifier, on tape :
   `partfrac(1/(1+t^3))`
   On obtient :
   `1/((t+1)*3)+(-1/3*t+2/3)/(t^2-t+1)`
   Puis on intègre chaque terme séparément...
2. Décomposer, sur ℝ, en éléments simples : t2/1−t4.
   Calculer ∫t2/1−t4dt et ∫sin(x)2/cos(2x)dx
   Réponse :
   On tape :
   `partfrac(t^2/(1-t^4))`
   On obtient :
   `-1/2/(t^2+1)+1/(4*(t+1))-1/4/(t-1)`
   On tape :
   `int(-1/2/(t^2+1)+1/(4*(t+1))-1/4/(t-1),t)`
   ou on tape :
   `int(t^2/(1-t^4),t)`
   On obtient :
   `1/(-2*atan(t))+1/(4*ln(abs(t+1)))+1/(-4*ln(abs(t-1)))`
   On tape :
   `normal(int(sin(x)^2/cos(2*x),x))`
   On obtient :
   `-1/2*x-1/-4*ln(abs((tan(1/2*x))^2-2*tan(1/2*x)-1))-` `1/4*ln(abs((tan(1/2*x))^2+2*tan(1/2*x)-1))`
   Ou on tape en linéarisant avant d’intégrer :
   `normal(int(tlin(sin(x)^2/cos(2*x))))`
   On obtient :
   `1/4*ln(abs(tan(x)+1))+1/-4*ln(abs(tan(x)-1))+1/-2*x`
   Ou encore on veut faire le changement de variable tan(x)=t et on tape pour avoir l’expression en fonction de la tangente, avant d’intégrer :
   `trigtan(texpand(sin(x)^2/cos(2x)))`
   On obtient :
   `(-((tan(x))^2))/((tan(x))^2-1)`
   On fait le changement de variable x=atan(t) on tape :
   `subst('integrate(-tan(x)^2/(tan(x)^2-1),x)',x=atan(t))`
   ou on tape
   `subst(Int(-tan(x)^2/(tan(x)^2-1),x),x=atan(t))`
   On obtient
   `integrate((-(t^2))/((1+t^2)*(t^2-1)),t)`
   Soit, le remplacant t par tan(x) :
   `1/-2*atan(tan(x))+1/4*ln(abs(tan(x)+1))+1/-4*ln(abs(tan(x)-1))`
3. Calculer ∫1/t2dt, ∫1/t(t2+1)dt, et ∫t2−t+1/t4+t2dt
   Réponse :
   On tape :
   `int(1/t^2,t)`
   On obtient :
   `1/(-t)`
   On tape :
   `int(1/(t*(t^2+1)),t)`
   On obtient :
   `1/-2*ln(t^2+1)+1/2*ln((abs(t))^2)`
   On tape :
   `int((t^2-t+1)/(t^2+t^4),t)`
   On obtient :
   `1/2*ln(t^2+1)-ln(abs(t))+(-t+1)/(-t)`

### 7.3 Dévelopements limités

1. Donner un développement limité à l’ordre 7 au voisinage de x=0 de :

   sin(sinh(x))−sinh(sin(x))

   Réponse :
   On tape :
   `series(sin(sinh(x))-sinh(sin(x)),x=0,7)`
   On obtient:
   `1/-45*x^7+x^8*order_size(x)`
2. Donner un développement limité à l’ordre 4 au voisinage de x=0 de :

   ln(cos(x))
   exp(x+x2)

   Réponse :
   On tape :
   `series(ln(cos(x))/exp(x+x^2),x=0,4)`
   On obtient :
   `1/-2*x^2+1/2*x^3+1/6*x^4+x^5*order\_size(x)`
   La fonction order_size est telle que, pour tout α>0, xαorder_size(x) tend vers 0 quand x tend vers 0

### 7.4 Équations différentielles

1. Trouver les solutions de l’équation différentielle :

   x(x2−1)y′+2y=0

   Réponse :
   On tape :
   `desolve(x*(x^2-1)*y'+2*y=0,y)`
   On obtient :
   `(c\_0*x^2)/(x^2-1)`
2. Trouver les solutions de l’équation différentielle :

   x(x2−1)y′+2y=x2

   Réponse :
   On tape :
   `desolve(x*(x^2-1)*y'+2*y=x^2,y)`
   On obtient :
   `((ln(abs(x))+c\_0)*x^2)/(x^2-1)`

### 7.5 Les matrices

1. Soit Ma=[

   2a−1 | a | 2a−1
   a2+a−2 | a2−1 | a−1
   a2+a−1 | a2+a−1 | a

   ]
   a) Pour quelles valeurs de a, Ma est-elle inversible ?
   Préciser son rang lorsqu’elle n’est pas inversible.
   b) Calculer l’inverse de M2

   Réponse :
   On tape :

   `M:=[[2a-1,a,2a-1],[a^2+a-2,a^2-1,a-1],[a^2+a-1,a^2+a-1,a]]`

   On calcule le déterminant de M, on tape :

   `det(M)`

   On obtient :

   `2*a^4+-2*a^3+-2*a^2+2*a`

   Pour avoir l’inverse de M on tape :

   `inv(M)`

   On obtient :

   1
   2a4−2a3−2a2+2a
   | ⎡ ⎢ ⎢ ⎣ |  |
   a−1 | 2a3+3a+1 | −2a3+a2+a−1
   −a2+1 | −2a3+a2+2a−1 | 2a3−a2−2a+1
   a3−2a+1 | −a3+2a−1 | a3−2a2+1
   |  | ⎤ ⎥ ⎥ ⎦

   On tape :

   `solve(2a^4-2*a^3-2*a^2+2*a,a)`

   On obtient :

   `[-1,0,1]`

   Donc la matrice est inversible si a ∉[−1,0,1]
   Ou on tape :

   `factor(2a^4-2*a^3-2*a^2+2*a)`

   On obtient :

   `2*(a+1)*a*(a-1)^2`

   On tape :

   `rank(subst(M,a,-1))`

   On obtient :

   `2`

   On tape :

   `rank(subst(M,a,0))`

   On obtient :

   `2`

   On tape :

   `rank(subst(M,a,1))`

   On obtient :

   `1`

   On tape :

   `inv(subst(M,a,2))`

   On obtient : A=1/12[

   1 | 11 | −7
   −3 | −9 | 9
   5 | −5 | 1

   ]
   Remarque : pour éviter de faire des substitutions on peut définir la matrice M comme une fonction de a, il faut alors écrire :

   `M(a):={[[2a-1,a,2a-1],[a^2+a-2,a^2-1,a-1],[a^2+a-1,a^2+a-1,a]]}`

   surtout ne pas oublier { et }.
   On peut alors taper : `inv(M(2))`.

2. Soit A=[

   1 | 1 | a
   1 | a | 1
   a | 1 | 1

   ]
   Pour quelles valeurs de a, A est-elle diagonalisable ?

   Réponse :
   On tape :

   `A:=[[1,1,a],[1,a,1],[a,1,1]]`

   Pour avoir les valeurs propres de A on tape :

   `egvl(A)`

   On obtient :

   `⎡ ⎢ ⎢ ⎣` | `` |
   `-a+1` | `0` | `0`
   `0` | `a+2` | `0`
   `0` | `0` | `a-1`
   | `` | `⎤ ⎥ ⎥ ⎦`

   ce qui s’écrit :

   `[[-a+1,0,0],[0,a+2,0],[0,0,a-1]]`

   Si a ≠ 1 il y a 3 valeurs propres distinctes −a+1,a+2,a−1 et
   si a=1 il y a une valeur propre double (λ=0) et une valeur propre simple (λ=3).
   Puis on cherche la matrice de passage, on tape :

   `egv(A)`

   On obtient :

   `⎡ ⎢ ⎢ ⎣` | `` |
   `-1` | `1` | `1`
   `0` | `1` | `-2`
   `-1` | `1` | `1`
   | `` | `⎤ ⎥ ⎥ ⎦`

   ce qui s’écrit :

   `[[1,1,1],[0,1,-2],[-1,1,1]]`

   les vecteurs propres sont les colonnes de cette matrice.
   Ou on tape pour avoir directement les deux informations, matrice de passage et réduite de Jordan :

   `jordan(A)`

   On obtient une liste de deux matrices [P,B] (P est la matrice de passage et B=P−1AP) :

   `⎡ ⎢ ⎢ ⎣` | `⎡ ⎢ ⎢ ⎣` | `` |
   `-1` | `1` | `1`
   `0` | `1` | `-2`
   `-1` | `1` | `1`
   | `` | `⎤ ⎥ ⎥ ⎦` | `` | `⎡ ⎢ ⎢ ⎣` |
   `-a+1` | `0` | `0`
   `0` | `a+2` | `0`
   `0` | `0` | `a-1`
   | `` | `⎤ ⎥ ⎥ ⎦` | `` | `⎤ ⎥ ⎥ ⎦`

   ce qui s’écrit :

   `[[[1,1,1],[0,1,-2],[-1,1,1]],[[-a+1,0,0],[0,a+2,0],[0,0,a-1]]]`

   On remarque qu’en faisant : `a:=1` puis `jordan(A)`
   les valeurs propres doubles sont regroupées et on obtient :

   `⎡ ⎢ ⎢ ⎣` | `⎡ ⎢ ⎢ ⎣` | `` |
   `1` | `-3` | `0`
   `1` | `0` | `-3`
   `1` | `3` | `3`
   | `` | `⎤ ⎥ ⎥ ⎦` | `` | `⎡ ⎢ ⎢ ⎣` |
   `3` | `0` | `0`
   `0` | `0` | `0`
   `0` | `0` | `0`
   | `` | `⎤ ⎥ ⎥ ⎦` | `` | `⎤ ⎥ ⎥ ⎦`

   ce qui s’écrit :

   `[[[1,-3,0],[1,0,-3],[1,3,3]],[[3,0,0],[0,0,0],[0,0,0]]]`

   A est donc diagonalisable quelque soit a et B=P−1AP.