EXERCICE 1

>    restart:

En considérant la fonction f ,

>    f:=x->(-3+3^(1/2))/(3*3^(1/2)*x-2*3^(1/2)-3*x);

f := proc (x) options operator, arrow; (-3+3^(1/2))/(3*3^(1/2)*x-2*3^(1/2)-3*x) end proc

on a

>    u[n+1]=f(u[n]);

u[n+1] = (-3+3^(1/2))/(3*3^(1/2)*u[n]-2*3^(1/2)-3*u[n])

On nous demande de vérifier que la suite v[n]  est géométrique ...

A l'aide de la fonction g,

>    g:=x->(-1+sqrt(3)*x)/(x-1);

g := proc (x) options operator, arrow; (-1+sqrt(3)*x)/(x-1) end proc

on a

>    v[n+1]=g(u[n+1]);v[n]=g(u[n]);

v[n+1] = (-1+3^(1/2)*u[n+1])/(u[n+1]-1)

v[n] = (-1+3^(1/2)*u[n])/(u[n]-1)

On manipule alors l'équation v[n+1] = g(u[n+1])  qui équivaut successivement à v[n+1] = g(f(u[n]))  puis à v[n+1] = g(f(h(v[n])))  où h est la fonction réciproque de fonction g, si celle-ci existe ... pour obtenir v[n+1]  en fonction v[n] .

On recherche la fonction réciproque de la fonction g :

>    solve(g(x)=y,x);

(-1+y)/(-3^(1/2)+y)

et donc

>    h:=y->(-1+y)/(-3^(1/2)+y);

h := proc (y) options operator, arrow; (y-1)/(-3^(1/2)+y) end proc

puis il ne reste plus qu'à simplifier l'expression g(f(h(v[n])))  pour obtenir v[n+1]  ...

>    simplify(g(f(h(v[n]))));

-1/3*v[n]*(-3+3^(1/2))/(-1+3^(1/2))

>    evalf(-1/3*v[n]*(-3+3^(1/2))/(-1+3^(1/2)));

.5773502686*v[n]

Ainsi, v[n+1] = -(-3+sqrt(3))/(3*(-1+sqrt(3)))*v[n]  et la suite v[n]  est arithmétique de raison -(-3+sqrt(3))/(3*(-1+sqrt(3))) . Remarque : 1/sqrt(3)  est une autre expression de cette raison. On obtient ainsi

>    v[n]:=(-1/3*(-3+3^(1/2))/(-1+3^(1/2)))^n*v[0];

v[n] := (-1/3*(-3+3^(1/2))/(-1+3^(1/2)))^n*v[0]

puis

>    u[n]:=simplify(h(v[n]));

u[n] := ((1-1/3*3^(1/2))^n*v[0]-(-1+3^(1/2))^n)/(-3^(1/2)*(-1+3^(1/2))^n+(1-1/3*3^(1/2))^n*v[0])

Conclusion : la suite v[n]  est convergente (sa limite est nulle) et la suite u[n]  est convergente (sa limite est 1/sqrt(3) ).

Remarque : vous aurez reconnu l'exercice 6 de la séance 1.

EXERCICE 2

>    restart:

Warning, the protected name order has been redefined and unprotected

Il s'agit ici de chercher dans l'ensemble {100, 101, 102, ..., 999} ceux qui sont abondants (on les dénombre avec le compteur a ) et ceux qui sont déficients (on les dénombre avec le compteur d ). Remarque : les nombres qui ne sont ni abondants, ni déficients sont parfaits.

>    f := x->-exp(-x)+2*exp(x);
solve(f(x)=y,x);

f := proc (x) options operator, arrow; -exp(-x)+2*exp(x) end proc

-ln(-1/2*y+1/2*(y^2+8)^(1/2)), -ln(-1/2*y-1/2*(y^2+8)^(1/2))

La bijection réciproque est donc g := proc (y) options operator, arrow; -ln(-y/2+sqrt(y^2+8)/2) end proc , car la quantité -1/2*y-1/2*(y^2+8)^(1/2)  étant toujours négative, son logarithme népérien n'est pas réel.

>    g:=y->-ln(-y/2+sqrt(y^2+8)/2);
plot({f(x),g(x),x},x=-1..1);

