?? encoder.c
字號:
/* Powered by Peacock */
#include <stdio.h>
#include <math.h>
#define C 10
main()
{
int n;
int k;
int l;
int i,p,q;
int x,y;
int g[C][C][C];
int m[C][C];
int outcode[C];
int buff[C][C];
/*input module*/
printf("Input (n,k,l):\n");
scanf("%d%d%d",&n,&k,&l);
printf("Input info bit group M:\n");
for(i=0;i<=l;i++)
{
printf(" Input m(%d): ",i);
for(p=0;p<=k-1;p++)
{
scanf("%d",&m[i][p]);
}
}
printf("Input the encoder structure:\n");
for(i=0;i<=l;i++) /* l+1 groups , column in graph ----*/
{
for(p=0;p<=k-1;p++) /* k elements in one group , row in graph | */
{
printf(" In m(%d)(%d):\n",i,p);
for(q=0;q<n;q++) /* n */
{
printf(" Relation with [%d] ?(1 for yes,0 for no):",q);
scanf("%d",&g[p][i][q]); /* g[row][column][n]*/
}
}
}
/*matrix caculation*/
for(i=0;i<=l;i++)
{
for(p=0;p<=n-1;p++)
{
for(x=0;x<=k-1;x++)
{
buff[i][p]+=m[l-i][x]*g[x][i][p];
}
}
}
/* manufacture & outcode*/
printf("The output code is:");
for(i=0;i<=n-1;i++)
{
for(p=0;p<=k-1;p++)
{
outcode[i]+=buff[p][i];
}
printf("%d",outcode[i]%2);
}
getch();
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -