Напишите функцию normsinc
, которая возвращает sinc (x). Ваша функция должна:
- Рассчитать для каждого элемента ввода и вернуть результат того же размера.
- Возвращает значение 1, когда на входе 0, что является предельным значением sinc как x ->.
Для достижения этой цели вам следует запрограммировать свою функцию так, чтобы:
копия ввода была создана в качестве первого шага в функции, которая сделаетубедитесь, что независимо от входных данных (вектор, матрица) результат имеет одинаковый размер
выполните вычисления в цикле for для всех элементов (например, 1:numel
) ввода
убедитесь, что для доступа к элементу, который соответствует индексу текущего цикла, используйте индексирование как входных, так и выходных переменных
Включите условие ifдля выполнения условия 2 в соответствующей позиции Для проверки кода предоставлены два примера ввода. Использование встроенной функции НЕ допускается;)
function y = normsinc(x)
y = x;
for k = 1:length(x)
if x(k) == 0
y(k) = 1
else
y(k) = (sin(pi .* x(k))) ./ (pi .* (x(k)))
y(x(k)==0) = 1;
end
end
end
Математик говорит, что:
Переменная y имеет неверное значение.
Если вы получили неправильное значение ошибки, убедитесь, что любой элемент входной матрицы, который равен 0, возвращает 1 для соответствующего элемента в вашем выводе.
Я думаю, что это не проблема. Что я делаю не так?