If Command

From GeoGebra Manual
Jump to: navigation, search


If[ <Condition>, <Then> ]
Yields a copy of the object Then if the condition evaluates to true, and an undefined object if it evaluates to false.
Examples:
  • Let n = 3. If[n==3, x + y = 4] yields line x + y = 4, because the condition on number n is met.
  • Let n = 4. If[n==3, x + y = 4] creates an undefined object, because the condition on number n is not met .
If[ <Condition>, <Then>, <Else> ]
Yields a copy of object Then if the condition evaluates to true, and a copy of object Else if it evaluates to false. Both objects must be of the same type.
Example: Let n be a number. If[n==3, x + y = 4, x - y = 4] yields line x + y = 4 when n = 3, and line x - y = 4 for all n not equal to 3.


Conditional Functions

The If command can be used to create conditional functions. Such conditional functions may be used as arguments in any command that takes a function argument, such as Derivative, Integral, and Intersect.
Examples:
  • f(x) = If[x < 3, sin(x), x^2] yields a piecewise function that equals sin(x) for x < 3 and x2 for x ≥ 3.
  • f(x) = If[0 <= x <= 3, sin(x)] yields a function that equals sin(x) for x between 0 and 3 (and undefined otherwise).
  • f(x) =If[x<-1,x²,-1<=x<=1,1,-x²+2] yields a function that equals x2 for "x < -1", and 1 for x between -1 and 1 and - x2 + 2 otherwise).
Note: A shorter syntax for this is f(x) = sin(x), 0 <= x <= 3
Notes:
  • Derivative of If[condition, f(x), g(x)] gives If[condition, f'(x), g'(x)]. It does not do any evaluation of limits at the critical points.
  • See section: Boolean values for the symbols used in conditional statements.

If Command in Scripting

If command can be used in scripts to perform different actions under certain conditions.
Example: Let n be a number, and A a point. The command If[Mod[n, 7] == 0, SetCoords[A, n, 0], SetCoords[A, n, 1]] modifies the coordinates of point A according to the given condition. In this case it would be easier to use SetCoords[A, n, If[Mod[n, 7] == 0,0,1]].
Note: Arguments of If must be Objects or Scripting Commands, not assignments. Syntax b = If[a > 1, 2, 3] is correct, but b = 2 or b = 3 would not be accepted as parameters of If.
© 2024 International GeoGebra Institute