⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 分区分组配置.c

📁 移动通信信道配置两种方式的C语言实现
💻 C
字号:
/* Note:Your choice is C IDE */
#include "stdio.h"

void fenpei();  /*用于信道分配*/
int panduan();  /*用于判断是否满足无三阶互调干扰*/
void printtt(); /*用于输出配置结果*/

int i,n,j,B[15],A[8][8],k,m,qq,pp=0;

main()
{
	int pan;
    fenpei();
    pan=panduan();
    while(pan==0)
       {
       	fenpei();
       	pan=panduan();
       } 
    printtt();
}

void fenpei()
{
   srand(time(NULL));
   for(i=0;i<12;i++)
   {
     n=rand()%12+1;
     if(i==0)
       B[i]=n;
     for(j=0;j<i;j++)
      {
        if(B[j]==n)
          {i--;
           break;}
      }
     if(j==i)B[i]=n;
   }
   i=0;
   for(k=0;k<3;k++)
     for(m=0;m<4;m++)
        {
        	A[k][m]=B[i];
        	i++;
        	}
}

int panduan()
{
	for(k=0;k<3;k++)
      for(m=0;m<4;m++)
         {
         	if((2*A[k][m]==A[k][m%3]+A[k][(m+1)%3])||
         	   (2*A[k][m]==A[k][m%3]+A[k][(m+2)%3])||
         	   (2*A[k][m]==A[k][(m+1)%3]+A[k][(m+2)%3])||
         	   (A[k][(m+1)%3]+A[k][m]==A[k][m%3]+A[k][(m+2)%3]))
         	   {pp=1;
         	   	break;}
         }
    if(pp==1)qq=1;
    else 
      qq=0;
    return qq;
 }
         	   
void printtt()
{
	printf("distribute channel:\n");
	printf("first section:");
    for(m=0;m<4;m++)
      {printf("%5d",A[0][m]);}
    printf("\n");
    printf("secon section:");
    for(m=0;m<4;m++)
      {printf("%5d",A[1][m]);}
    printf("\n");
    printf("third section:");
    for(m=0;m<4;m++)
      {printf("%5d",A[2][m]);} 
}                	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -