开发工具:
文件大小: 15kb
下载次数: 0
上传时间: 2019-06-16
详细说明: 信道容量迭代# include #include #include //#include //#include # define delta 1e-6 #define MAXFLOAT 3.4e+38 int main(void) { register int i,j; register int k; int r,s; float *p_i=NULL; float ** p_ij=NULL; float ** phi_ji=NULL; float c,c_pre,validate; float *sum=NULL; float p_j; printf("请输入信源的符号数:"); fscanf (stdin,"%d",&r); printf("\n"); printf("请输入信宿的符号数:"); fscanf(stdin,"%d",&s); printf("\n"); p_i=(float *)calloc (r,sizeof (float)); p_ij=(float **)calloc(r,sizeof (float)); for (i=0;idelta) { fprintf(stdout,"输入数据不正确.\n"); exit(-1); } } fprintf(stdout,"开始迭代…\n"); for (i=0;i=delta) for(i=0;i=delta) sum[i]+=p_ij[i][j]*(log(phi_ji[i][j])/log(2.0))/ 1.0; } sum[i]=pow(2.0,(double)sum[i]); p_j+=sum[i]; } for(i=0;idelta); free(sum); sum=NULL; printf("迭代次数是%d.\n\n",k); printf("信道容量C是%.6f 比特/符号.\n\n",c); printf("最佳输入分布是:\n"); for(i=0;i=0;i--) { free(phi_ji[i]); phi_ji[i]=NULL; } free(phi_ji); phi_ji=NULL; for(i=r-1;i>-0;i--) { free(p_ij[i]); p_ij[i]=NULL; } free(p_ij); p_ij=NULL; free(p_i); p_i=NULL; return 1; }
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
相关搜索: