Функция для вычисления функции sinc элемент за элементом - PullRequest
0 голосов
/ 31 октября 2019

Напишите функцию normsinc, которая возвращает sinc (x). Ваша функция должна:

  1. Рассчитать для каждого элемента ввода и вернуть результат того же размера.
  2. Возвращает значение 1, когда на входе 0, что является предельным значением sinc как x ->.

Для достижения этой цели вам следует запрограммировать свою функцию так, чтобы:

  1. копия ввода была создана в качестве первого шага в функции, которая сделаетубедитесь, что независимо от входных данных (вектор, матрица) результат имеет одинаковый размер

  2. выполните вычисления в цикле for для всех элементов (например, 1:numel) ввода

  3. убедитесь, что для доступа к элементу, который соответствует индексу текущего цикла, используйте индексирование как входных, так и выходных переменных

  4. Включите условие 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 для соответствующего элемента в вашем выводе.

Я думаю, что это не проблема. Что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...