--- loncom/html/adm/help/tex/Problem_LON-CAPA_Functions.tex 2005/06/01 21:55:28 1.6
+++ loncom/html/adm/help/tex/Problem_LON-CAPA_Functions.tex 2008/03/20 16:59:13 1.13
@@ -48,15 +48,29 @@ erf = 2/sqrt(pi) integral (0,x) et-sq an
\&format(\$x,'nn') & Display or format \$x as nn where nn is nF or nE or nS and n is an integer. \\
\hline
-\&prettyprint(\$x,'nn','optional target') &Display or format \$x as nn where nn is nF or nE or nS and n is an integer. Also supports the first character being a \$, it then will format the result with a a call to \&dollarformat() described below. If the first character is a , it will format it with commas grouping the thousands. In S mode it will fromat the number to the specified number of significant figures and display it in F mode. In E mode it will attempt to generate a pretty x10\^{}3 rather than a E3 following the number, the 'optional target' argument is optional but can be used to force \&prettyprint to generate either 'tex' output, or 'web' output, most people do not need to specify this argument and can leave it blank.\\
+\&prettyprint(\$x,'nn','optional target') & Note that that tag $<$num$>$ can be used to do the same thing. Display or format \$x as nn where nn is nF or nE or nS and n is an integer. Also supports the first character being a \$, it then will format the result with a a call to \&dollarformat() described below. If the first character is a , it will format it with commas grouping the thousands. In S mode it will fromat the number to the specified number of significant figures and display it in F mode. In E mode it will attempt to generate a pretty x10\^{}3 rather than a E3 following the number, the 'optional target' argument is optional but can be used to force \&prettyprint to generate either 'tex' output, or 'web' output, most people do not need to specify this argument and can leave it blank.\\
\hline
\&dollarformat(\$x,'optional target') & Reformats \$x to have a \$ (or $\backslash$\$ if in tex mode) and to have , grouping thousands. The 'optional target' argument is optional but can be used to force \&prettyprint to generate either 'tex' output, or 'web' output, most people do not need to specify this argument and can leave it blank.\\
\hline
-
+
+\parbox{6.49cm}{
+Option 1 - \$best = \&languages() \\
+Option 2 - @all = \&languages() \\
+Option 3 - \$best = \&languages($\backslash$@desired\_languages) \\
+Option 4 - @all = \&languages($\backslash$@desired\_languages) \\
+}& Returns the best language to use, in the first two options returns the languages codes in the preference order of the user. In the second two examples returns the best matches from a list of desired language possibilities. \\
+\hline
+
\&roundto(\$x,\$n) & Rounds a real number to n decimal points. \$x and \$n can be pure numbers \\
\hline
+\&cas(\$s,\$e)&Evaluates the expression \$e inside the symbolic algebra system \$s. Currently, only the Maxima symbolic math system is implemented. Example: \&cas('maxima','6*7')\\
+\hline
+
+\&implicit_multiplication(\$f)&Adds mathematical multiplication operators to the formula expression \$f where only implicit multiplication is used. Example: \&implicit_multiplication('2(b+3c)') returns 2*(b+3*c) \\
+\hline
+
\&web(``a'',''b'',''c'') or \&web(\$a,\$b,\$c) & Returns either a, b or c depending on the output medium. a is for plain ASCII, b for tex output and c for html output \\
\hline
@@ -85,7 +99,7 @@ Option 1 - \&map(\$seed,[$\backslash$\$w
\$b='B'\\
\$c='B'\\
\$d='B'\\
- \$w, \$x, \$y, and \$z are variables } & Assigns to the variables \$w, \$x, \$y and \$z the values of the \$a, \$b, \$c and \$c (A, B, C and D). The precise value for \$w .. depends on the seed. (Option 1 of calling map). In option 2, the values of \$a, \$b .. are mapped into the array, @mappedArray. The two options illustrate the different grouping. Options 3 and 4 give a consistent way (with other functions) of mapping the items. For each option, the group can be passed as an array, for example, [\$a,\$b,\$c,\$d] =$>$ $\backslash$@a. And Option 5 is the same as option 4 the array of results are saved into a signle array rather than an array opf scalar variables.\\
+ \$w, \$x, \$y, and \$z are variables } & Assigns to the variables \$w, \$x, \$y and \$z the values of the \$a, \$b, \$c and \$c (A, B, C and D). The precise value for \$w .. depends on the seed. (Option 1 of calling map). In option 2, the values of \$a, \$b .. are mapped into the array, @mappedArray. The two options illustrate the different grouping. Options 3 and 4 give a consistent way (with other functions) of mapping the items. For each option, the group can be passed as an array, for example, [\$a,\$b,\$c,\$d] =$>$ $\backslash$@a. And Option 5 is the same as option 4, where the array of results is saved into a single array rather than an array of scalar variables.\\
\hline
\parbox{6.49cm}{Option 1 - \&rmap(\$seed,[$\backslash$\$w,$\backslash$\$x,$\backslash$\$y,$\backslash$\$z],[\$a,\$b,\$c,\$d]) or \\
@@ -100,7 +114,7 @@ Option 1 - \&map(\$seed,[$\backslash$\$w
\$w, \$x, \$y, and \$z are variables } & The rmap functions does the reverse action of map if the same seed is used in calling map and rmap. \\
\hline
-\$a=\&xmlparse(\$string) & Runs the internal parser over the argument parsing for display. \textbf{Warning}
+\$a=\&xmlparse(\$string) & You probably should use the tag $<$parse$>$ instead of this function. Runs the internal parser over the argument parsing for display. \textbf{Warning}
This will result in different strings in different targets. Don't use the results of this function as an answer. \\
\hline
@@ -113,12 +127,12 @@ Option 1 - \&map(\$seed,[$\backslash$\$w
\&to\_string(\$x), \&to\_string(\$x,\$y) & If x is an integer, returns a string. If x is real than the output is a string with format given by y. For example, if x = 12.3456, \&to\_string(x,''.3F'') = 12.345 and \&to\_string(x,''.3E'') = 1.234E+01. \\
\hline
-\&class(), \§ion() & Returns null string, class descriptive name, section number, set number and null string. \\
+\&class(), \&sec() & Returns null string, class descriptive name, section number, set number and null string. \\
\hline
-\&name(), \&student\_number() & Return the full name in the following format: lastname, firstname initial. Student\_number returns the student 9-alphanumeric string. If undefined, the functions return null. \\
+\&name(), \&student\_number(), \&firstname(), \&lastname() & Return the full name in the following format: lastname, firstname initial. Student\_number returns the student 9-alphanumeric string. The functions firstname and lastname return just that part of the name. If undefined, the functions return null. \\
\hline
-\&check\_status(\$partid) &Returns a number identifing the current status of a part. Ture values mean that a part is ``done'' (either unanswerable becuase of tries exhuastion, or correct) or a false value if a part can still be attempted. If \$part is unspecfied, it will check either the current $<$part$>$'s status or if outside of a $<$part$>$, check the status of previous $<$part$>$. The full set of return codes are: 'undef' means it is unattempted, 0 means it is attmpted and wrong but still has tries, 1 means it is marked correct, 2 means they have exceed maximum number of tries, 3 means it after the answer date\\
+\&check\_status(\$partid) &Returns a number identifing the current status of a part. True values mean that a part is ``done'' (either unanswerable because of tries exhaustion, or correct) or a false value if a part can still be attempted. If \$part is unspecfied, it will check either the current $<$part$>$'s status or if outside of a $<$part$>$, check the status of previous $<$part$>$. The full set of return codes are: 'undef' means it is unattempted, 0 means it is attmpted and wrong but still has tries, 1 means it is marked correct, 2 means they have exceed maximum number of tries, 3 means it after the answer date\\
\hline
\&open\_date(), \&due\_date(), \&answer\_date() & Problem open date, due date and answer date. The time is also included in 24-hr format. \\
\hline