?? 序列卷積運算之c語言實現.txt
字號:
序列卷積運算之C語言實現[原創]
設x是有n+1個樣值的有限序列,y是有m+1個樣值的有限序列,則二者的卷積z有n+m+1個樣值,并且有zt=∑xpyt-p,t=0,1,...,n+m;p=0,1,...,n。當p<0或p>n時,有xp=0;當t-p<0或t-p>m時,有yt-p=0。
代碼如下,簡單模擬:
#define N 6
#define M 8
#define K 10
#i nclude <conio.h>
#i nclude <stdlib.h>
void initial(int array[],int n)
{
while(n>=0)
array[n--]=random(K);
}
void juanji(int x[],int y[],int z[])
{
int i,j;
for(i=0;i<=N+M;i++)
{
int t=0;
for(j=0;j<=N;j++)
if(i-j>=0&&i-j<=M)
t+=x[j]*y[i-j];
z[i]=t;
}
}
void output(int array[],int n)
{
int i;
for(i=0;i<=n;i++)
printf("%4d",array[i]);
printf("\n\n");
}
void main()
{
int x[N+1],y[M+1],z[N+M+1];
initial(x,N);
initial(y,M);
juanji(x,y,z);
output(x,N);
output(y,M);
output(z,N+M);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -