Programming HP Calculators/Commands/Matrix Commands

From Wikibooks, open books for an open world
Jump to navigation Jump to search

ADDCOL/ADDROW[edit | edit source]

DELCOL/DELROW[edit | edit source]

EDITMAT[edit | edit source]

Syntax

EDITMAT <matrix>:

Detail

  • Opens the edit matrix screen, allowing the user to input data into a matrix. <matrix> can be one of the ten matrix variables from M0 to M9.
  • Essentially the same as PROMPT - but used for matrix input.

Example

MSGBOX "This program multiplies two matrices.":
MSGBOX "Please enter the first matrix.":
EDITMAT M1:
MSGBOX "Please enter the second matrix.":
EDITMAT M2:
M1*M2?M3:
MSGBOX "The result of the multiplication is stored in M3."

This program will multiply two matrices, as detailed in the MSGBOX commands.

RANDMAT[edit | edit source]

Syntax

RANDMAT <matrix>;<#rows>;<#columns>:

Detail

  • Generates a matrix in variable <matrix> of size <#rows> x <#columns>, setting each element to a random integer (apparently) from -9 to 9, inclusive.
  • Essentially the same as PROMPT - but used for matrix input.

Example

RANDMAT M1;50;50:

Makes a really big matrix filled with random integers that wastes a fair bit of your calculator's memory, as well as drains the batter power writing all that info to memory. Useful!

REDIM[edit | edit source]

REPLACE[edit | edit source]

SCALE[edit | edit source]

Note: This information was obtained via trial and error and may be incorrect, pending verification. Splintax 12:57, 8 February 2006 (UTC)

Syntax

SCALE <matrix>;<factor>;<row>:

Detail

  • Multiplies all elements in the row <row> of matrix <matrix> by scalar <factor>.

Example

[[1,2],[3,4]] |STO| M1:
SCALE M1;5;1:
EDITMAT M1:

Generates the 2x2 matrix with [1 2] on the top and [3 4] on the bottom row, then multiplies the top row (row 1) by 5 to make it [5 10].

SCALEADD[edit | edit source]

Note: This information was obtained via trial and error and may be incorrect, pending verification. Splintax 13:03, 8 February 2006 (UTC)

Syntax

SCALEADD <matrix>;<factor>;<rowa>;<rowb>:

Detail

  • Adds each element of <rowa>, multiplied by <factor>, to each element of <rowb>.

Example

[[1,2],[3,4]] |STO| M1:
SCALEADD M1;5;1;2:
EDITMAT M1:

Generates the 2x2 matrix with [1 2] on the top and [3 4] on the bottom row, then adds the top row multiplied by 5 (that is, [5 10]) to the bottom row to produce [8 14].

SUB[edit | edit source]

SWAPCOL/SWAPROW[edit | edit source]