«X» не определено рядом с строкой 17 столбец 10 [дубликат]

SELECT * FROM Employee, где Employee.Salary in (выберите max (зарплата) из группы Employee Employee_id) ORDER BY Employee.Salary

3
задан Ikaros 6 July 2015 в 07:56
поделиться

2 ответа

Это функция (а не сценарий), и ей нужны некоторые входные аргументы для запуска (в данном случае A и x), поэтому вы не можете нажать кнопку запуска и ожидать ее запуска.

Первый способ:

Вместо этого вы можете использовать окна команд в MATLAB и ввести команду:

A = rand(3,3); % define A here
x = ones(3,1); % define x here
test(A,x) % then run the function with its arguments

помните, что необходимо определить A и x

Второй способ:

Также вы можете нажать маленький треугольник, кроме кнопки зеленого запуска (см. рисунок ниже), и он покажет вам еще один вариант, type command to run. И там вы можете напрямую ввести ту же команду test(A,x). После этого каждый раз вы просто нажимаете enter для этой функции и запускаете эту команду вместо команды test без каких-либо аргументов.

enter image description here [/g2]

7
ответ дан Adriaan 5 September 2018 в 11:33
поделиться

Третий способ:

function y = test(A, x)
%// TESTING CODE:
if nargin==0
    A = default_value_for_A;
    x = default_value_for_x;
end
... %// rest of the function code

Этот способ позволяет вам «нажать кнопку воспроизведения» и запустить вашу функцию без явных входных аргументов. Однако следует иметь в виду, что такой метод следует использовать только:

  • При отладке, чтобы не позволить пользователям вызывать функцию без аргументов, если это не является ее предполагаемым прецедентом.
  • Если ваша функция не должна вести себя по-разному для другого количества входов. См. Также перегрузку функции в MATLAB на основе количества входных аргументов .
5
ответ дан Dev-iL 5 September 2018 в 11:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: