Main Content


Request user input



x = input(prompt) displays the text in prompt and waits for the user to input a value and press the Return key. The user can enter expressions, like pi/4 or rand(3), and can use variables in the workspace.

  • If the user presses the Return key without entering anything, then input returns an empty matrix.

  • If the user enters an invalid expression at the prompt, then MATLAB® displays the relevant error message, and then redisplays the prompt.


txt = input(prompt,"s") returns the entered text, without evaluating the input as an expression.


collapse all

Request a numeric input, and then multiply the input by 10.

prompt = "What is the original value? ";
x = input(prompt)
y = x*10

At the prompt, enter a numeric value or array, such as 42.

x =

y =

The input function also accepts expressions. For example, rerun the code.

prompt = "What is the original value? ";
x = input(prompt)
y = x*10

At the prompt, enter magic(3).

x =
     8     1     6
     3     5     7
     4     9     2

y =
    80    10    60
    30    50    70
    40    90    20

Request a simple text response that requires no evaluation.

prompt = "Do you want more? Y/N [Y]: ";
txt = input(prompt,"s");
if isempty(txt)
    txt = 'Y';

The input function returns the text exactly as typed. If the input is empty, this code assigns a default value, 'Y', to txt.

Input Arguments

collapse all

Text displayed to the user, specified as a string or character vector.

To create a prompt that spans several lines, use \n to indicate each new line. To include a backslash (\) in the prompt, use \\.

Output Arguments

collapse all

Result calculated from input, returned as an array. The type and dimensions of the array depend upon the response to the prompt.

Exact text of the input, returned as a character vector.


The Workspace browser does not refresh while input is waiting for a response from the user. Therefore, if you run input within a script, the Workspace browser does not display changes made to variables in the workspace until the script finishes running.

Version History

Introduced before R2006a