Différences entre versions de « Commande Si »

De GeoGebra Manual
Aller à : navigation, rechercher
(Si et dérivation)
 
(13 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
<noinclude>{{Manual Page|version=4.0}}</noinclude>{{command|logical|Si}}
+
<noinclude>{{Manual Page|version=6.0}}</noinclude>{{command|logical|Si}}
;Si[ <Condition>, <Objet> ]
+
;Si( <Condition>, <Objet> )
 
: retourne une copie de l’objet si la condition prend la valeur ''true'' (vrai), et un objet non défini si elle prend la valeur ''false'' (faux).
 
: retourne une copie de l’objet si la condition prend la valeur ''true'' (vrai), et un objet non défini si elle prend la valeur ''false'' (faux).
;Si[ <Condition>, <Objet ''a''>, <Objet ''b''> ]
+
;Si( <Condition>, <Objet ''a''>, <Objet ''b''> )
 
: retourne une copie de l’objet ''a''  si la condition prend la valeur  ''true'' (vrai), et une copie de l’objet ''b'' si elle prend la valeur ''false'' (faux).
 
: retourne une copie de l’objet ''a''  si la condition prend la valeur  ''true'' (vrai), et une copie de l’objet ''b'' si elle prend la valeur ''false'' (faux).
 +
:{{exemple|1= Soit ''n'' un naturel. <code><nowiki>Si(n==3, x + y = 4, x - y = 4)</nowiki></code> retourne la droite dont une équation est ''x'' + ''y'' = 4 lorsque ''n'' = 3, et la droite dont une équation est ''x'' - ''y'' = 4 pour toutes les valeurs de ''n'' différentes de 3.}}
  
 +
; Si( <Condition 1>, <Alors 1>, <Condition 2>, <Alors 2>, ... , <Sinon (optionnel)> )
 +
: retourne une copie de l’objet "Alors 1" si la première condition est réalisée, de "Alors 2" si la deuxième condition est réalisée etc.
 +
Si aucune des conditions n'est réalisée et qu'un "Sinon" est précisé, la commande retourne une copie de l’objet "Sinon".
 +
Sinon "non défini" est retourné.
  
{{warning|Les deux objets doivent être du même type.}}
+
:{{exemple| 1=<code>Si(a ≟ 1, "Yvan", a ≟ 2,"Boris", a ≟ 3, "Marie", "Moi")</code>
 +
::Si ''a''=1 la commande retourne le texte "Yvan", pour ''a''=2' elle retourne "Boris", pour ''a''=3 "Marie" et pour toutes les autres valeurs de ''a'' elle retourne "Moi".}}
 +
 +
 
 +
{{warning|Les objets doivent être du même type.}}
  
  
 
===Fonctions conditionnelles ===
 
===Fonctions conditionnelles ===
  
La commande '''Si''' peut être utilisée pour créer des fonctions conditionnelles. Ces fonctions peuvent être utilisées comme argument dans toute commande agissant sur une fonction, telle que [[Commande Dérivée|Dérivée]], [[Commande Intégrale|Intégrale]], et [[Commande Intersection|Intersection]].
+
La commande '''Si''' ou des booléens peuvent être utilisés pour créer des fonctions conditionnelles.  
 +
L'affichage dans Algèbre étant, en général, plus conventionnel, lors de l'utilisation de '''Si'''
 +
Ces fonctions peuvent être utilisées comme argument dans toute commande agissant sur une fonction, telle que [[Commande Dérivée|Dérivée]], [[Commande Intégrale|Intégrale]], et [[Commande Intersection|Intersection]].
  
{{Example|1=<div>  
+
{{Exemples|1=<div>  
* <code>f(x) = Si[x < 3, sin(x), x^2]</code> retourne la fonction valant ''sin(x)'' pour ''x < 3'' et ''x<sup>2</sup>'' pour ''x ≥ 3''
+
* <code>f(x) = S(x < 3, sin(x), x^2)</code> ou <code>f(x) = (x < 3) sin(x) +(x>=3) x^2 </code> retourne la fonction valant ''sin(x)'' pour ''x < 3'' et ''x<sup>2</sup>'' pour ''x ≥ 3''
* <code>f(x) = Si[x < 3 ∧ x>0, x^3]</code> retourne la fonction valant ''sin(x)'' pour x entre 0 et 3 et non définie pour  ''x ≥ 3'' ou ''x 0''.</div>}}
+
La première syntaxe provoquant l'affichage <math>f(x)  = \left\{\begin{matrix} sin( x ) \space\space : \space x < 3\\ x^{2}\space\space\space\space\space\space\space\space\space\space : \space \text{sinon} \end{matrix}\right. </math> dans Algèbre.
 +
* <code>g(x) = Si(0 < x ∧ x<3, x^3)</code>  retourne la fonction valant ''x<sup>3</sup>'' pour x entre 0 et 3 et non définie pour  ''x ≤ 0'' ou ''x ≥ 3'', avec pour affichage dans ''Algèbre'' : x³ ((0  <  x) (x <  3)), <br/>'''MAIS''' si vous validez cette écriture dans ''Saisie'',  vous obtenez la fonction valant ''x<sup>3</sup>'' pour x entre 0 et 3 et '''NULLE''' pour  ''x ≤ 0'' ou ''x ≥ 3'', <br/>une syntaxe plus simple <code>g(x) = x^3, 0 < x <3</code> retournant la fonction valant ''x<sup>3</sup>'' pour x entre 0 et 3 et non définie pour  ''x ≤ 0'' ou ''x ≥ 3'', avec pour affichage dans ''Algèbre'' : x³, (0  <  x <  3)
 +
** à ne pas confondre avec <code>g(x) = x^3 (0 < x <3)</code> avec pour affichage dans ''Algèbre'' : x³  (0  <  x <  3), vous obtenez la fonction valant ''x<sup>3</sup>'' pour x entre 0 et 3 et '''NULLE''' pour  ''x ≤ 0'' ou ''x ≥ 3''
 +
* <code>h(x) = Si(-1  <  x  <  0, x³ + 1, 0  <  x  <  2, 1 - x, x² - 5)</code>  ou <code>  (-1<x<0)(x^3+1)+(0<x<2)(1-x)+!(-1<x<2)(x^2-5)</code> retourne la fonction valant <math>x² - 5</math>, sauf entre -1 et 0, où elle vaut <math>x^{3} +1</math>, et entre 0 et 2, où elle vaut <math>1-x</math>.
 +
La première syntaxe provoquant l'affichage <math>h(x)  = \left\{\begin{matrix} x^{3} + 1 \space\space\space\space:\space\space -1  <  x  <  0\\ 1 - x\space : \space\space 0 <  x  <  2\\ x^{2} - 5\space\space : \space\space\text{sinon} \end{matrix}\right. </math> dans Algèbre. 
 +
<small>''(Le rendu LaTeX n'est pas génial dans le wiki)''</small>
 +
* <code>u(x) = Si(x < 2, x², x < 5, x, x < 6, (-x) / 7)</code> correspond à <math>h(x)  = \left\{\begin{matrix} x² \space\space\space\space:\space\space  x  <  2\\x\space\space\space\space : \space\space  x  <  5\\  - \frac{x}{7}\space\space : \space\space x < 6 \end{matrix}\right. </math> dans Algèbre
 +
 
 +
</div>}}
 
{{note|Voir section: [[Valeurs booléennes]] pour les symboles utilisés dans les écritures de conditions.}}
 
{{note|Voir section: [[Valeurs booléennes]] pour les symboles utilisés dans les écritures de conditions.}}
  
  
{{Attention| '''Dérivée[Si[condition, f(x), g(x)]]''' donne '''Si[condition, f'(x), g'(x)]'''.
+
{{Attention| '''Dérivée(Si(condition, f(x), g(x)))''' donne '''Si(condition, f'(x), g'(x))'''.<br/>
  
 
Il n'y a pas pour l'instant d'évaluation "propre" des limites au niveau du point "critique".}}
 
Il n'y a pas pour l'instant d'évaluation "propre" des limites au niveau du point "critique".}}
Ligne 25 : Ligne 44 :
 
== La commande '''Si'''  dans les Scripts==
 
== La commande '''Si'''  dans les Scripts==
  
Dans de nombreux langages de programmation, '''Si''' signifie ''si la condition est vraie fait ceci; sinon fait cela''.
+
La commande Si peut être utilisée dans les scripts pour accomplir différentes actions sous certaines conditions.
 
 
Dans GeoGebra les arguments de '''Si''' ne sont pas des commandes, mais des valeurs, dont une devient la valeur du résultat.
 
 
 
Par conséquent, si vous désirez par exemple que ''b'' prenne la valeur 2 si la condition ''a > 2 '' est réalisée, la méthode correcte pour ce faire est <code>SoitValeur[b,Si[a>2,2,b]]</code>. Toute autre manière d'imbriquer SoitValeur et Si est incorrecte.
 
 
 
 
 
==Calcul formel==
 
 
 
;Si[ <Condition>, <Objet> ]
 
: retourne une copie de l’objet si la condition prend la valeur ''true'' (vrai), et un objet non défini si elle prend la valeur ''false'' (faux).
 
;Si[ <Condition>, <Objet ''a''>, <Objet ''b''> ]
 
: retourne une copie de l’objet ''a''  si la condition prend la valeur  ''true'' (vrai), et une copie de l’objet ''b'' si elle prend la valeur ''false'' (faux).
 
  
 +
{{exemple|1= soit le nombre ''n'' et le point ''A''. La commande <code>Si(Reste(n, 7) == 0, SoitCoordonnées(A, n, 0), SoitCoordonnées(A, n, 1))</code> modifie les coordonnées du point ''A'' selon la condition donnée. Dans ce cas il est plus simple d'utiliser  <code> SoitCoordonnées(A, n,Si(Reste(n, 7) == 0,0,1))</code>.
 +
}}
 +
Notez que les arguments de Si doivent être des objets ou des  [[Commandes_Scripts]], et non des affectations. <br/>La syntaxe <code>b=Si(a>1,2,3)</code> est correcte, mais b=2 ou b=3 ne seront acceptés comme paramètres.
  
--[[Utilisateur:Noel Lambert|Noel Lambert]] 25 septembre 2011 à 15:07 (CEST)
+
{{CASok}}

Version actuelle datée du 11 décembre 2017 à 18:31

Si( <Condition>, <Objet> )
retourne une copie de l’objet si la condition prend la valeur true (vrai), et un objet non défini si elle prend la valeur false (faux).
Si( <Condition>, <Objet a>, <Objet b> )
retourne une copie de l’objet a si la condition prend la valeur true (vrai), et une copie de l’objet b si elle prend la valeur false (faux).
Exemple : Soit n un naturel. Si(n==3, x + y = 4, x - y = 4) retourne la droite dont une équation est x + y = 4 lorsque n = 3, et la droite dont une équation est x - y = 4 pour toutes les valeurs de n différentes de 3.
Si( <Condition 1>, <Alors 1>, <Condition 2>, <Alors 2>, ... , <Sinon (optionnel)> )
retourne une copie de l’objet "Alors 1" si la première condition est réalisée, de "Alors 2" si la deuxième condition est réalisée etc.

Si aucune des conditions n'est réalisée et qu'un "Sinon" est précisé, la commande retourne une copie de l’objet "Sinon". Sinon "non défini" est retourné.

Exemple : Si(a ≟ 1, "Yvan", a ≟ 2,"Boris", a ≟ 3, "Marie", "Moi")
Si a=1 la commande retourne le texte "Yvan", pour a=2' elle retourne "Boris", pour a=3 "Marie" et pour toutes les autres valeurs de a elle retourne "Moi".


Attention Attention: Les objets doivent être du même type.


Fonctions conditionnelles

La commande Si ou des booléens peuvent être utilisés pour créer des fonctions conditionnelles. L'affichage dans Algèbre étant, en général, plus conventionnel, lors de l'utilisation de Si Ces fonctions peuvent être utilisées comme argument dans toute commande agissant sur une fonction, telle que Dérivée, Intégrale, et Intersection.

Exemples :
  • f(x) = S(x < 3, sin(x), x^2) ou f(x) = (x < 3) sin(x) +(x>=3) x^2 retourne la fonction valant sin(x) pour x < 3 et x2 pour x ≥ 3

La première syntaxe provoquant l'affichage f(x) = \left\{\begin{matrix} sin( x ) \space\space : \space x < 3\\ x^{2}\space\space\space\space\space\space\space\space\space\space : \space \text{sinon} \end{matrix}\right. dans Algèbre.

  • g(x) = Si(0 < x ∧ x<3, x^3) retourne la fonction valant x3 pour x entre 0 et 3 et non définie pour x ≤ 0 ou x ≥ 3, avec pour affichage dans Algèbre : x³ ((0 < x) ∧ (x < 3)),
    MAIS si vous validez cette écriture dans Saisie, vous obtenez la fonction valant x3 pour x entre 0 et 3 et NULLE pour x ≤ 0 ou x ≥ 3,
    une syntaxe plus simple g(x) = x^3, 0 < x <3 retournant la fonction valant x3 pour x entre 0 et 3 et non définie pour x ≤ 0 ou x ≥ 3, avec pour affichage dans Algèbre : x³, (0 < x < 3)
    • à ne pas confondre avec g(x) = x^3 (0 < x <3) avec pour affichage dans Algèbre : x³ (0 < x < 3), vous obtenez la fonction valant x3 pour x entre 0 et 3 et NULLE pour x ≤ 0 ou x ≥ 3
  • h(x) = Si(-1 < x < 0, x³ + 1, 0 < x < 2, 1 - x, x² - 5) ou (-1<x<0)(x^3+1)+(0<x<2)(1-x)+!(-1<x<2)(x^2-5) retourne la fonction valant x² - 5, sauf entre -1 et 0, où elle vaut x^{3} +1, et entre 0 et 2, où elle vaut 1-x.

La première syntaxe provoquant l'affichage h(x) = \left\{\begin{matrix} x^{3} + 1 \space\space\space\space:\space\space -1 < x < 0\\ 1 - x\space : \space\space 0 < x < 2\\ x^{2} - 5\space\space : \space\space\text{sinon} \end{matrix}\right. dans Algèbre. (Le rendu LaTeX n'est pas génial dans le wiki)

  • u(x) = Si(x < 2, x², x < 5, x, x < 6, (-x) / 7) correspond à h(x) = \left\{\begin{matrix} x² \space\space\space\space:\space\space x < 2\\x\space\space\space\space : \space\space x < 5\\ - \frac{x}{7}\space\space : \space\space x < 6 \end{matrix}\right. dans Algèbre
Note : Voir section: Valeurs booléennes pour les symboles utilisés dans les écritures de conditions.



La commande Si dans les Scripts

La commande Si peut être utilisée dans les scripts pour accomplir différentes actions sous certaines conditions.

Exemple : soit le nombre n et le point A. La commande Si(Reste(n, 7) == 0, SoitCoordonnées(A, n, 0), SoitCoordonnées(A, n, 1)) modifie les coordonnées du point A selon la condition donnée. Dans ce cas il est plus simple d'utiliser SoitCoordonnées(A, n,Si(Reste(n, 7) == 0,0,1)).

Notez que les arguments de Si doivent être des objets ou des Commandes_Scripts, et non des affectations.
La syntaxe b=Si(a>1,2,3) est correcte, mais b=2 ou b=3 ne seront acceptés comme paramètres.


____________________________________________________________

Menu view cas.svg Calcul formel :

Cette commande fonctionne à l'identique dans la fenêtre Calcul formel


© 2024 International GeoGebra Institute