Вычисление "рыбы"
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
? поместили алгоритм, обрабатывающий все процессы. Это самая большая процедура.
Procedure GetVariants();
Var
i,id,count:byte;
st:boolean;
begin
count:=1;
repeat
st:=false;
if Getnext(curent)=true then
begin
st:=true;
id:=rand(r);
next:=sp2[id];
//****************
for I := 2 to 28 do
if (domino[i].SideA=next.SideA)and(domino[i].SideB=next.SideB) then
domino[i].State:=true;
//******************
prev:=curent;
next.SideAthen">if prev.SideB<>next.SideA then
if prev.SideB=next.SideB then
begin
next.SideB:=next.SideA;
next.SideA:=prev.SideB;
end;
curent:=next;
sp1[count]:=next;
inc(count);
;">Form1.Label1.caption:=Form1.Label1.Caption+->;
Form1.Label1.caption:=Form1.Label1.Caption+inttostr(curent.SideA)+inttostr(curent.SideB);
end;
until (st=false);
end;
И, наконец, функция GetNext(cur:TDomino):boolean, ищущая подходящие свободные костяшки.
Function GetNext(cur:TDomino):boolean;
Var
i ,j: byte;
begin
r:=0;
j:=1;
result:=false;
For I:=2 to 28 do
If Domino[i].State = false then
if (cur.SideB = Domino[i].SideB)
or (cur.SideB = Domino[i].SideA) then
begin
sp2[j]:=domino[i];
sp2[j].State:=true;
result:=true;
inc(r);
inc(j);
end;
end;
Руководство пользователя. Окно программы
Несмотря на то, что разработка программы очень сложный и трудоемкий процесс, пользоваться ей очень просто. После запуска программы, мы видим это окно:
В нижней части формы мы видим пустое пространство и костяшку 0:0. Пустое пространство предназначено для построения одного из полученных вариантов “Рыбы”.
Сверху присутствует значение костей, которые не входят в полученную последовательность. А так же пространство, для их отображения.
Описание интерфейса
Программа предлагает случайно вычислить одну из последовательностей “Рыбы”
Кнопка Расчитать запускает процесс, который вычисляет “Рыбу” и выводит ее на экране в последовательность чисел.
Кнопка Отобразить графически показывает полученную последовательность, а так же не использованные домино, и через некоторое время (генерация занимает от 1-й до 4-х секунд) мы видим результат работы.
Кнопка Выход завершает программу.
Заключение
Разработав эту программу, я еще глубже изучил среду разработки Delphi 7, познакомился с особенностями создания интерфейсов для рабочей программы. Элементы управления должны быть разработаны таким образом, чтобы не мешать использованию программы, чтобы у человека не возникало вопросов, связанных с тем, что делать и как. Всё это было множество раз учтено, поэтому в итоге мы получили работающее приложение.
Список литературы
1.Иванов Б.Н. Дискретная математика. Алгоритмы и программы: Учеб. Пособие. Владивосток: Изд-во ДВГТ, 2000. 288с.
2.Молчанова Л.А., Прудникова Л.И. Delphi в примерах и задачах: Учеб. пособие. Владивосток: Изд-во ТГЭУ, 2006. 92с.