用MATLAB实现函数impseq(n0,n1,n2)

用MATLAB实现函数impseq(n0,n1,n2)
用MATLAB实现函数impseq(n0,n1,n2),使函数实现产生一个delta函数,在n0到n2的地方除了n1时值为1其余都为0.该函数的格式为:
Function [x,n]=impseq(n0,n1,n2)
% Generate x(n)=delta(n-n0);n1<=n<=n2
% [x,n]=impseq(n0,n1,n2)
我写的是:
function [x,n]=impseq(n0,n1,n2);
j=0;
i=0;
for(i=n0:n2)
if i==n1
x(j)=1;
j=j+1;
else x(j)=0;
j=j+1;
end
end
有错误,怎么错了?

function [x,n]=impseq(n0,n1,n2);
n=n2-n0+1;
x=zeros(1,n);
for i=n0:n2
if i==n1
x(i)=1;
end
end

这样函数最简单了,你可以试试!你的n应该是产生的数列的长度吧

>> [x,n]=impseq(1,5,10)

x =

0 0 0 0 1 0 0 0 0 0

n =

10
我执行的结果见上
温馨提示:内容为网友见解,仅供参考
第1个回答  2021-08-13
先说你这个问题:1-矩阵x在用索引赋值以前要先有矩阵;
2-矩阵索引必须是正数;
给你一段可以生成任意冲激序列:
function x=impseq(n0,n1,n2)
n = n2-n0+1;
x = zeros(1,n);
j = 1;
for i = n0:1:n2
if(i == n1)

x(1,j) = 1;

else

x(1,j) = 0;

end
j = j+1;

end

end

用MATLAB实现函数impseq(n0,n1,n2)
function [x,n]=impseq(n0,n1,n2);n=n2-n0+1;x=zeros(1,n);for i=n0:n2 if i==n1 x(i)=1;end end 这样函数最简单了,你可以试试!你的n应该是产生的数列的长度吧 >> [x,n]=impseq(1,5,10)x = 0 0 0 0 1 0 0 0 0 0 n = 10 我执行的...

用MATLAB实现函数impseq(n0,n1,n2)
什么意思?

matlab里如何表示冲激信号
function x=impseq(n0,n1,n2)n = n1:0.01:n2;x = [(n-n0)==0]; %其中n0为delta=1处横坐标。end 其中n0是取值为1的点,n1,n2是区间左右端点,你可以通过调节0.01使得函数不为0区域变窄。除此之外,如果你仅仅要使用冲激函数,即按照其广义的定义,我建议还是解析进行比较好。毕竟广义函...

matlab的扩展函数像impseq怎么用?
function[x,n]=impseq(n0,n1,n2)n=[n1:n2];x=[(n-n0)==0];复制以上代码保存为m文件即可。

matlab中如何画出冲激函数
function[x,n]=impseq(n0,n1,n2)if((n0<n1)|(n0>n2)|(n1>n2))error('参数必须满足n1<=n0<=n2)endn=[n1:n2];x=[(n-n0)==0];注意.m文件名要与函数名一致,即使用impseq! 本回答由电脑网络分类达人 郭强推荐 举报| 答案纠错 | 评论 21 1 mingda1987 采纳率:35% 擅长: 电脑\/网络 教育\/...

matlab中的单位冲激信号函数
有,是符号函数而已,是dirac

...列出表达式,用MATLAB编程实现并绘制出序列图
1. 函数impseq.m(单位脉冲序列)function [x,n] = impseq(n0,n1,n2)产生 x(n) = delta(n-n0); n1 <= n,n0 <= n2 [x,n] = impseq(n0,n1,n2)if ((n0 < n1) | (n0 > n2) | (n1 > n2))error('参数必须满足 n1 <= n0 <= n2')end n = [n1:n2];x = [zeros(1,...

离散系统hn yn如何求幅频响应 MATLAB
function[x,n]=impseq(n0,n1,n2)n=[n1:n2];x=[(n-n0)>=0];2.建立单位阶跃序列保存 function[x,n]=stepseq(n0,n1,n2)n=[n1:n2];x=[(n-n0)==0];3.编写新卷积函数conv_m保存。function[y,yn] =conv_m(x,xn,h,hn)yn1 = xn(1) +hn(1);yn2 = xn(length(x)) +hn(...

matlab中 impseq是什么意思
是单位脉冲序列,需要设置和生成这函数的

matlab中impseq,stepseq函数的源码是什么
就算你下载的代码没错,也肯定运行不了。是你自己本身就没有安装DSP之类的工具包,你光下载一个函数的代码,里面要调用很多其他函数,当然运行不了了!你得去找到整个工具包,全下下来,然后才可以用。PS:或者你看别人的MATLAB里面有没有现成的工具包,直接去根目录下面COPY过来一般也能用。

相似回答