Upload
valery-mbra
View
222
Download
0
Embed Size (px)
Citation preview
7/23/2019 %C9tude d%27une Fonction Sur Excel
http://slidepdf.com/reader/full/c9tude-d27une-fonction-sur-excel 1/6
Étude des valeurs d’une fonction sur EXCEL
1. Table des valeurs
Considérons la fonction f définie sur par
1)( 2+= x
x
x f .
On veut obtenir une table de valeurs de f ( x) lorsque x
décrit un intervalle donné.Commencer par remplir les premières cellules de lafeuille de calcul comme indiqué ci-contre :
1.1. Table de valeurs sans programmation
Définir un nom en utilisant la commande Insertion/Nom/Définir pour les cellules !1 !2 et !". On nommeraces cellules #min #ma$ et %as qui sont d&ailleurs proposées automatiquement par '$cel.
• Dans la cellule taper la formule : =Xmin
• Dans la cellule ! taper la formule : =Si(A8<>"";A8/(A8^2+1) ;""). Cette formule peut se
traduire par : * si la cellule est non vide alors ! contient1)(
2+ A
A et si elle est vide alors !
aussi +.
,l s&ait maintenant de construire la table des valeurs de )( x f lorsque x décrit l&intervalle #min #ma$/.
• Commencer par recopier la cellule ! vers le bas 0usqu& la cellule !1 (on prévoit lare). %lusieurs
mét3odes sont possibles pour cela par e$emple on sélectionne la 4one ! :!1 et on effectue lacommande Edition/Recopier/En bas dont le raccourci est Ctrl5!.
• Connaissant le pas et les bornes de l&intervalle de variation de x on peut calculer les valeurs de x en tapant
dans la cellule 6 la formule suivante : =SI(A8<>"";SI(A8+Pas<=Xmax;A8+Pas;"");"") qui
peut se traduire par :si (la cellule est non vide)
alors si (5%as#ma$)
alors 6 contient 5%assinon 6 est vide
sinon 6 est vide.
,l suffit alors de recopier vers le bas cette formule 0usqu& la cellule 1.
7ormalement tout fonctionne correctement : si on c3ane l&une des valeurs des cellules !1 !2 ou !" tout estrecalculé.
8e principal inconvénient est que la feuille de calcul ne fonctionne que pour la fonction f que nous avons définiedans la cellule ! et recopiée vers le bas. 9i nous voulons c3aner de fonction il faut retaper la formule de la
cellule ! et la recopier nouveau vers le bas 0usqu& la cellule !1.
utre inconvénient : il est impossible de prévoir le cas o la fonction ne serait pas définie (une division par 4éro par e$emple). Dans notre e$emple;a n&arrive pas car la fonction f est définie sur tout entier mais ce n&est pas
tou0ours le cas. 'nfin si on a une fonction plus compliquée définie par intervalles par e$emple il faudrait écrireune formule beaucoup plus compliquée<
8&idéal serait de pouvoir écrire dans la cellule ! une formule du enre = f(A8) o f serait une fonction
définie par l&utilisateur et facilement modifiable.
%our cela il faut prorammer la fonction f . 'n effet tout classeur '$cel peut contenir un nombre variable defeuilles de calcul certes mais aussi des feuilles de rap3iques et ce que l&on sait beaucoup moins des feuilles decode. Ces feuilles de code sont disposées dans des modules indépendants ou dans des feuilles de code associées
des feuilles de calcul.
"==>.doc %ae 1 sur ?
7/23/2019 %C9tude d%27une Fonction Sur Excel
http://slidepdf.com/reader/full/c9tude-d27une-fonction-sur-excel 2/6
1.. Table de valeurs associée ! une fonction définie par l"utilisateur.
ffic3er l&éditeur de code de visual basic en faisant lt5@11 (ou c3oisir #utils / $acro / %isual &asic Editor ) puis Insertion/$odule et taper le te$te de la colonne de auc3e :
'Macros o!r '#$!%& %'!n& fonc$ion'ac! %!n& $a& %& *a&!rs
!nc$ion f(x) ,n -rror .oo &rr&!r f = x / (x ^ 2 + 1) -xi$ !nc$ion &rr&!r0 f = "" &s!m& &x$-n% !nc$ion
Explicationso!$& i3n& 4!i comm&nc& ar !n& aos$ro5& &s$!n comm&n$air&6 &s 2 i3n&s n& son$ asoi3a$oir&s6
7#cara$ion %& a fonc$ion f Si !n& &rr&!r s& ro%!i$ a&r 9 &rr&!r 7#fini$ion %& a fonc$ion ,n 4!i$$& aors a fonc$ion
rai$&m&n$ %& &rr&!r :a fonc$ion f *a!$ aors !n& c5an& *i%& r&$o!r %! ro3ramm& ars ins$r!c$ion 4!i a ro*o4!# &rr&!r (r&$o!r 9 -xi$ f!nc$ion)in %& a fonc$ion
• Aevenir ensuite la feuille de calcul (lt5@11) et taper dans la cellule ! : =f(A8).
• Aecopier la cellule ! vers le bas 0usqu& la cellule !1
1.'. $odification de la fonction
Considérons maintenant la fonction f définie sur B1 1/ par : 21)( x x f −= . ,l
suffit de revenir la feuille de code (lt5@11) pour modifier la fonction précédente.8e te$te est maintenant :
!nc$ion f(x) ,n -rror .oo &rr&!r f = S4r(1 x ̂ 2) '(s4r = sq !ar&% roo$) -xi$ !nc$ion &rr&!r0 f = "" &s!m& &x$-n% !nc$ion
On revient la feuille de calculs et en tapant @6 on obtient le résultat ci-contre :
On peut remarquer que seules les cellules !1> !1 contiennent un résultat car cescellules correspondent au$ valeurs de x appartenant au domaine de définition de lafonction f .
Dans un cas comme celui-ci on a évidemment intért c3aner les valeurs de #minet de #ma$ ainsi que celle de %as.
Cependant le résultat n&est pas encore parfait comme en témoine la rille ci-contre :Dans cet e$emple on a c3oisi l&intervalle B12 12/ avec un pas éal 2. 8acellule 1> devrait normalement contenir E
Cette bi4arrerie s&e$plique par le fait que 2 n&est pas un nombre qui tombe 0uste
pour l&ordinateur (celui-ci travaille en base 2 et non pas en base 1 en interne). ,l en
résulte que 1 n&est certes pas nul mais éal B===11 × 1 B1F < ce qui est malré
tout très proc3e de .
%ar ailleurs il serait sou3aitable de formater les données en les arrondissant une
certaine précision. C&est ce que nous proposons dans la suite.
"==>.doc %ae 2 sur ?
7/23/2019 %C9tude d%27une Fonction Sur Excel
http://slidepdf.com/reader/full/c9tude-d27une-fonction-sur-excel 3/6
2. Afficher dans un format défini par lutilisateur
• Godifier la feuille de calcul en a0outant une line pour saisir le nombre de décimales :
• 7ommer la cellule !> avec le nom * n7#cima&s +
• Godifier la formule de la cellule 6 ainsi :
=SI(A8<>"";SI(A8+Pas<=Xmax;A,7I(A8+Pas;n7#cima&s);"");"")
• Aecopier la formule 6 0usqu& la cellule 1.
• Godifier la formule de la cellule ! ainsi :=SI(f(A8)="";"";A,7I(f(A8);n7#cima&s))
• Aecopier la formule ! 0usqu& la cellule !1.• @ormater les cellules F et !F en cadrant le te$te droite afin d&aliner les titres * $ + et * H + avec les
données numériques.
Ioici maintenant ce qu&on devrait obtenir (tou0ours avec la fonction f définie
sur B1 1/ par : 21)( x x f −= ) :
Comme on peut le voir les valeurs affic3ées sont arrondies avec " décimalesau ma$imum. 'n particulier la cellule !1" contient 6 car la valeur préciseest 6F6F6=6< et par conséquent la valeur arrondie " décimales est6. On peut reretter qu&'$cel n&affic3e pas les 4éros sinificatifs droite.
%our obtenir vraiment un affic3ae formaté avec " c3iffres derrière la virule
il faut utiliser la commande (ormat / cellules /
!. Cas dune fonction définie par morceau"
Godifier lJécriture de la fonction pour permettre lJétude de la fonction f définie par :
si x -1 : x
x x f
1)( −=
si x ) -1 et x 2 : ")(
2−=
x x f si x " : ")( −= x x f
"==>.doc %ae " sur ?
7/23/2019 %C9tude d%27une Fonction Sur Excel
http://slidepdf.com/reader/full/c9tude-d27une-fonction-sur-excel 4/6
Compléter la définition :!nc$ion f(x) ,n -rror .oo &rr&!r If x <= 1 5&n f = (x 1) / x If (x > 1) An% (x <= 2) 5&n f = x ? x @ 666
#. Calcul de la dérivée
0ouer une colonne permettant d&obtenir parallèlement la
table des valeurs de )( x f une table des valeurs de )( x f ′ .
%lusieurs solutions sont possibles mais toutes utilisent uneappro$imation pour calculer le nombre dérivé en un point x.
Ioici 2 e$emples d&appro$imations de )( x f ′ :
)( x f ′ ≈
1
)()1( x f x f −+
1
)=()=()(
−−+≈′
x f x f x f
%our définir la fonction dérivée on ne peut pas utiliser le nom
* f& +. On pourra donc l&appeler df.
Ioici comment on peut définir cette dérivée :
!nc$ion %f(x) 5 = 61 ,n -rror .oo &rr&!r %f = (f(x + 5) f(x 5)) / (2 ? 5) -xi$ !nc$ion &rr&!r0
%f = "" &s!m& &x$-n% !nc$ion
Comme on le voit la fonction df fait appel la fonction f.Donc si on c3ane la fonction f alors la dérivée est
automatiquement recalculée.Ci-contre on peut voir un e$emple o f est la fonction définie
par :1
)(2+
=
x
x x f .
$. %eprésentation &raphi'ue d’une fonction
%renons l&e$emple de la fonction définie par1
1)(
2+
=
x x f
sur l&intervalle B> >/
%our obtenir directement la courbe représentative de cette
fonction :
• 9électionner les cellules contenant les données $ et H
partir de la line
• Cliquer sur le bouton Kssistant rap3ique&
• C3oisir le modèle 7uaes de points
• C3oisir le sous modèle Kavec lissae sans marquae&• 7e pas a0outer de léende.
"==>.doc %ae > sur ?
7/23/2019 %C9tude d%27une Fonction Sur Excel
http://slidepdf.com/reader/full/c9tude-d27une-fonction-sur-excel 5/6
On obtient alors ceci :
8&inconvénient de ce procédé est que si on c3ane les bornes #min et #ma$ ou le pas le rap3ique ne couvre
pas forcément la totalité de la plae. 'n effet la plae sélectionnée correspondant au rap3ique est tou0ours lamme. %ar contre si on modifie la fonction le rap3ique est modifié en conséquence.
On peut obtenir un rap3ique qui s&a0uste automatiquement mais condition de le prorammer. Ioici commenton peut faire en a0outant une procédure rap3ique après la définition de la fonction dérivée :
ttention : bien respecter les fins de lines qui se terminent par " B" car ces 2 caractères sinifient que
l&instruction n&est pas terminée et se poursuit sur la line suivante.
S! .ra5i4!&() Xmin = &s(1 2) Xmax = &s(2 2) Pas = &s(@ 2)
Ac$i*&S5&&$65ar$,C&c$s67&&$& Ac$i*&S5&&$65ar$,C&c$s6A%%(2 @ @D 2D)6S&&c$ Ac$i*&5ar$65ar$EiFar% So!rc&0= B an3&(&s(8 1) &s(8 + (Xmax Xmin) / Pas 2)) B 3a&rG0=xXHSca$$&r orma$0= Po$JG0=xo!mns B ca$&3orGa&s0=1 s&ri&sa&s0= Kas:&3&n%0=as&-n% S!
%our lancer l&e$écution de ce rap3ique il faut effectuer la commande #utils/$acro/$acro * (lt5@) puiscliquer sur le bouton e$écuter. On peut éalement a0outer directement un bouton sur la feuille :- Commencer par faire Affic+age/&arres d"outils/(ormulaires
- @aire lisser le bouton de la nouvelle barre d&outils sur la feuille- C3aner le nom * !outon 1 + en * Lrap3ique +- ssocier ce bouton la procédure Lrap3ique.
Mn clic sur ce bouton suffit ensuite pour mettre 0our le rap3ique<
"==>.doc %ae = sur ?
7/23/2019 %C9tude d%27une Fonction Sur Excel
http://slidepdf.com/reader/full/c9tude-d27une-fonction-sur-excel 6/6
"==>.doc %ae ? sur ?