How do I define a piecewise function using special conditions?

조회 수: 13 (최근 30일)
Humb
Humb 2017년 5월 14일
편집: Andrei Bobrov 2017년 5월 14일
Hello, thank you for helping me. I am using a script to calculate the dft of a function entered simbolically in terms of the variable "n"using the following:
syms n;
f = input('Enter the function\n');
Everything works fine so far, my question is whether I can enter the following piecewise function with special conditions as an argument to the script and how:
f[n]= 3 for n even.
f[n]= -2 for n odd.
Thank you again.
  댓글 수: 1
John D'Errico
John D'Errico 2017년 5월 14일
Why do you need symbolic here?
And how is a function that is defined ONLY on the integers a piecewise function?
Why are you trying to input a function using input? Time for you to learn how to define a function.
Finally, learn how to define an index, or for that matter, the arguments to a function. f[n] is NOT valid syntax in MATLAB.
Clearly your most important project is to read the basic getting started tutorials in MATLAB.

댓글을 달려면 로그인하십시오.

답변 (1개)

Andrei Bobrov
Andrei Bobrov 2017년 5월 14일
편집: Andrei Bobrov 2017년 5월 14일
f = input('Enter the function: ','s') % enter expression: 3-5*rem(n,2)
f = str2func(['@(n)',f])
use f:
>> f(1:10)
ans =
-2 3 -2 3 -2 3 -2 3 -2 3

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by