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

📄 bheur.c

📁 unix v7是最后一个广泛发布的研究型UNIX版本
💻 C
字号:
#include "old.h"/* *	mobility *	1 for each potential move */bheur1(){	return(-wheur1());}/* *	opening 'goodies' *	10 for each minor piece out *	-10 for blocking kq pawns */bheur2(){	int i, mt;	i = 0;	if(game > 2) return(i);	mt = amp[-1];	if(mt == 2 || mt == 3) i =+ 30;	if(mt == 0) i =- 20;	i =+ 9*((board[1] != 2)+		(board[6] != 2));	i =+ 8*((board[2] != 3)+		(board[5] != 3));	/*	 * -10 for blocked central pawns	 */	if(board[11]==1 && board[11+8]!=0) i =- 10;	if(board[12]==1 && board[12+8]!=0) i =- 10;	return(i);}/* *	ability to castle *	22 for both flags *	20 for one flag */bheur3(){	int i;	i = 0;	/*	 * queenside ability	 */	if(flag&020 && board[8]==1 && board[9]==1 && board[10]==1)		i =+ 20;	/*	 *  kingside ability	 */	if(flag&010 && board[13]==1 && board[14]==1 && board[15]==1)		i =+ 20;	/*	 * if both	 */	if(i == 40)		i = 22;	/*	 * if castled,	 * keep pawns in	 */	if(bkpos==2)		if(board[10]==1 && (board[8]==1 || board[8+8]==1) &&			(board[9]==1 || board[9+8]==1))				i =+ 40;	if(bkpos==6)		if(board[13]==1 && (board[14]==1 || board[14+8]==1) &&			(board[15]== -1 || board[15+8]== -1))				i =+ 40;	return(i);}/* *	prance *	a percentage if the *	piece on the move *	can be driven back *	by a smaller piece */bheur4(){	int *p1, *p2, ploc, i;	if(amp[-1] != 1) return(0);	ploc = amp[-3];	if(board[ploc] == 1) return(0);	if(xheur(ploc)) return(0);	p1 = lmp;	p2 = p1;	wagen();	i = 0;	while(p2 != lmp) {		p2++;		wmove(*p2++);		i = xheur(ploc);		wremove();		if(i)			break;	}	lmp = p1;	return(-i);}/* *	control *	center control *		opening *		beginning *	king control *		middle *		end */bheur5(){	return(-wheur5());}/* * mate threat * bad to capture */bheur6(){	int i;	*amp++ = -1;	i = 0;	if(battack(wkpos))		if(mate(2, 0))			i =+ 15;	amp--;	return(i);}

⌨️ 快捷键说明

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