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

📄 八皇后.txt

📁 是个程序是一个很经典的程序
💻 TXT
字号:
#include<iostream>
using namespace std;
int line[8],answer=0;
void show()//显示摆放的结果.
{
 int i,j;
 for(i=0;i<8;i++)
 {
  for(j=0;j<8;j++)
  {
   if(line[i]==j)
    cout<<"Q"<<" ";
   else
    cout<<"*"<<" ";
  }
  cout<<endl;
 }
    answer++;
 cout<<endl;
 cout<<answer<<endl;
   getchar();
}
int Judge(int t)//判断摆放的位置是否正确,不正确返回1,正确返回0.
{
 int i,n=0;
 for(i=0;i<t;i++)
 {
  if(line[i]==line[t])//判断是否在同一列
  {n=1;break;}
  if(line[i]+i==line[t]+t)//判断在/方向是否有别的皇后
  {n=1;break;}
  if(line[i]-i==line[t]-t)//判断在\方向上是否有别的皇后
  {n=1;break;}
 }
 return n;
}
void control(int n)//主要控制函数.
{
 int t=8;
 for(line[n]=0;line[n]<t;line[n]++)
 {
  if(Judge(n))
   continue;
  else
   if(n!=7)
    control(n+1);
   else
    show();
 }
}
void main()//主函数
{
 control(0);
 cout<<answer<<endl;
}

⌨️ 快捷键说明

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