построить график функции sin(x)^sgn(sin(100x)) на отрезке [-10:10] с шагом 0.1

Понимаю, что задачка детская но не могу понять в чём ошибка.

    x=-10:0.1:10;
y=sin(x)^sgn(sin(100*x))
plot(x,y)
title('График функции cos(3x)')
xlabel('Ось X')
ylabel('Ось Y')
legend('y=cos(3x)')
grid on

Ответы (1 шт):

Автор решения: AVK

Вторая строчка должна быть такая:

y=sin(x).^sign(sin(100*x)) 

Во-первых, не sgn, а sign, а во-вторых, не ^, а .^. Крышка без точки это операция возведения матрицы в степень через матричное произведение. Здесь же надо поэлементно возвести массив sin(x) в степени, задаваемые массивом sign(sin(100*x)), поэтому следует использовать операцию поэлементного возведения в степень .^.

→ Ссылка