g := proc (y) options operator, arrow; -ln(-1/2*y+1/2*sqrt(y^2+8)) end proc

[Maple Plot]

Ainsi, le nombre de nombres abondants entre 100 et 999 est 224 et le nombre de nombres déficients entre 100 et 999 est 675. Remarque : il n'existe pas de nombre parfait de trois chiffres.

EXERCICE 3

>    restart:with(numtheory):

Warning, the protected name order has been redefined and unprotected

Il s'agit ici de chercher dans l'ensemble {100, 101, 102, ..., 999} le plus grand nombre à trois chiffres dont la somme des diviseurs soit un nombre premier. On peut créer la liste L des nombres de l'ensemble {100, 101, 102, ..., 999} dont la somme des diviseurs est un nombre premier :

>    L:=NULL:
for i from 100 to 999 do
if isprime(sigma(i)) then L:=L,i fi;
od;
L;

289, 729

Ainsi, le plus grand nombre à trois chiffres dont la somme des diviseurs est un nombre premier est 729.

EXERCICE 4

>    restart:

>    x:=t->2*t+1/t;y:=t->t+1+1/(t+1);

x := proc (t) options operator, arrow; 2*t+1/t end proc

y := proc (t) options operator, arrow; t+1+1/(t+1) end proc

x est définie pour t distinct de 0 et y est définie pour t distinct de 1. Il suffit donc de faire des juxtapositions de tracés ne comportant pas les points t=0 et t=-1.

>    plot({[x(t),y(t),t=-5..-1.1],[x(t),y(t),t=-0.9..-0.1],[x(t),y(t),t=0.1..5]});

[Maple Plot]

Recherche des tangentes verticales d'abord puis horizontales après ...

>    solve(diff(x(t),t)=0,t);
solve(diff(y(t),t)=0,t);

1/2*2^(1/2), -1/2*2^(1/2)

0, -2

Points où la tangente est verticale ...

>    simplify([x(1/2*2^(1/2)),y(1/2*2^(1/2))]);simplify([x(-1/2*2^(1/2)),y(-1/2*2^(1/2))]);

[2*2^(1/2), (5+2*2^(1/2))/(2^(1/2)+2)]

[-2*2^(1/2), (-5+2*2^(1/2))/(2^(1/2)-2)]

Point où la tangente est horizontale ...

>    [x(-2),y(-2)];

[-9/2, -2]

Que se passe-t-il en t=0 ?

>    limit(x(t),t=0,left);limit(x(t),t=0,right);limit(y(t),t=0);

-infinity

infinity

2

La droite d'équation y=2 est donc asymptote à la courbe.

Que se passe-t-il en t=-1 ?

>    limit(x(t),t=-1);limit(y(t),t=-1,left);limit(y(t),t=-1,right);

-3

-infinity

infinity

La droite d'équation x=-3 est donc asymptote à la courbe.

Que se passe-t-il en t = infinity  ?

>    limit(x(t),t=infinity);limit(y(t),t=infinity);

infinity

infinity

Branche infinie, on recherche à préciser le comportement ...

>    limit(y(t)/x(t),t=infinity);limit(y(t)-x(t)/2,t=infinity);

1/2

1

La droite d'équation y=x/2+1 est donc asymptote à la courbe.

Que se passe-t-il en t = -infinity  ?

>    limit(x(t),t=-infinity);limit(y(t),t=-infinity);

-infinity

-infinity

Branche infinie, on recherche à préciser le comportement ...

>    limit(y(t)/x(t),t=-infinity);limit(y(t)-x(t)/2,t=-infinity);

1/2

1

La droite d'équation y=x/2+1 est donc asymptote à la courbe.

Un nouveau tracé avec les asymptotes ...

>    plot({[x(t),y(t),t=-5..-1.1],[x(t),y(t),t=-0.9..-0.1],[x(t),y(t),t=0.1..5],[-3,t,t=-10..10],[t,2,t=-10..10],[t,t/2+1,t=-10..10]});

[Maple Plot]

>    Fin (Philippe RYCKELYNCK & Denis VEKEMANS)

Error, missing operator or `;`