varputl¶

Purpose¶

Allows a matrix, array, string, or string array to be assigned to a local symbol given as a string argument.

Format¶

y = varputl(x, n)
Parameters: x (matrix or array or string or string array) – data which is to be assigned to the target variable. n (string) – the name of the local symbol which will be the target variable y (scalar) – 1 if the operation is successful and 0 if the operation fails.

Examples¶

proc myProc(x);
local a, b, c, d, e, vars, putvar;

a = 1;
b = 2;
c = 3;
d = 5;
e = 7;

vars = { a b c d e };

putvar = 0;

// Keep looping until the user enters a letter
// a-e or A-E
do while putvar $/= vars; // Two semi-colons at the end of a print statement, // prevents a 'new line' from being printed print "Assign x ("$vars "): ";;
putvar = upper(cons);
print;
endo;

// Assign the variable whose letter/name was entered by
// the user to be the value passed into 'myProc'
call varputl(x, putvar);
retp(a + b*c - d/e);
endp;

// Format printing of numbers to allow 2 spaces between them
// and 1 digit after the decimal place
format /rds 2,1;

z = myProc(17);
print " z is " z;


Note

This example will ask for user input at the GAUSS command prompt

produces:

Assign x ( A  B  C  D  E ): a

z is 22.3


Remarks¶

x and n may be global or local. The variable, whose name is in n, that x is assigned to is always a local.

Functions vargetl()