Контрольная работа: Система искусственного интеллекта
А при выходе закрывается главное окно, а значит завершается и игра:
Close; // Выход из программы
При вызове пункта меню «О программе», запускается окно «О программе»:
Form2.ShowModal; // Вызываем окно "О программе"
Данное окно содержит процедуры событий нажатия всех отображаемых компонентов в виде закрытия окна:
Form2.Close;
Во избежании некорректного отображения расположения компонентов на главном окне, блокируем возможность увеличения окна игры:
procedure TForm1.FormCreate(Sender: TObject);
var
l:DWORD; // Процедура блокировки кнопки "Развернуть"
begin
l:=GetWindowLong(Self.Handle,GWL_STYLE);
l:=l and not(WS_MAXIMIZEBOX);
l:=SetWindowLong(Self.Handle,GWL_STYLE,l);
end;
Также как и в окне о программе, окно выигрыша имеет только события закрытия данного окна.
4 Результат решения
Приведем пример ходов, осуществляемых нами, и проверим реакцию на него программы. Предварительно очистим базу знаний.
1. Ходить начнем по диагонали с правого верхнего угла к левому нижнему.
Результат первой попытки:
Результат второй попытки, после того как нам не дали ходить как раньше, мы ставим крестики по первой строке:
Результат третей попытки, мы сходили по середине и опять выиграли:
Результат четвертой попытки, компьютер не дал нам сходить по предыдущим выигрышам, и мы проиграли:
2. Ходить начнем (не очищаем базу знаний) по диагонали с левого верхнего угла к нижнему правому.
Результат первой попытки, мы приограли: