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

📄 pu.cpp

📁 棋谱的功能 棋谱的功能
💻 CPP
字号:

#include "string.h"
#include <stdlib.h>
#include <stdio.h>
#include <time.h> 
#define T 15

/*
int qipan[15][15] = {
	{1,1,2,1,2,1,1,2,2,1,2,1,1,2,1},
	{2,2,1,2,1,2,2,1,1,2,1,2,2,1,2},  
	{1,1,2,2,2,1,1,2,2,1,2,1,1,2,1},
	{2,2,1,1,1,2,2,1,1,2,1,2,2,1,2}, 
	{1,1,2,1,2,1,1,2,2,1,2,1,1,2,1},
	{2,2,2,1,2,2,2,1,1,2,1,2,2,1,2},  
	{1,1,1,1,2,1,1,2,2,1,2,1,1,2,1},
	{2,2,2,2,1,2,2,1,1,2,1,2,2,1,1}, 
	{1,1,1,1,2,1,1,2,2,1,2,1,1,2,2},
	{2,2,2,1,1,2,2,1,1,2,1,2,2,1,1},  
	{1,1,2,1,1,1,1,2,2,2,2,1,1,2,1},
	{2,2,2,1,1,2,2,1,1,2,1,2,2,1,0},  
	{1,1,2,2,2,1,1,2,2,1,2,1,1,2,1},
	{2,2,1,2,1,2,2,1,1,2,1,2,2,1,1}, 
	{1,1,2,1,2,1,1,2,1,1,2,1,1,2,1},
	};
*/
int qipan[15][15];

int hang(int i,int j)
{
	int a[4]={0,0,0,0};
	int k =0;
	
	for (int m = 1;m < 5;m++) 
	{
		if ((j+5) > T) return 0;
		
		if (qipan[i][j]==1)
		{
			if (qipan[i][j+m]==2)
			{
				return 0;
			}
		}
		else if (qipan[i][j]==2) 
		{
			if (qipan[i][j+m]==1)
			{
				return 0;
			}
		}
		else
		{
			if (qipan[i][j+m]!=0) 
			{
				a[k] = qipan[i][j+m];
				if (k > 0) 
				{
					if (a[k] != a[k-1]) return 0;
				}
				k++;
			}
		}
	}
	return 1;
}

int lie(int i,int j)
{
	int a[4];
	int k =0;
	for (int m = 1;m < 5;m++) 
	{
		if ((i+5) > T) return 0;
		
		if (qipan[i][j]==1)
		{
			if (qipan[i+m][j]==2)
			{
				return 0;
			}
		}
		else if (qipan[i][j]==2) 
		{
			if (qipan[i+m][j]==1)
			{
				return 0;
			}
		}
		else
		{
			if (qipan[i+m][j]!=0) 
			{
				a[k] = qipan[i+m][j];
				if (k > 0) 
				{
					if (a[k] != a[k-1])  return 0;
				}
				k++;
			}
		}
	}
	return 1;
}
int you(int i,int j)
{
	int a[4];
	int k =0;
	for (int m = 1;m < 5;m++) 
	{
		if ((j+5) > T||(i+5) > T) return 0;
		
		if (qipan[i][j]==1)
		{
			if (qipan[i+m][j+m]==2)
			{
				return 0;
			}
		}
		else if (qipan[i][j]==2) 
		{
			if (qipan[i+m][j+m]==1)
			{
				return 0;
			}
		}
		else
		{
			if (qipan[i+m][j+m]!=0) 
			{
				a[k] = qipan[i+m][j+m];
				if (k > 0) 
				{
					if (a[k] != a[k-1]) return 0;
				}
				k++;
			}
		}
	}
	return 1;
}
int zuo(int i,int j)
{
	int a[4];
	int k =0;
	for (int m = 1;m < 5;m++) 
	{
		if ((i+5) > T||(j-5) < 0) return 0;
		
		if (qipan[i][j]==1)
		{
			if (qipan[i+m][j-m]==2)
			{
				return 0;
			}
		}
		else if (qipan[i][j]==2) 
		{
			if (qipan[i+m][j-m]==1)
			{
				return 0;
			}
		}
		else
		{
			if(qipan[i+m][j-m]!=0) 
			{
				a[k] = qipan[i+m][j-m];
				if (k > 0) 
				{
					if (a[k] != a[k-1]) return 0;
				}
				k++;
			}
		}
	}
	return 1;
}


int main(void)
{
	
	int k=0;
	srand( (unsigned)time( NULL ) );
	for (int p = 0;p <T;p++) 
	{
		for (int q = 0;q <T;q++) 
		{
			
			qipan[p][q]=rand()%3;
			printf( " %d", qipan[p][q] ); 
			
		}
		printf( " \n" ); 
	} 
	
	
	for (int i = 0;i <T;i++) 
	{
		for (int j = 0;j <T;j++) 
		{
	
			//printf("lie%d,%d,",i,j);
			//if(hang(i,j))   printf("hang,");
			//if(lie(i,j))   printf("lie,");
			//	if(zuo(i,j))	printf("zuo%d,%d,",i,j);
			//	if(you(i,j))	printf("you%d,%d,",i,j);
			if(lie(i,j)||hang(i,j)||zuo(i,j)||you(i,j))
			{
			
				printf("%d,%d",i,j);
				return 1;
			}
		}
	} 
	printf("siqile");
	return 0;
	
}

⌨️ 快捷键说明

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