У меня возникли некоторые проблемы с получением правильного вывода из моей функции при построении графика.
Я написал простую функцию, которая принимает x
в качестве ввода и просто возвращает x
в качестве вывода. Но если x
больше 75
, я возвращаю 25
в качестве выхода (по сути, ограничивая вывод до 25, если x
превышает 75).
Функция работает, как и предполагалось, когда я передаю ей нормальное число, но когда я даю ей список чисел, она полностью игнорирует мое выражение if и возвращает просто x
независимо от того, что является вводом.
Полный код:
x = 0:0.1:200;
y = f(x);
plot(x,y)
function output = f(x)
if (x >= 75)
output = 25;
else
output = x;
end
end
Мой сюжет выглядит примерно так:
Но я ожидаю, что мой сюжет будет выглядеть примерно так:
![enter image description here](https://i.stack.imgur.com/yt9Iv.png)
Однако, если я просто использую функцию с одним номером, она работает как задумано. Например, если бы я сделал что-то вроде этого:
x = 75;
y = f(x)
function output = f(x)
if (x >= 75)
output = 25;
else
output = x;
end
end
Почему моя функция не работает с входом массива? Как мне это исправить?