ify"> По-друге, в текстові вікна (TextBox) вводяться вихідні дані, вони рівні 2, так як після натискання на кнопку Нова гра, у кожного з граючого перебувати по дві, вже забарвлених шашки:
Text1. Text=2. Text=2
На цьому закінчується написання коду для кнопки Нова Игра.
2.3 Написання програмного коду для ігрового поля
Частина програмного коду, що стосується самої ігрового поля, є найголовнішою. ??
У першу чергу ми задаємо 6 змінних, одна з них (змінна Col, яка буде ставитися до кольору) має тип String, це стартовий тип, призначений для опису символів і рядків символів.
Інші 5 змінних (Down , Right, Vert, Gor, A , необхідні для обчислень) мають тип Integer, призначений для зберігання цілих чисел, а також чисел зі знаком.
Dim Col As StringDown, Right, Vert, Gor, A As Integer
Тепер для масиву управління 64 шашок ( Command1 ) пишеться операція, яка вибирає колір наступного ходу, залежно від того який колір ходив минулого разу, як раз тут використовується змінна Col ??.
Потім створюється процедура, яка виконує таку функцію: після натискання на шашку, вона забарвлюється в той колір, який зараз активний (тобто чий зараз хід).
Одночасно з цим задається команда, що така шашка вже не може бути натиснута гравцями ще раз, тобто її властивість Enabled стає False.
If Col=vbBlack Then=vbWhite=vbBlackIf. Item (Index). BackColor=Col. Item (Index). Enabled=False
Наступний крок в написання алгоритму для цих кнопок це - обчислення за формулами координат шашок по вертикальній і горизонтальній осях. Відбувається це за наступними формулами:
Vert=Index 8 + 1
Gor=9 - (7 * Vert - (Index - Vert))
Down=8 - Vert=8 - Gor=0=0
На цьому ж кроці для деяких змінних, які будуть пізніше використані в подальших операціях, задаються вихідні значення. Так змінним Down, Right, які є межами максимально зміни параметра A в багатьох наступних циклах коду, задаються значення 8 - Vert і 8 - Gor відповідно. Також змінним White і Black задаються нульові значення, що необхідно для подальшого коректного підрахунку кількості очок, отриманих гравцями в ході гри.
Далі пишуться логічні вирази, що забезпечують зміну кольору шашок, при виграшному ході гравця, тобто такому, при якому відбувається двостороннє оточення шашок супротивника шашками свого кольору. Відбувається це за рахунок використання циклічного алгоритму For з кроком Step рівним (- 1) для змінної A. Наприклад:
For A=Down To 1 Step - 1
... A
Всередину це циклічного алгоритму вкладається розгалужується алгоритм, реалізований за допомогою неповної команди розгалуження з перевіркою кольору фону необхідної клавіші, обумовленою математичним виразом з параметром A.
Наприклад:
If Command1. Item (Index - 7 * A). BackColor=Col Then
...
У т?? ло цього алгоритму вкладена ще одна неповна команда розгалуження аналогічного виду, що перевіряє властивість Enabled вибираною за допомогою математичного виразу з параметром A кнопки, наприклад:
If Command1. Item (Index - 7 * (A - 1)). Enabled=False Then. Item (Index - 7 * (A - 1)). BackColor=Col
Таким чином в сукупності вони виглядають наступним чином (приблизний варіант):
For A=Vert - 1 To 1 Step - 1Command1. Item (Index - 7 * A). BackColor=Col ThenCommand1. Item (Index - 7 * (A - 1)). Enabled=False Then. Item (Index - 7 * (A - 1)). BackColor=ColIfIfA
Вищенаведений цикл послідовно виробляє наступні логічні операції:
крок: задає чисельне значення змінної A;
крок: перевіряє колір фону, вибраною згідно параметру A, шашки і при його збігу зі значенням змінної Col, переходить до перевірки наступного умови, тобто кроку 3, а в зворотному випадку повертається до кроку 1; (рис.4)
крок: перевіряє, чи була натиснута раніше кнопка, яка формулюється виразом з параметром A, якщо умова виконується, то дана шашка зафарбовується кольором, определяющимся змінної Col, в зворотному випадку повертається на крок 1. (рис.5 )
Рис.4 ...