Автор работы: Пользователь скрыл имя, 21 Декабря 2011 в 21:01, курсовая работа
История шахмат насчитывает не менее полутора тысяч лет. Считается, что игра-прародитель, чатуранга, появилась в Индии не позже VI века нашей эры. По мере распространения игры на Арабский Восток, затем в Европу и Африку, правила менялись. В том виде, который игра имеет в настоящее время, она сформировалась к XV веку, окончательно правила были стандартизованы в XIX веке, когда стали систематически проводиться международные турниры.
Задача о восьми ферзях — широко известная задача по расстановке фигур на шахматной доске. Исходная формулировка: «Расставить на стандартной 64-клеточной шахматной доске 8 ферзей так, чтобы ни один из них не находился под боем другого».
Введение 3
1 Техническое задание 5
2 Разработка структуры программы 6
2.1 Общие сведения 9
2.2 Минимальные системные и аппаратные требования 11
3 Описание работы программы 12
4 Руководство пользователя 14
Заключение 17
Список используемой литературы 18
{//вызов справки о программе
About d = new About();
d.Show();
}
private void menuItem3_Click(object sender, EventArgs e)
{//вызов правил расстановки
Rules f = new Rules();
f.Show();
}
private void menuItem2_Click(object sender, EventArgs e)
{//вызов закрытия формы
this.Close();
}
}
}
Queens.cs: //файл выполняющий работу по постановке ферзей
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
namespace Queens
{
public class Queens
{
private int NumOfQueens;
public int CountOfQueens //получение количества ферзей
{
get
{
return this.NumOfQueens;
}
set
{
this.
this.
this.
}
}
public static FormQueens QueensForm;
public static Queens Queen;
public Queens(int NumOfQueens)
{//переопределение переменных
this.
this.Desk = new int[this.NumOfQueens];
}
public int[] Desk; //массив хранящий координаты ферзей
Random Rand = new Random();
public bool IsSuitablePos(int Y, int X)
{//метод, проверяющий не бьется ли поставленный ферзь по диагоналям
for (int Iter = 0; Iter <= Y; Iter ++)
{
if (X == this.Desk[Iter])
if (Iter + this.Desk[Iter] == Y + X)
if (Iter - this.Desk[Iter] == Y - X)
}
return true;
}
private bool ExitProce;
public void DisarrayQueen(int Y)
{//запускаем цикл, который будет выполнять сортировку
if ( Y == this.NumOfQueens )
this.ExitProce = true; //если текущий элемент
последний, то сортировка
if (this.ExitProce == true) return; //если сортировка закончена то возвращаемся к PlaceQueue
for (int IterX = 0; IterX < this.NumOfQueens; IterX ++)
if (this.IsSuitablePos(Y, IterX)) //вызываем метод IsSuitablePos
{
}
public void PlaceQueue()
{// массив из количества ферзей
заполняет случайными
this.Desk[0] = Rand.Next(this.NumOfQueens);
this.
this.
}
static void Main()
{//метод, срабатываемый по умолчанию
Queen = new Queens(8);
Queen.
QueensForm = new FormQueens();
Application.
}
public struct Error
{//структура, генерирующая события при возникновении ошибок
public static string String = "";
public static bool IsError;
public Error(string String)
{
Error.
Error.
}
public static void SetError(string String)
{
Error.
Error.
}
public static void ShowError()
{
Messag
}
public static void ShowError(string String)
{
Error.
Error.
} } }}