« Mathc gnuplot/Pointeurs de fonctions » : différence entre les versions
Contenu supprimé Contenu ajouté
Automatique : Ajout de la navigation entre les chapitres |
Reformattage : moins de liste, déplacement d'explication de code en commentaire dans le code |
||
Ligne 8 :
== Préambule ==
▲* En langage C, le nom d'une fonction est un pointeur.
▲* On peut l'utiliser comme '''argument''' dans l'appel d'une fonction.
▲* Exemple : G_plot(f); (f() étant une fonction)
▲* Le pointeur de fonction doit avoir la même forme que sa fonction.
* Pour la fonction f :
Ligne 22 ⟶ 19 :
double (*P_f)(double x)
</source>
* Pour la fonction g :
Ligne 31 ⟶ 27 :
* Pour la fonction f :
<source lang="c">
</source>
* Pour la fonction g :
<source lang="c">
((*P_g)(a,b)) /* corresponds à un appel de fonction de forme g(a,b). */
</source>
*
▲* ((*P_g)(a,b)) Corresponds à un appel de fonction de forme g(a,b).
▲* Important :
▲** f et g sont des pointeurs.
▲** f() et g() sont des fonctions.
▲** P_f c'est le pointeur.
▲** ((*P_f)()) c'est un appel à une fonction.
== Exemples graphiques (avec Gnuplot) ==
=== Dessiner deux fonctions successivement ===
<source lang="c">
Ligne 110 ⟶ 95 :
=== Solution pour le chapitre précédent ===
* La fonction G_plot() dessine la fonction (data) et la chaîne de caractères...▼
<source lang="c">
Ligne 163 ⟶ 147 :
return 0;
}
</source>
Résultat après le premier appel de G_plot():
Ligne 184 ⟶ 166 :
== Exemple numérique ==
=== Les fonctions f‘ et f‘‘ ===
<source lang="c">
Ligne 260 ⟶ 241 :
Résultat
f(2.000) = 4.000
Ligne 275 ⟶ 256 :
=== La fonction FoG ===
* La même fonction peut calculer gof, fog et fof...▼
<source lang="c">
Ligne 322 ⟶ 303 :
</source>
▲Résultat ;
f : x-> x**2
|