资源简介
描述C语言环境下的信道编码,代码详细,利于仿真
代码片段和文件信息
#include
#include
double a[10]; //用于存储符号的概率
int n; //请输入单符号信源元素个数
double b[10]; //用于存储码字的概率
int k[10]; //用于存储Ki的K直
int c[10]; //用于存储二进吗
void input(); //输入数据函数
void paixi(); //对概率排序
void output(); //输出函数
void bgailui(); //用于求码字的概率
void kjisuan(); //用于求Ki的K直
void bbianma(); //用于编码
void panduan(); //用于对输入数据判断,避免符号的总和概率》1
void main()
{
input();
panduan();
paixi();
output();
bgailui();
kjisuan();
bbianma();
}
void input()
{
cout<<“请输入单符号信源元素个数 :\n“;
cin>>n;
cout<<“请输入单符号概率 :\n“;
for(int i=1;i cin>>a[i];
}
void panduan()
{
double sum=0;
for(int i=0;i
sum+=a[i];
cout<<““< if(sum==1.0)
cout<<“将执行下面操作:“< else if(sum!=1.0)
{
cout<<“ 输入错误,请重新输入 :“< input();
}
}
void paixi()
{
int ijk;
double x;
for(i=1;i {
k=i-1;
for(j=i;j if(a[j]>a[k]
评论
共有 条评论